Commit Graph

64 Commits

Author SHA1 Message Date
David Matamoros 306b070ac1 MDL-72329 competency: Fix contextid comparison 2021-09-24 08:45:09 +02:00
Eloy Lafuente (stronk7) 713722c3fb MDL-71036 phpunit: Coding style changes, 99% whitespace only
I've gone over a few of the mofified files (those
which were showing warnings and errors to CiBoT. Some of them
have been fixed completely, while others only have fixed
for the lines belonging to this issue (lib/tests/moodlelib_test.php)
for example.
2021-03-11 23:04:32 +01:00
Eloy Lafuente (stronk7) 8a14a7bd22 MDL-71036 phpunit: assertContains() now performs strict comparison
The methods assertContains() and assertNotContains() now perform
strict (type and value) comparison, pretty much like assertSame()
does.

A couple of new assertContainsEquals() and assertNotContainsEquals()
methods have been created to provide old (non-strict) behavior, pretty
much like assertEquals() do.

Apart from replacing the calls needing a relaxed comparison to those
new methods, there are also a couple of alternative, about how to
fix this, depending of every case:

- If the test is making any array_values() conversion, then it's better
  to remove that conversion and use assertArrayHasKey(), that is not
  strict.
- Sometimes if may be also possible to, simply, cast the expectation
  to the exact type coming in the array. I've not applied this technique
  to any of the cases in core.

Link: https://github.com/sebastianbergmann/phpunit/issues/3426
2021-03-11 23:04:31 +01:00
Eloy Lafuente (stronk7) ba5b6089d5 MDL-71036 phpunit: Renamed various regexp-related assertions
In PHPUnit 9.1, the following regexp-related assertions
have been deprecated and there are new alternatives for
all them:
    - assertRegExp()     -> assertMatchesRegularExpression()
    - assertNotRegExp()  -> assertDoesNotMatchRegularExpression()

This is about to, simply, move all cases to the new alternatives.

Source: https://github.com/sebastianbergmann/phpunit/blob/9.1.0/ChangeLog-9.1.md

Regexp to find all them:

    ag 'assertRegExp|assertNotRegExp' -li
2021-03-11 19:22:24 +01: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
Eloy Lafuente (stronk7) f6711bb394 MDL-67673 phpunit: Fix the return type of template methods
All the setup/teardown/pre/post/conditions template methods
now are required to return void. This was warned with phpunit 7
and now is enforced.

At the same time, fix a few wrong function names,
provider data and param types, return statements...
2020-10-21 12:45:59 +02:00
Peter 7d6f66b422 MDL-60126 competency: Unit tests 2020-02-04 08:36:21 +08:00
Eloy Lafuente (stronk7) 4621917c62 MDL-67114 core: php74 fix. Fix use of scalar as array in core
There are various places where it's not guaranteed that the
variable being used is array, and instead, can be null, bool, int...

We need to check that because php74 warns about it.

Where possible we have used the coalesce operator as
replacement for isset() ternary operations.
2020-01-03 11:33:15 +01:00
Juan Leyva dcadc8c54c MDL-65968 notifications: Use f1 size avatars for Push notifications 2019-09-17 16:29:02 +02:00
Damyon Wiese bde97497ef MDL-65078 competencies: webservices
The webservice list_course_module_competencies calls a function that does not exist and
is not exposed as a webservice.
2019-07-24 09:14:28 +08:00
Marina Glancy 5ecbc5d9f7 MDL-65782 roles: allow several roles with user/frontpage archetype 2019-06-04 11:49:23 +02:00
Adrian Greeve e3e44b2d2f Merge branch 'MDL-65178-master' of git://github.com/damyon/moodle 2019-05-01 11:56:35 +08:00
Juan Leyva 2356454f21 MDL-60680 notifications: Include action buttons information 2019-04-25 14:55:57 +02:00
Juan Leyva 36fa0ec900 MDL-60680 notifications: Return custom data in notifications 2019-04-25 14:55:18 +02:00
Damyon Wiese bdba44193d MDL-65178 competencies: count_competencies fix
Fix sql error in course_module_competency::count_competencies() function.
2019-03-26 09:47:09 +08:00
Andrew Nicols c40f6adbe0 MDL-64971 access: Ensure that the capability exists when fetching 2019-03-06 10:16:06 +08:00
Damyon Wiese c0417b04ff MDL-53346 competencies: Show user learning plans
On the course competencies page, show the user their learning plans
that contain each of the course competencies.
2019-02-06 08:33:55 +08:00
Amaia Anabitarte 45cc006c91 MDL-60518 core_competency: Set $USER global variable for tests 2018-12-14 10:28:34 +01:00
Damyon Wiese afd5c94dbf MDL-64283 competency: Correct numbering in tests 2018-11-30 09:30:50 +08:00
Michael Hawkins cabea2fc04 MDL-63764 core_competency: Add support for removal of context users
This issue is a part of the MDL-62560 Epic.
2018-10-29 12:59:55 +08:00
Adrian Greeve 3714fe7e6e MDL-57244 general: Remove old class renames. 2018-07-23 15:54:13 +08:00
Frédéric Massart 739b59610a MDL-61877 core_competency: Handle comments in privacy API 2018-04-27 11:29:30 +08:00
Frédéric Massart f8a6a533c2 MDL-61877 core_competency: Implement privacy API 2018-04-27 11:29:29 +08:00
Eloy Lafuente (stronk7) a4e7e6f345 Merge branch 'MDL-60567-master' of git://github.com/damyon/moodle 2017-12-19 11:30:08 +01:00
Frederic Massart f250cdbb34 MDL-58058 competency: Allow unspecified sortorder for new competencies 2017-12-08 15:58:52 +08:00
Damyon Wiese 1518ce952f MDL-60567 competencies: test list_competencies 2017-10-27 11:50:11 +08:00
Jake Dallimore 54ec93885c MDL-60243 competencies: fix ordering bug in api_test unit test
list_user_competencies_to_review() orders by shortname, but the test
creates 2 user competencies with the same short name, resulting in
unpredictable results. This patch fixes that.
2017-09-27 09:19:32 +08:00
Simey Lameze 2fc95ecf80 MDL-59994 competency: improve user competency unit test 2017-09-18 08:32:12 +08:00
Damyon Wiese 9c91a9593d MDL-57273 core: Remove magic setters and getters
Remove the magic getters and setters from persistent. They are deprecated only in the persistent
class for competencies.
2017-01-20 12:56:19 +08:00
Frederic Massart 4bc68a416e MDL-57273 core: Exporters support custom formatting parameters 2017-01-20 12:56:19 +08:00
Frederic Massart 268beda8e9 MDL-57273 core_competency: Fatal error in external update_plan 2017-01-20 12:56:18 +08:00
Frederic Massart 476bf96f4d MDL-57273 core: Added a performance helper to use with exporters 2017-01-20 12:56:18 +08:00
Frederic Massart 6e28143599 MDL-57273 core: Migrating core_competency exporters into core 2017-01-20 12:56:18 +08:00
Frederic Massart 2198e0e94a MDL-57273 core: Migrating persistent from core_competency into core 2017-01-20 12:56:18 +08:00
Frederic Massart 0eda810d17 MDL-56459 competency: Invalid use of indirect property key
This change ensures that PHP7 and earlier work the same way. Before
the patch PHP < 7 would not expand the property as we expected it.

More information here:
http://php.net/manual/en/migration70.incompatible.php#migration70.incompatible.variable-handling.indirect
2016-11-16 13:53:31 +08:00
Issam Taboubi fd8043b2de MDL-56285 competency: fix move competencies capabilities
In learning plan templates, cannot move competencies
around even if capability templatemanage is given
to the role because of bad context check
2016-10-06 10:33:32 -04: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
Rajesh Taneja 56c5c9a08a MDL-55043 core_competency: Sort by id to ensure we get expected result. 2016-07-10 11:25:06 +08:00
Damyon Wiese da880d320c MDL-54997 competencies: Listing evidence contexts
When listing the evidence for a user competency in a course,
the query is missing evidences for sub-contexts in the course.
2016-06-23 09:14:19 -07:00
Andrew Nicols 60e75de317 Merge branch 'MDL-54542-master' of git://github.com/FMCorz/moodle 2016-05-18 09:48:27 +08:00
Frederic Massart 4e968dc8a7 MDL-54542 competency: Tests for listing of plans and comps to review 2016-05-12 16:16:03 +08:00
Frederic Massart bbf727f175 MDL-54542 competency: Prevent long query aliases in get_sql_fields()
Otherwise we could hit ORA-00972 because they exceed 30 characters.
2016-05-12 16:14:32 +08:00
Frederic Massart 9f659e1af5 MDL-54075 competency: False negatives due to random ordering and latency 2016-05-10 18:41:48 +02:00
Adam Olley 415023cefc MDL-54120 competency: Don't assume there are no existing scales
Every time a unit test for competencies adds a scale, it's creating them
with hardcoded id's - which should always be avoided. So this change has
the unit test keep track of the scale id's created without hardcoding
them.
2016-05-10 14:48:18 +09:30
Mark Nelson 02113beb10 MDL-53920 cohort: notify competencies on cohort deletion 2016-05-02 12:49:11 +08:00
Frederic Massart 42c28b0874 MDL-53937 core_competency: False negative with duedate on plan reopen 2016-04-29 12:19:43 +01:00
Frederic Massart 8ea0f17ae9 MDL-53879 competency: Remove limit on framework depth 2016-04-28 16:41:24 +08:00
David Monllao e7c979dff8 Merge branch 'MDL-53632-master' of git://github.com/FMCorz/moodle 2016-04-26 11:29:51 +08:00
Frederic Massart 69c478660a MDL-53451 competency: Properly wrap those nasty function declarations
Pheww, we avoided a disaster.
2016-04-19 10:55:46 +08:00