Commit Graph

41 Commits

Author SHA1 Message Date
David Woloszyn 4807a4dd5f MDL-43056 tool_uploadcourse: Add capability to upload courses from file
An entrypoint capability has been added that allows accessing the
upload tool. Further relevant capability checks are then performed
depending on the action being taken during the upload process.

Co-authored-by: Marina Glancy <marina@moodle.com>
2024-01-31 11:29:33 +11:00
Paul Holden aa4ae8f376 MDL-78742 tool_uploadcourse: configure show activity dates value. 2023-07-20 16:28:36 +01:00
Ilya Tregubov 491a784813 MDL-73839 tool_uploadcourse: Proper enrol instance updates.
We should use update_instance() method instead of direct query.
Fixed validation role method to validate roleids and role names.
Fiexed bug in unit test - course creator role shouldn't be assigned for
self enrolment method.
2023-06-30 11:57:48 +08:00
Ilya Tregubov 82e3a9ce40 MDL-73981 tool_uploadcourse: Validate enrolment role from csv. 2022-05-05 07:38:47 +06:00
Eloy Lafuente (stronk7) 4003e31983 MDL-73785 phpunit: Move more tests to use correct names and namespaces
Applied the following changes to various testcase classes:

- Namespaced with component[\level2-API]
- Moved to level2-API subdirectory when required.
- Fixed incorrect use statements with leading backslash.
- Remove file phpdoc block
- Remove MOODLE_INTERNAL if not needed.
- Changed code to point to global scope when needed.
- Fix some relative paths and comments here and there.
- All them passing individually.
- Complete runs passing too.

Special mention to:

- When belonging to other components and being valid api:
  - analytics related tests have been moved to tests/analytics subdir.
  - backup & restore related tests have been moved to tests/backup subdir.
  - events related tests have been moved to tests/event subdir.
  - privacy related tests have been moved to tests/privacy.
  - task related tests have been moved to tests/task subdir.
- Some simple renames, not including the component part anymore (not
  needed now that they are namespaced):
  - some xxxlib_test.php have been renamed lib_test.php
    (when they where testing the corresponding lib.php).
  - cache stores tests have been all renamed store_test, originally
    each one had its own name (file_test, apcu_test, redis_test...)
  - assign feedback tests have been all renamed feedback_test, originally
    each one had its own name (file_test, editpdf_test...)
2022-03-03 12:19:30 +01:00
Paul Holden 23765039d4 MDL-69816 tool_uploadcourse: configure course content download value. 2021-01-08 18:43:49 +00:00
Eloy Lafuente (stronk7) 3a5641cb74 MDL-67673 phpunit: Remove deprecated assertEquals() params
The optional parameters of assertEquals() and assertNotEquals()
are deprecated in PHPUnit 8 (to be removed in PHPUnit 9):

- delta => use assertEqualsWithDelta()
- canonicalize => use assertEqualsCanonicalizing()
- ignoreCase => use assertEqualsIgnoringCase
- maxDepth => removed without replacement.

More info @ https://github.com/sebastianbergmann/phpunit/issues/3341

Initial search done with:

ag 'assert(Not)?Equals\(.*,.*,' --php

Then, running tests and fixing remaining cases.
2020-10-21 12:46:00 +02:00
Eloy Lafuente (stronk7) 40de097e65 MDL-67673 phpunit: Remove deprecated assertContains() uses on strings
Both assertContains() and assertNotContains() are deprecated in PHPUnit 8
for operations on strings. Also the optional case parameter is. All uses
must be changed to one of:

- assertStringContainsString()
- assertStringContainsStringIgnoringCase()
- assertStringNotContainsString()
- assertStringNotContainsStringIgnoringCase()

More info: https://github.com/sebastianbergmann/phpunit/issues/3422

Regexp to find all uses:

ag 'assert(Not)?Contains\('
2020-10-21 12:46:00 +02:00
Eloy Lafuente (stronk7) d95c378771 MDL-67673 phpunit: Remove expectedException annotations
While this is not strictly required, because removal will
happen in PHPUnit 9.0, we are already getting rid of all
uses in core.

From release notes:https://phpunit.de/announcements/phpunit-8.html

The annotations `@expectedException`, `@expectedExceptionCode`,
`@expectedExceptionMessage`, and `@expectedExceptionMessageRegExp`
are now deprecated.
Using these annotations will trigger a deprecation warning
in PHPUnit 8 and in PHPUnit 9 these annotations will be removed.

Also, all uses of expectExceptionMessageRegExp() has been moved
to expectExceptionMessageMatches(). See https://github.com/sebastianbergmann/phpunit/issues/3957

TODO: Various weirdness found while doing the changes with these tests:
- vendor/bin/phpunit lib/tests/exporter_test.php (created MDL-69700)
- vendor/bin/phpunit competency/tests/external_test.php (same issue than prev one)
- vendor/bin/phpunit question/engine/tests/questionengine_test.php (created MDL-69624)
- vendor/bin/phpunit lib/tests/event_test.php (created MDL-69688)
2020-10-21 12:46:00 +02:00
Paul Holden b9a09480b2 MDL-48391 tool_uploadcourse: access checks for configuring enrolments. 2020-07-22 17:52:24 +01:00
Paul Holden e1dfd4b83c MDL-66135 tool_uploadcourse: case-insensitive date string comparison.
Account for PM/pm differences in PHP on different OS.
2020-05-01 09:05:07 +01:00
Paul Holden d62fc08ed9 MDL-66135 tool_uploadcourse: support custom course fields. 2020-05-01 00:10:15 +01:00
Paul Holden 714343c06a MDL-66024 tool_uploadcourse: validate shortname/fullname field length. 2019-12-05 07:47:07 +00:00
Luca Bösch 2e7f4fcefd MDL-67210 tool_uploadcourse: Allow only 0 and 1 for visible value. 2019-11-24 18:29:47 +01:00
Mathew May e00f1c663c MDL-64506 phpunit: Update unit tests to use classic 2019-04-03 19:34:20 +08:00
Marina Glancy a589b992f8 MDL-59259 tool_uploadcourse: apply course format options 2018-06-28 16:37:27 +08:00
Davo Smith 4ee8ec310a MDL-52811 course: moodle/course:setforcedlanguage integration fixes 2018-02-05 13:20:42 +00:00
Davo Smith 4a9624af21 MDL-52811 course: fix unit tests broken by setforcedlanguage 2018-02-01 17:07:23 +00:00
Marina Glancy b1ed151f4d MDL-59262 tool_uploadcourse: allow to set numsections 2017-07-04 10:27:39 +08:00
Mark Nelson a526c706f4 MDL-56251 core: fixed failing unit tests 2017-05-05 12:14:56 +08:00
Marina Glancy 44e86fb3d5 MDL-34859 backup: add restore defaults 2017-03-20 14:59:45 +08:00
David Monllao 9b7f058cee MDL-22078 course: End date tests 2016-10-03 09:51:36 +08:00
Daniel Neis Araujo fbcdb0d710 MDL-22078 course: add end date 2016-10-03 09:51:36 +08:00
David Monllao f258a958a4 MDL-55804 tool_uploadcourse: strftime only to user input
Default value already comes as a timestamp.
2016-09-27 08:11:56 +08:00
Rajesh Taneja 52f3e060e4 MDL-55091 phpunit: Following has been deprecated.
1. getMock()
2. setExpectedException()
3. checkForUnintentionallyCoveredCode renamed to beStrictAboutCoversAnnotation
4. beStrictAboutTestSize renamed to enforceTimeLimit
5. UnitTestCase class is now fully removed.
2016-07-26 10:11:30 +08:00
Eloy Lafuente (stronk7) 07a069f1c0 MDL-50063 unittests: Remove some unnecesary gc_collect_cycles()
Now backup and restore operations free logger resources calling
to the destroy() method. This commit ensures:

1) That gc_collect_cycles() is not used anymore in backup-related tests.
2) That all backup and restore controllers in test do always call
   to the detroy() method.
3) Some unset() calls, needed to make gc_collect_cycles() are not used
   anymore.
2016-05-13 02:50:45 +02:00
Marina Glancy 54f63cd11b MDL-50851 tool_uploadcourse: allow to set tags 2016-01-10 15:25:48 +08:00
Dan Poltawski 853b6cff9b Revert "Merge branch 'MDL-43127-master' of git://github.com/FMCorz/moodle"
This reverts commit 4e75dd78e6, reversing
changes made to f376c2ffd7.
2014-11-27 09:33:52 +00:00
Frederic Massart 61380ed2a2 MDL-43127 tool_uploadcourse: Add support for more enrolment methods 2014-11-25 11:00:56 +08:00
Adrian Greeve c42d18183a MDL-47675 phpunit: Update unit tests to pass on MSSQL
Unit tests were failing on MSSQL. gc_collect_cycles() was
removed from the phpunit utils.php file to save time in running
the tests, but MSSQL doesn't clean up open files as well as
other databases.

This patch includes the garbage collection for the unit tests
that require it.
2014-10-20 14:26:11 +08:00
sam marshall db0f0097e8 MDL-42084 Unit tests: Remove unnecessary 'clear time limit change' lines 2013-11-06 16:40:04 +00:00
Frederic Massart 7bfc9edd9d MDL-41347 tool_uploadcourse: Invalid restore value handled 2013-10-03 11:22:53 +08:00
Frederic Massart d90b2eb949 MDL-41210 tool_uploadcourse: Fixed restore from same backup file 2013-08-15 12:17:54 +08:00
Frederic Massart 42f4ba9b65 MDL-40737 tool_uploadcourse: Prove that category equals to 0 is handled 2013-08-05 15:32:43 +08:00
Frederic Massart 0e8f56103c MDL-40737 tool_uploadcourse: Prevent update of frontpage 2013-08-05 15:23:22 +08:00
Frederic Massart f802b04f03 MDL-13114 tool_uploadcourse: Better Unit Test coverage 2013-07-15 10:02:55 +08:00
Frederic Massart 3f57c87e1d MDL-13114 tool_uploadcourse: Clean up 2013-07-15 10:02:55 +08:00
Frederic Massart e0164eb3c6 MDL-13114 tool_uploadcourse: Use autoload and clean require_once 2013-07-15 10:02:55 +08:00
Frederic Massart f54c49ccf0 MDL-13114 tool_uploadcourse: ID number errors handling 2013-07-15 10:02:55 +08:00
Frederic Massart 1d1898ac01 MDL-13114 tool_uploadcourse: Improving the error reporting 2013-07-15 10:02:54 +08:00
Frederic Massart 509dd69554 MDL-13114 tool_uploadcourse: Unit tests for introduced classes 2013-07-15 10:02:54 +08:00