Commit Graph

72 Commits

Author SHA1 Message Date
Andrew Nicols 548da2ce97 MDL-67668 behat: Share behat_behat functionality with forms
Behat form fields are implemented in a way completely isolated from the
rest of the Behat Context system. Whereas regular step definitions have
access to execute steps, to call `find`, check for JS running, and other
related functionality, the Moodle implementation of a field type does
not have any access to this.

By moving the core functionality of behat_base to a new trait, and the
constants to a new interface, the functionality can also be used in
behat form fields in the same way as elsewhere.
2020-11-23 09:01:19 +08:00
Andrew Nicols 59daa3b548 MDL-67668 behat: Correct js pending check
Pending checks should only run when JS is running, but some uses were
not apply this check.
2020-11-23 09:01:19 +08:00
Andrew Nicols 1144969755 MDL-67668 behat: Support NodeElement when fetching node in container
This is similar to change made in MDL-69136 to allow an already-fetched
NodeElement to be provided to the get_node_in_container() function and
makes it easier to be deterministic when writing steps.
2020-11-23 09:01:19 +08:00
Andrew Nicols 9c35ea1040 MDL-70148 behat: Add steps to send keys without an element 2020-11-17 15:14:43 +08:00
Eloy Lafuente (stronk7) 74ee34fd87 MDL-69521 core: Move all comments in code from 4.1 to 3.11 2020-09-08 18:59:30 +02:00
Noel De Martin 7440ed4ebc MDL-69360 behat: Fix js ready checks for non-moodle sites 2020-09-02 10:19:51 +02:00
Andrew Nicols 083604ea09 MDL-67657 behat: Open course with editing using URL
This is a huge performance improvement for behat.

The current set of steps loads the page
It then looks for the Classic/Clean version of the settings menu
If it fails to find it looks for the Boost Cog
Then it clicks the "Turn editing on" button

This can take a substantial period.

We do not actually need to run these steps as we are able to jump
straight to the URL. We already have access to the sesskey value
required to do this.

There is not loss in testing functionality because the actual testing of
the Turn editing functionality is tested in other places sufficiently.
2020-07-16 11:06:43 +08:00
Andrew Nicols cd6eadd407 MDL-67657 behat: Convert existing uses of executeScript 2020-07-16 11:06:31 +08:00
Andrew Nicols 6d5d1935ea MDL-67657 behat: Add wrapper for JS execution 2020-07-16 11:05:32 +08:00
Andrew Nicols 3450387277 MDL-69136 behat: Support find on a NodeElement 2020-06-29 11:36:30 +08:00
Andrew Nicols c7807a10b4 MDL-67656 behat: Fix usleep call in spin 2020-01-10 13:34:12 +08:00
John Beedell 82ee6f0d3c MDL-67339 behat: Enhance Behat exception message 2019-12-02 09:46:08 +00:00
Eloy Lafuente (stronk7) 82d71a5c83 Merge branch 'MDL-66335' of https://github.com/timhunt/moodle 2019-10-14 18:53:44 +02:00
Tim Hunt 4024556b98 MDL-66335 behat: generic step for navigating direct to specific pages 2019-10-14 11:19:13 +01:00
Tim Hunt 33da028c27 MDL-66559 behat: Documentation for component selectors 2019-10-11 12:58:16 +08:00
Andrew Nicols 61832faefd MDL-66559 behat: Allow per-component selectors and replacements 2019-10-11 12:58:16 +08:00
Andrew Nicols d10ed4d240 MDL-66550 behat: Standardise finding in core functionality 2019-09-10 21:29:03 +08:00
Andrew Nicols b983ae4ab8 MDL-66550 behat: Add ability to transform a specific selector 2019-09-10 21:29:00 +08:00
Andrew Nicols 700682dc40 MDL-66550 behat: Normalise selectors better 2019-09-10 21:28:47 +08:00
Andrew Nicols 605550a2d8 MDL-66457 behat: simplify selector search 2019-08-30 15:13:07 +08:00
Andrew Nicols 3d18e5cfd6 MDL-66378 behat: Update screen sizes to Y2K standards 2019-08-16 11:42:45 +08:00
sam marshall 05a5d547b3 MDL-64979 Behat: Add option to increase timeouts 2019-03-19 17:17:55 +00:00
sam marshall d178865b38 MDL-63977 Behat: Organise app functions in window.behat object 2019-02-12 13:26:39 +00:00
sam marshall 079eae376c MDL-63977 Behat: Make standard login step work for app as well 2019-02-11 16:20:43 +00:00
sam marshall 66901a6968 MDL-63977 Behat: Add generic way to get tag list 2019-02-11 16:20:42 +00:00
Andrew Nicols 7bfb575f63 MDL-62514 behat: Add a wait_for_pending_js to form field 2019-01-30 08:24:32 +08:00
Simey Lameze 9b1fc262d8 MDL-63185 mod_quiz: make CiBoT happy again
Part of MDL-62610
2018-09-28 11:07:21 +08:00
Simey Lameze a190910595 MDL-63185 core_test: add set_user function to behat
Part of MDL-62610
2018-09-28 11:07:21 +08:00
Mark Nielsen b095b36c02 MDL-58948 behat: capture DriverException
Other drivers may throw a DriverException when the popup
or iframe disappears.
2017-06-28 14:34:08 -07:00
Mark Nielsen f46a2dd913 MDL-58948 behat: Fix spin method when callback throws exception
Was preventing the sleep statements from running.  This caused
steps to fail too early when it was just waiting for something
to change in the browser.
2017-06-28 14:33:51 -07:00
Mark Nielsen b5be387556 MDL-58948 behat: conditionally execute MoodleSelenium2Driver
There is some specific code being executed that only exists
in the MoodleSelenium2Driver.  Conditionally execute this
code to make it compatible with other Mink drivers.
2017-06-28 12:50:44 -07:00
Mark Nielsen 5536bf4f22 MDL-58948 behat: return the result of the pending JS method
This increases compatibility with other Mink drivers,
in particular, the Chrome Mink Driver.
2017-06-28 11:20:49 -07:00
gthomas2 01f2a530b7 MDL-58023 behat: Improve find_node_in_navigation function 2017-03-13 11:41:23 +00:00
gthomas2 353e78765a MDL-58052 behat: user session function - use to edit current profile 2017-03-03 13:57:01 +00:00
Rajesh Taneja 3df6e801b5 MDL-57168 behat: Ensure drawer is open before clicking the link 2016-11-28 12:57:55 +08:00
Damyon Wiese 63e4df60f6 MDL-55839 behat: Behat fixes for theme_noname
This is a squash of many small fixes.
The list of changes are:

Initial set of behat selectors overrides required for new theme.

set core behat selectors if not overridden by theme

Remove pause

Fix for checkboxes not saving properly

Custom override for click in the user menu

Fix for behat guessing the field type.

Behat fix for guessing the correct field type.

Fix for missing closeElementBefore mforms mess.

Fix for textareas not displaying their contents.

Fix availability form element

Fix action menu selectors for activities in a course page

Fix textareas not retaining their values

Fix selector for blocks

I had to change the single select template to use an input instead of a button because of a
behat bug we have not tracked down yet.

Fix for frozen attribute in form elements

Use input instead of button while behat is still broken

Fix for navigation selector override

Behat selector fixes and multi-select fixes for templated select

Fix for configure blocks selector + booleans for autocomplete

Fixes for course_summary behat tests

Allow optgroups in single_select

Behat fixes for block_navigation

Fixes for url form element and activity chooser selectors

blocks_social - fix specific selector for behat

Fix export_for_template for selectgroups element.

Dont set empty id on the form

Fix direct call to behat_navigation in backup context

Checkbox empty value fix

Fix for assign grading panel popouts

file picker overrides to find a file manager in the page

Fix chat tests to use element name

Make selectors in mod_data behat less specific

MDL-55839: recent activity behat test relies on time()

SQUASH Honour mform element "class" attribute on the container

SQUASH Fixes for behat in mod_forum

SQUASH search form template showing value as text next to the button

SQUASH undo double selectgroup fix

SQUASH - The slightly different structure to action menus breaks course drag and drop

SQUASH Wrap loading icon in a span so the selector still works.

SQUASH Fix fragile javascript in report_loglive

SQUASH Fix tabtree, and selectgroups for mod_feedback

Also - do-not enhance the action menu - we are dropping support for this.

SQUASH Fix filemanager selector and pix_icon template for mod_forum tests.

SQUASH Fixes to breadcrumb and add formid to single select (fixes mod_glossary tests)

SQUASH lesson behat fixes. 95% of lesson styles were rubbish so they were disgarded.

SQUASH Fix lti behat tests - they were cheating and using a context step from quiz

SQUASH Behat fixes for quiz with new theme

SQUASH behat fixes for mod_wiki

SQUASH Workshop behat fixes

SQUASH Frozen form elements cannot use a readonly form element because it screws with the form JS "disabledIf" stuff.

SQUASH Fixes for grades behat tests

SQUASH behat fixes for groups

SQUASH blacklist action menu tests

SQUASH Fix for tag form element missing "manage standard tags" link

SQUASH Incomplete fixes for course behat tests

SQUASH behat fixes for badges

SQUASH Tags fixes for behat

SQUASH filepicker fixes for behat

SQUASH Abort guessing field type when we hit 'html'

SQUASH Fix for admin/tool/behat tests

SQUASH fix for admin tool behat tests

SQUASH fix for availabilty conditions hiding "aria-hidden" elements

SQUASH give the blocks more room. We get behat files because nav tree nodes are not in view

SQUASH Blocks fixed

Fix behaviour of unchecked checkboxes

SQUASH Remove incorrect step in user test

SQUASH behat fixes for course tests

Part of MDL-55071
2016-09-23 10:55:16 +01:00
Rajesh Taneja 0c1bcb63c6 MDL-46514 behat: Catch php errors in shutdown hook
If error is not displayed in web browser then
it will be caught in shutdown hook, so we can
show it to user
2016-08-23 15:14:38 +08:00
sam marshall 5a14c4d948 MDL-54920 Behat: Allow viewport size to be set consistently
Provides a new Behat step

And I set viewport size to "800x600"
2016-06-14 12:28:24 +01:00
David Monllao 8918a8115e MDL-53796 behat: Move get_debug_text to base class 2016-04-13 10:34:28 +08:00
Rajesh Taneja 921faad9ad MDL-53571 behat: Use Escaper for escaping
xpathLiteral has been depreacted, use Escaper instead
2016-04-06 15:38:31 +08:00
Rajesh Taneja eb9ca848fa MDL-53381 behat: Replaced chained steps with api.
Behat 3.x doesn't support chained steps and hence
this is first step to get rid of chained steps in core.
2016-04-06 11:32:49 +08:00
Rajesh Taneja 07298309dc MDL-46891 behat: Move wait in behat_base so it can be used easily 2016-03-11 10:51:16 +08:00
Rajesh Taneja 42ad096fdb MDL-46891 Behat: Added support for behat 3 2016-03-11 10:51:15 +08:00
Tim Hunt 41f4dabe2b MDL-52899 behat: make PAGE_READY_JS more robust 2016-01-26 11:23:26 +00:00
Tony Levi 80ac8522cc MDL-48926 behat: Do not poll within spin for non-javascript mode 2015-01-28 10:58:00 +10:30
Damyon Wiese 786ced9925 MDL-43883 Behat: Fix deprecation and move custom matches to the editor field only. 2014-03-27 12:36:37 +08:00
Rajesh Taneja 3233f32dfb MDL-44557 behat: Resize window only possible with javascript 2014-03-26 14:45:30 +08:00
Marina Glancy f2bf88130d Merge branch 'wip-mdl-44557' of git://github.com/rajeshtaneja/moodle 2014-03-26 14:10:53 +08:00
Rajesh Taneja 3b0b5e570d MDL-44557 behat: Allow nehat to resize window
Run all behat with medium (1024x768) screen size to
avoid failures with small screen size. Also, added
feature to let scenario chnage screen size if need be.
2014-03-26 13:59:14 +08:00
Damyon Wiese 9f07f05a48 MDL-43883 Behat: Make Atto the default text editor and adjust behat to use it. 2014-03-26 10:01:49 +08:00