Commit Graph

38 Commits

Author SHA1 Message Date
Marina Glancy 263c39ba21 MDL-71389 various: changes to unittests due to php8 changes:
- some engine error messages changed
- some warning levels changed
- the carriage return symbol randomly appears
- one phpunit assertion fails and not really representative of anything
2021-04-21 12:38:46 +02: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) 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
Bas Brands 4394f9e358 MDL-67735 theme_boost: remove bs2 and bs4alpha compatibility css 2020-08-17 08:16:42 +00:00
Matt Porritt 4be93382eb MDL-63795 Administration: CLI upgrade apply all settings
This patch fixes a regression caused by MDL-62777.  MDL-62777 added output to inform
administrators of new default settings.  However, the recursion in the code did not
handle new settings made available as the result of the defaults of other settings
being set.
This patch fixes the issue, now all defaults are correctly set, even those exposed
after other defaults are set.
2019-12-19 12:17:11 +11:00
David Mudrák 1ecf0397bb MDL-65888 forum: Do not send notifications to unconfirmed users
Under certain conditions, users marked as not confirmed yet may be
returned as forum notification recipients. Such users are considered as
inactive though and the delivery adhoc task cannot be run as these
users, throwing an exception.

The solution is to make sure that fetch_subscribed_users() does not
include unconfirmed users, similarly to what was done for suspended
users and nologin users.

The added unit test also checks for deleted users. But these should
never be returned as subscribed because we consider enrolled users only
and deleted users are filtered out implicitly.
2019-06-11 09:53:23 +02:00
David Mudrák e31f62a788 MDL-65655 forum: Do not send notifications to inactive users
We cannot deliver notifications to users who had subscribed to a forum
or discussion and were later inactivated either by suspending or setting
the auth method to nologin. The deliver adhoc task cannot be run as
these users, throwing the "Suspended account" exception.

The solution is to make sure that fetch_subscribed_users() does not
include those inactive users.
2019-05-20 18:46:35 +02: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
Andrew Nicols bc4c7337e1 MDL-22077 forum: Add forum private replies
This patch adds new capabilities:
'mod/forum:postprivatereply'   - whether a user is able to post private replies; and
'mod/forum:readprivatereplies' - whether a user is able to read private replies.

Private replies are only visible to the intended recipient (the author of
the parent post), the author of the private reply, and those with the
ability to read private replies.

If a post is private then it cannot be replied to further.
2019-04-04 11:25:29 +08:00
Mark Nelson 2a0b517257 MDL-65173 message_email: removed bogus logic
This reverts commit 0f38e62970.
2019-03-25 17:12:53 +08:00
Andrew Nicols cd029f936d MDL-46881 forum: Only skip post, not discussion 2019-01-30 10:55:48 +08:00
Andrew Nicols af48d8bdd6 MDL-46881 forum: Defer post visibility check to send time 2019-01-30 07:48:38 +08:00
Andrew Nicols 4459ad290d MDL-46881 mod_forum: Move cron around 2019-01-30 07:48:38 +08:00
Amaia Anabitarte 0f38e62970 MDL-64400 core_messages: Mark notifications sent via email as read 2018-12-27 09:15:53 +01:00
Amaia Anabitarte 57afd82ab0 MDL-64400 core_messages: Allow cron to delete unread notifications too 2018-12-27 09:15:53 +01:00
Andrew Nicols 7fa3089753 MDL-36754 mod_forum: Use token for emailed pictures 2018-08-14 07:08:29 +08:00
Andrew Nicols caef6489ae MDL-61309 mod_forum: Implement the Privacy API 2018-05-09 14:04:12 +08:00
Jun Pataleta c39a22f600 MDL-60659 mod_forum: Use PHP EOL for line breaks in expected values 2017-11-02 19:11:00 +13:00
Eloy Lafuente (stronk7) 55946a892a MDL-54901 phpunit: Change phpunit wwwroot to HTTPS and fix tests
This includes:

- Changing PHPUnit's bootstrap to use https://www...
- Modify all existing expectations to the new wwwroot.
- Amend some tests now with different defaults because of is_https()
- Added a note to main upgrade.php about the change.
2017-04-18 03:40:17 +02:00
Eric Merrill 0e8b51607b MDL-47162 core_message: Cleanup of messaging course ids code 2016-10-27 18:12:42 +02:00
Amanda Doughty cc350fd9c8 MDL-47162 core_message: Add course id to message eventdata 2016-10-27 18:11:27 +02:00
Matteo Scaramuccia 2e385e9c57 MDL-53622 mod_forum: Added the file_rewrite_pluginfile_urls() call. 2016-04-01 22:41:25 +02:00
Brendan Heywood 318e5cb302 MDL-53562 forum: Fixed missing forum subject Re: prefix 2016-03-21 19:41:40 +11:00
Andrew Nicols ca0227dd18 MDL-52136 mod_forum: Correctly quote get_string vars in mustache 2016-03-02 09:00:28 +08:00
Eloy Lafuente (stronk7) 9dbbdcb40a MDL-52126 forum: Verify forum mailout contents
New unit test able to verify mail contents
configured by provider do match all expectations defined.
2015-11-15 13:29:31 +01:00
Sam Hemelryk 0893f8d399 Merge branch 'wip-MDL-48377-master' of git://github.com/marinaglancy/moodle 2014-12-01 14:02:08 +13:00
Marina Glancy 28c0c4af5d MDL-48377 forum: do not swallow spaces in notification emails 2014-11-26 12:18:11 +08:00
Andrew Nicols fc05c1b8e5 MDL-48197 testing: Normalise uses of noemailever and phpmailer sink 2014-11-19 09:09:50 +08:00
Andrew Nicols e7f0b4d3dd MDL-48150 mod_forum: Generate message inbound keys for all posts
This code was previously misplaced so that only posts in discussion which
had not yet been processed in the current cron run would have keys
generated. If two posts were generated in the same discussion and sent out
on the same cron cycle, only the first post to be processed would have a
key generated.
2014-11-17 15:47:47 +08:00
Andrew Nicols 7122e1543a MDL-48054 mod_forum: Fix unit test failures
These sporadic unit test failures were happening because the post time and
subscription time sometimes differ depending on the amount of time it takes
to complete the different components of the test.

To reliably address these issues, the post creation, and the discussion
subscription times are manually updated by different factors to ensure a
more realistic state of affairs.
2014-11-05 14:49:02 +08:00
Andrew Nicols a54702b234 MDL-47903 mod_forum: Correct test fails related to caching and time
This adds a reset of the discussion and forum cache when running the mail
and maildigest tests.

These test fails were highlighted by the addition of new tests which
add similar post ids.
2014-10-30 12:02:35 +08:00
Andrew Nicols eb451c7981 MDL-47903 mod_forum: Add discussion subscription time
This helps us to only send notifications for messages the user should have
already seen.
2014-10-30 12:02:34 +08:00
Andrew Nicols 555837c5d4 MDL-47808 mod_forum: Correct maxeditingtime for unit tests
The maxeditingtime needs to be a negative value for unit tests to ensure
that the messages are actually sent out.

Whilst fixing this I also discovered that the create_discussion part of the
generator also creates the first post.
2014-10-23 08:43:29 +08:00
Andrew Nicols 49566c8a67 MDL-1626 mod_forum: Make cron handle discussion subscriptions 2014-06-24 12:16:34 +08:00
Andrew Nicols 59075a4349 MDL-1626 mod_forum: Move subscription management to a separate class 2014-06-24 12:16:33 +08:00
Andrew Nicols a7a849038a MDL-1626 mod_forum: Add unit tests for forum cron mail behaviour 2014-06-24 12:16:33 +08:00