Commit graph

99509 commits

Author SHA1 Message Date
Andrew Nicols
cbd016e620 MDL-66979 behat: Whitespace fix 2021-01-22 14:52:21 +08:00
Andrew Nicols
8a76c2a9a1 MDL-66979 behat: Remove manually triggered events
Behat should not trigger Synthetic browser events. It is incorrect to do
so as the UI should be used to trigger events correctly.

The W3C WebDriver specification explicitly states when and where these
events will be triggered from (the browser) and therefore there is no
ambiguity and no need to synthetically trigger them from Behat.
2021-01-22 14:52:21 +08:00
Andrew Nicols
9ccd5030d8 MDL-66979 group: Replace direct element interaction with steps
The W3C WebDriver leads to faster operation of individual steps which
highlights where WebDriver is moving to a new step faster than the
browser can process it.

The solution here is to use the `execute` function to interact with the
browsers as this makes use of the various wait and check steps.
2021-01-22 14:52:21 +08:00
Andrew Nicols
3489bb1f30 MDL-66979 behat: Remove unnecessary steps which fail
These steps were completely pointless and were failing with the W3C
Webdriver becuase focus was never on the Update Profile button in the
first place.

At a minimum we should remove the Focus change step as it not valid, but
the following step is also pointless.
2021-01-22 14:52:21 +08:00
Andrew Nicols
e4a649d0f9 MDL-66979 scorm: Increase behat window size
On Firefox there can be some issues with ensuring that all nodes are
visible in order to click them.

This is likely an upstream geckodriver bug and not one that can be
easily addressed across all of Moodle.

In this instance the "Next" button is just outside the Visible Window,
but it is in an iFrame which is fully visible. In this situation
Firefox is unable to click the button but does not error.
2021-01-22 14:52:21 +08:00
Andrew Nicols
59a09e2e3f MDL-66979 behat: Scroll nodes into view before hover
The W3C Specification does not require that a NodeElement be in the
current viewport before triggering a mouseOver. As a result the
mouseOver will generate an Exception because the element is not in the
viewport, and the X/Y co-ordinates are invalid.

To handle this the node is scrolled into view.
2021-01-22 14:52:21 +08:00
Andrew Nicols
ec20642963 MDL-66979 behat: Fix window switching
Normalise switching of window contexts by setting the main window name
to a null.

Where the window has no name (null/empty), then the root context is
selected.
2021-01-22 14:52:21 +08:00
Andrew Nicols
34ba550138 MDL-66979 behat: Use tab to blur current focus
The focus should be on something, rather than removed.

The way in which focus removal works can lead to side effects.
2021-01-22 14:52:21 +08:00
Andrew Nicols
a248c359cc MDL-66979 behat: Update passwordunmask form field control
Update the passwordunmask form field type for behat to interact with the
form element as a human would rather than via synthetic event triggers.
2021-01-22 14:52:21 +08:00
Andrew Nicols
18d5ddf01d MDL-66979 behat: iFrames must have a name for switchTo
The W3C WebDriver protocol supports switching of contexts using a named
context, and not the class asscoiated with that context.
2021-01-22 14:52:21 +08:00
Andrew Nicols
deaab14bf9 MDL-66979 mod_data: Improve behat chart data step
Charts data visibility is more reliable when checked via the
aria-expanded attribute.

The isVisible attribute can cause some failures under Firefox.
2021-01-22 14:52:21 +08:00
Andrew Nicols
4e00a821cf MDL-66979 behat: Handle JS on elements better
This change introduces a new function to execute Javascript directly on
a node.

This should not, ordinarily, be used directly by steps, but may be
required in other parts of the Behat interaction.
2021-01-22 14:52:21 +08:00
Andrew Nicols
496ef9b0a8 MDL-66979 behat: Rename selenium config to webdriver
The PHP WebDriver Mink Driver does not necessarily require Selenium. It
supports Selenium 3 upwards, and can be used directly with ChromeDriver,
EdgeDriver, SafariDriver, GeckoDriver, and others.

It therefore uses a slightly different configuraitno path.
2021-01-22 14:52:21 +08:00
Andrew Nicols
e5b1fc8083 MDL-66979 behat: Core updates for W3C WebDriver
This commit updates core Behat features to make use of the
php-webdriver/webdriver library instead of the legacy Instaclick
library.

Most of these changes relate to use of features of WebDriver which we
are required to use directly rather than through the Mink Driver.
2021-01-22 14:52:21 +08:00
Andrew Nicols
c2c71b28eb MDL-66979 behat: Switch to new W3C Behat driver
This commit updates the composer dependencies to make use of the updated
version of moodlehq/moodle-behat-extension which depends upon the
php-webdriver/webdriver and relevant Mink WebDriver.
2021-01-22 14:52:21 +08:00
Jake Dallimore
db6d34630f weekly release 3.9.4+ 2021-01-22 11:30:51 +08:00
Jake Dallimore
88a9d4cff1 Merge branch 'install_39_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_39_STABLE 2021-01-22 11:30:49 +08:00
Tim Hunt
96c8ad66f9 MDL-46256 count_words: fix handling of paragraphs 2021-01-21 09:55:19 +00:00
Tim Hunt
fbb0428179 MDL-46256 count_letters: an unit tests and fix HTML editity handling 2021-01-21 09:55:19 +00:00
Tim Hunt
82592f0c84 MDL-46256 word count: Convert existing tests to a data provider 2021-01-21 09:55:18 +00:00
Adrian Greeve
aa3118999a Merge branch 'MDL-57020-39-allow_delete_unused_scale' of https://github.com/sharidas/moodle into MOODLE_39_STABLE 2021-01-21 12:03:26 +08:00
Nadav Kavalerchik
80de5d08ee MDL-66932 theme/boost: Use LTR directionality to display user % grades 2021-01-20 09:33:23 +02:00
AMOS bot
1d457c78f5 Automatically generated installer lang files 2021-01-17 00:07:49 +00:00
Eloy Lafuente (stronk7)
de301d4237 Moodle release 3.9.4 2021-01-16 16:58:25 +01:00
Sujith Haridasan
e2c94750fb MDL-57020 scales: Allow deletion of unused scales in forum
Allow deletion of unused scales used in a
forum for the course.

Signed-off-by: Sujith Haridasan <sujith@moodle.com>
2021-01-15 15:05:51 +05:30
Sara Arjona
e2c8f4ad1b weekly release 3.9.3+ 2021-01-15 08:25:45 +01:00
Sara Arjona
8c1455d220 Merge branch 'install_39_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_39_STABLE 2021-01-15 08:25:44 +01:00
Sara Arjona
7b85e141da Merge branch 'MDL-69308_39' of https://github.com/stronk7/moodle into MOODLE_39_STABLE 2021-01-14 12:04:13 +01:00
Jake Dallimore
cd744ba504 Merge branch 'MDL-69877-39' of git://github.com/mickhawkins/moodle into MOODLE_39_STABLE 2021-01-14 14:52:36 +08:00
Michael Hawkins
974c63505b MDL-69877 core: Added security.txt 2021-01-14 14:31:01 +08:00
AMOS bot
724210c4f7 Automatically generated installer lang files 2021-01-14 00:07:44 +00:00
Eloy Lafuente (stronk7)
ae9d510288 MDL-69308 environment: Apply agreed changes
- PHP 7.3 required.
- Moodle 3.6 required.
- SQL*Server 2017 (aka, 14.0) required.
- Sodium PHP extension required.
2021-01-13 19:30:15 +01:00
Eloy Lafuente (stronk7)
981f750b81 MDL-69308 environment: 3.11 base information
This is a direct copy of the 3.10 branch to have
the changes under control in next commits.
2021-01-13 19:30:10 +01:00
Shamim Rezaie
e49f9e46aa MDL-70625 core_calendar: Fix whitespace appearance in the id attribute 2021-01-14 01:59:18 +11:00
Mihail Geshoski
721d57228f MDL-68486 auth_shibboleth: Reset convert_data if it uses dataroot file
Upgrade step that resets the 'Data modification API' (convert_data)
setting to its default value if this setting is currently configured
to use a file located within the $CFG->dataroot directory.
2021-01-13 12:35:42 +08:00
Mihail Geshoski
3c25c373d9 MDL-68486 auth_shibboleth: Prevent using dataroot files in convert_data
Prevents configuring the 'Data modification API' (convert_data) setting
to use files located within the $CFG->dataroot directory as it exposes
the site to security risks.
2021-01-13 12:35:42 +08:00
AMOS bot
17eb41c270 Automatically generated installer lang files 2021-01-13 00:07:45 +00:00
Michael Hawkins
af6e65f221 MDL-69911 core: Clean content passed through TeX filter 2021-01-12 10:27:31 +01:00
Ferran Recio
8bbc064e29 MDL-67782 message: fix messages max length 2021-01-12 10:27:31 +01:00
Juan Segarra Montesinos
78b18c00bf MDL-69797 core_grades: Implement authorization into fetch method 2021-01-12 10:27:31 +01:00
Juan Segarra Montesinos
4b3b4b7d78 MDL-69797 core_grades: Implement authorization into fetch method 2021-01-12 10:27:31 +01:00
Juan Segarra Montesinos
557d1c8820 MDL-69797 gradingform_rubric: Implement authorization into fetch method 2021-01-12 10:27:31 +01:00
Juan Segarra Montesinos
698e1f7823 MDL-69797 gradingform_guide: Implement authorization into fetch method 2021-01-12 10:27:31 +01:00
Sara Arjona
5b4702a6b6 Merge branch 'MDL-70009-39' of git://github.com/ilyatregubov/moodle into MOODLE_39_STABLE 2021-01-12 10:21:20 +01:00
Jake Dallimore
77c0b16613 Merge branch 'MDL-69431_Validate_section_arg_modedit' of git://github.com/watson8/moodle into MOODLE_39_STABLE 2021-01-12 17:09:29 +08:00
Ilya Tregubov
9adef8af21 MDL-70009 h5pactivity: Split get_pluginfile_hash in two methods. 2021-01-12 09:11:04 +02:00
AMOS bot
cc45df637f Automatically generated installer lang files 2021-01-12 00:07:54 +00:00
Tim Hunt
9055c9e213 MDL-70574 qtype_multianswer: fractional scores should be possible 2021-01-11 17:38:10 +00:00
Sara Arjona
13655cd5ea Merge branch 'MDL-70034_39' of git://github.com/mdjnelson/moodle into MOODLE_39_STABLE 2021-01-11 15:19:39 +01:00
Sara Arjona
ea3f1d19b9 Merge branch 'MDL-70567-MOODLE_39_STABLE' of https://github.com/dmitriim/moodle into MOODLE_39_STABLE 2021-01-11 13:09:56 +01:00