MDL-53810 behat: Zoom in Rubric before filling form.
authorRajesh Taneja <rajesh@moodle.com>
Thu, 5 May 2016 06:48:28 +0000 (14:48 +0800)
committerAndrew Nicols <andrew@nicols.co.uk>
Fri, 6 May 2016 01:27:35 +0000 (09:27 +0800)
div is now overflow, selenium can't get element
in viewport, zoom in before entering the value

grade/grading/form/rubric/tests/behat/behat_gradingform_rubric.php

index e0d3299..4c31b28 100644 (file)
@@ -281,6 +281,11 @@ class behat_gradingform_rubric extends behat_base {
         $stepusage = '"I grade by filling the rubric with:" step needs you to provide a table where each row is a criterion' .
             ' and each criterion has 3 different values: | Criterion name | Number of points | Remark text |';
 
+        // If running Javascript, ensure we zoom in before filling the grades.
+        if ($this->running_javascript()) {
+            $this->execute('behat_general::click_link', get_string('togglezoom', 'mod_assign'));
+        }
+
         // First element -> name, second -> points, third -> Remark.
         foreach ($criteria as $name => $criterion) {
 
@@ -326,6 +331,11 @@ class behat_gradingform_rubric extends behat_base {
             $textarea = $this->get_node_in_container('css_element', 'textarea', 'table_row', $name);
             $this->execute('behat_forms::i_set_the_field_to', array($textarea->getAttribute('name'), $criterion[1]));
         }
+
+        // If running Javascript, then ensure to close zoomed rubric.
+        if ($this->running_javascript()) {
+            $this->execute('behat_general::click_link', get_string('togglezoom', 'mod_assign'));
+        }
     }
 
     /**