1. 27 Feb, 2014 8 commits
    • David Monllaó's avatar
    • David Monllaó's avatar
      MDL-43738 behat: Normalization and major refactoring of getters and setters · c3f1e953
      David Monllaó authored
      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
      c3f1e953
    • David Monllaó's avatar
      MDL-43738 behat: Functional tests for fields management · becb7e51
      David Monllaó authored
      We are cheating with this .feature file as this
      is not a behaviour and we are just testing the
      framework, but in this case I think that everybody
      will agree on the need of doing it, as every browser
      behaves differently and minor changes in the getters
      and setters can easily end up breaking the behaviours.
      
      All credit goes to Eloy Lafuente (stronk7).
      becb7e51
    • Eloy Lafuente's avatar
      MDL-43713 behat: improve multi-select support · 5f66d46e
      Eloy Lafuente authored and David Monllaó's avatar David Monllaó committed
      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.
      5f66d46e
    • David Monllaó's avatar
      MDL-25505 behat: Adding a time gap between two cron runs. · b71419ae
      David Monllaó authored
      According to \core\task\scheduled_task::get_next_scheduled_time() we
      wait 61 seconds, as the next scheduled time is in the next minute.
      b71419ae
    • David Monllaó's avatar
      MDL-44286 behat: Fixing JS code error · 0d5b3cb5
      David Monllaó authored and Damyon Wiese's avatar Damyon Wiese committed
      PhantomJS console shows a JS error regarding
      an undefined Syn var; as explained by Andrew
      Nicols this is caused by Syn supported features
      checker, the change in moodle-behat-extension
      solves this problem.
      0d5b3cb5
    • Damyon Wiese's avatar
    • Jason Fowler's avatar
      00bc0844
  2. 26 Feb, 2014 3 commits
    • Damyon Wiese's avatar
      MDL-44139 Remove adminwarning from base css. · 642df831
      Damyon Wiese authored
      Grr. Afterburner has nothing defined for adminwarning before, so this
      makes it look all red and splotchy.
      642df831
    • Damyon Wiese's avatar
      MDL-44139 Themes: Add default definitions for .adminwarning and .adminerror to base · 2fda38c2
      Damyon Wiese authored
      These were missing from base, but were defined in standard and canvas, which 99% of old themes
      inherit from. But they are critical for the proper display of moodle and should at least have a
      default definition in all themes (e.g. afterburner only inherits from base).
      
      This background color has been tested for contrast accessibility.
      2fda38c2
    • Damyon Wiese's avatar
      MDL-25499: Centralise management of all types of cron tasks · 309ae892
      Damyon Wiese authored
      Centralise management of all types of cron tasks with registration, scheduling,
      parallel task conflicts(blocking) and running once off tasks, all using an
      administration screen.
      
      This is a combination of several issues:
      
      MDL-25502: Added "black magic" task allocator for cron
      MDL-25503: Add step to cron to run all scheduled tasks
      MDL-25504 cron: Refactor to use scheduler
      MDL-25505: Add an admin interface to schedule tasks via cron.
      MDL-25507: Add support for adhoc tasks.
      309ae892
  3. 25 Feb, 2014 19 commits
  4. 24 Feb, 2014 10 commits