Commit Graph

36 Commits

Author SHA1 Message Date
Tim Hunt 2a7241b3a1 MDL-49205 behat: fix I set the field with xpath fail message. 2015-02-13 16:16:27 +00:00
Rajesh Taneja c8410c245c MDL-43835 behat: Added new step to set field with xpath defined 2015-01-15 11:35:19 +00:00
David Monllao e0cd7e44db MDL-45192 behat: Replacing specific-selector steps by a generic one
Having a I click on we can use all our selectors rather
than having multiple steps for the same purpose. This
step allow us to manage JS native dialogues without
having to fail a scenario.

Credit for Mohamed Alsharaf.
2014-05-26 13:57:23 +12:00
Mohamed Alsharaf 184cdf0d52 MDL-45192 assign: added behat script & new definitions to handle alert dialog
The behat script is to test the batch action to lock and unlock submissions.
The new definitions are to prevent the "unexpected alert open" error in Selenium.
2014-05-26 13:57:18 +12:00
David Monllao af4830a257 MDL-44619 behat: Converting MDLQA-8
In a standard forum, students can start discussions
add replies and attach files to their posts.
2014-04-09 19:34:11 +07: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
David Monllao decf1e14c8 MDL-43738 behat: More info about how to get/set fields 2014-02-27 18:22:06 +08:00
David Monllao a525414125 MDL-43738 behat: Updating steps definitions and deprecating methods 2014-02-27 18:22:05 +08:00
David Monllao c3f1e9532d MDL-43738 behat: Normalization and major refactoring of getters and setters
Every single step that sets or gets a value from a field
has been updated to follow the same behaviour both when
using it through a single step or through generic steps
like "I fill the moodle form with:", to resume all the
changes:
- Created a behat_form_group to re-guess the field type
  and act appropriately setting and getting it's value
- Normalize all getters and setters to use behat_form_field
  children
- Complete behat_form_checkbox to trigger the appropiate JS
  event needed to perform some JS scripts that are listening
- Refactor MDL-43713 multi-select changes and remove
  the two new steps introduced there as that behaviour can
  be managed from the generic getter
- Added a new step definition to check a capability permission
  as we changed the way radio buttons gets it's value
2014-02-27 18:22:03 +08:00
Eloy Lafuente (stronk7) 5f66d46e22 MDL-43713 behat: improve multi-select support
This patch implements:

1) Normalization of options. Before the patch options
in a select were being returned as "op1 op2 op3" by selenium
and "op1 op2 op3" by goutte. With the patch, those lists
are always returned like "op1, op2, op3". If real commas are
needed when handling multiple selects they should
be escaped with backslash in feature files.

2) Support for selecting multiple options. Before the patch
only one option was selected and a new selection was cleaning the
previous one. With the patch it's possible to pass "op1, op2" in
these steps:
  - I fill the moodle form with (table)
  - I select "OPTION_STRING" from "SELECT_STRING"

3) Ability to match multiple options in this steps. Before the
patch matching of multiple was really random, now every every
passed option ("opt1, opt2") is individually verified. It applies
to these 2 steps:
  - the "ELEMENT" select box should contain "OPTIONS"
  - the "ELEMENT" select box should not contain "OPTIONS"

4) Two new steps able to verify if a form have some options selected or no:
  - the "ELEMENT" select box should contain "OPTIONS" selected
  - the "ELEMENT" select box should contain "OPTIONS" not selected

5) Change get_value from xpath search to Mink's getValue() that is immediate
(does not need form submission) and works for all browsers but Safari, that
fails because of the extra ->click() issued.

Note all the changes 1-4 only affect to multi-select fields. Single
selects should continue working 100% the same.

The change 5) causes Safari to fail. The problem has been traced down to
the extra ->click() present there. Anyway there are not test cases
requiring that "immediate" evaluation right now. Only the special feature
file attached verifies it.
2014-02-27 18:21:43 +08:00
David Monllao 74c78e7483 MDL-43837 behat: Adding reduced timeouts
There are steps where we want to check that
"something" does not appear in the page
or does not exist. We still have to spin
but we don't need to spin for 6 seconds.
2014-02-24 09:43:24 +08:00
David Monllao fb99ef1ded MDL-42625 behat: Fixing failures
* Expanding fieldsets before setting the course format
* Ensure editors are loaded moved to expand_all_fieldsets
* Return true rather than false when JS is disabled and
  non-allowed steps should continue without throwing an
  exception.
* Submit create user form after editing it
2013-12-12 13:41:07 +08:00
David Monllao d1e55a47be MDL-42625 behat: Step definitions + related changes in features
In general aiming for compatibility with multiple browsers,
firefox, chrome and phantomjs to be more specific.

* Removing hardcoded waits
* Adding @_alert, @_switch_window and @_switch_frame tags,
  to label actions that different drivers have problems with.
* Adding missing @_files_upload and @_only_local tags to features that
  uploads files.
* Fixing a few wait for page ready what specified miliseconds.
* New methods to ensure elements (usual selectors), sections and editors
  are ready to interact with
* Changing the select an option implementation to deal with the different
  drivers implementations when listening to JS events.
2013-12-06 13:10:24 +08:00
Damyon Wiese 6e2c417c1f MDL-41030 Behat: Add support for waiting for javascript
This is so that phantomjs (which runs faster than selenium) can pass the tests.
2013-12-06 12:13:39 +08:00
David Monllao 8cda2e6fe7 MDL-40123 behat: Show all of form's elements changes.
* Avoid waiting until Show more... links appears if we
  already waited.
* Use collapse/expand button rather than clicking on
  each of the form's fieldsets.
2013-07-19 10:03:39 +02:00
David Monllao 3897608152 MDL-39635 behat: XPath cleanups
- Escaping steps arguments redirected to other steps
- Adding normalized-space() in all contains() assertions
- General xpaths review
- Convering provided xpath text strings to xpath literals
  to avoid problems with arguments containing both single
  quotes and double quotes
2013-07-19 10:02:36 +02:00
David Monllao 051e9663f0 MDL-39634 behat: Removing unused arguments
Also adding deprecated methods.
2013-06-14 16:14:04 +08:00
David Monllao 1fb9715721 MDL-39051 behat: Fixing extra interactions
When the elements to interact with are not
available anymore.
2013-05-09 17:21:19 +08:00
David Monllao 28abad1ab2 MDL-39348 behat: Compatibility with Safari and IE
Also changing from SeleniumDriver checking
to GoutteDriver as is less probably to change
goutte than to change selenium.
2013-05-03 10:43:06 +08:00
David Monllao 00ea74cb54 MDL-39348 behat: Chaining strings instead of splitting strings in lines 2013-05-03 10:16:44 +08:00
David Monllao b82e0c17fb MDL-38691 behat: Fixing behat tests 2013-04-04 13:52:24 +08:00
David Monllao cd7ea8f0cc MDL-38788 behat: Generic form elements interaction compatibile with JS disabled 2013-04-01 11:18:33 +08:00
Eloy Lafuente (stronk7) eb8a3eeaac Merge branch 'MDL-38410_master' of git://github.com/dmonllao/moodle 2013-03-19 23:20:31 +01:00
David Monllao 5cde7298e3 MDL-38410 behat: Adding new form fields 2013-03-19 16:42:59 +08:00
David Monllao fb624374bc MDL-38410 behat: Step to select from radio inputs 2013-03-19 16:42:59 +08:00
Damyon Wiese dcc5f0fe1e Merge branch 'MDL-38049-master' of git://github.com/FMCorz/moodle 2013-03-19 11:52:51 +08:00
Frederic Massart 0b8bb3fe5f MDL-38049 form: Collapsed sections are hidden on page load 2013-03-13 10:28:37 +08:00
David Monllao a4534dceef MDL-38184 behat: Fields management externalized
Not only behat_forms needs to deal
with form fields
2013-03-08 09:42:28 +08:00
Eloy Lafuente (stronk7) 88906d068d Merge branch 'MDL-37958_master' of git://github.com/dmonllao/moodle 2013-03-05 19:28:14 +01:00
David Monllao f8f1bdc315 MDL-38178 behat: Adding find_all and step to expand all form's fieldsets 2013-03-05 14:41:52 +08:00
David Monllao 15c7fb4adb MDL-37958 behat: Ignoring spaces when comparing field contents 2013-03-05 11:08:04 +08:00
David Monllao 46ac40cd0b MDL-38025 behat: Compliant with moodlechecker and codechecker 2013-03-01 16:07:04 +08:00
David Monllao 49d9112909 MDL-37958 behat: Using behat_form_field base class to interact with all form elements 2013-03-01 09:52:10 +08:00
David Monllao 02ca6219a6 MDL-37858 behat: Removing fixStepArgument
It can be managed by a @Transform in
a centralized way
2013-02-15 13:38:14 +08:00
David Monllao 1f9ffbdbde MDL-37750 behat: Using base find* methods 2013-02-08 17:11:27 +08:00
David Monllao 23ebc481e7 MDL-37657 behat: Adding definitions related with forms 2013-01-29 15:31:26 +08:00