Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-31356

IMS Enterprise enrol plugin added features

    XMLWordPrintable

    Details

    • Database:
      Any
    • Testing Instructions:
      Hide

      Manual tests

      • Go to IMSEnterprise Enrol Plugin settings/config screen; notice there are new options:
        • to control updating users; "Update user accounts when specified in IMS data"
        • to control updating courses "Update course"
        • to enable nested categories "Allow nested categories"
        • to enable category idnumber "Allow category idnumber"
        • a separator character to separate category name and idnumber "Category Separator Character".
      • Ensure that the options "Update course" and "Update user accounts when specified in IMS data" are not checked.
      • Ensure that the options "Allow nested categories" and "Allow category idnumber" are not checked.
      • Ensure that the option "Category Separator Character" is empty.
      • Ensure that options "Create user accounts for users not yet registered in Moodle", "Create new (hidden) courses if not found in Moodle" and "Create new (hidden) course categories if not found in Moodle" are checked.
      • Load the provided XML data_1. (by clicking "perform an IMS Enterprise import right now")
        • Program works as before (category name)
        • You should see 1 new user (Joe User) created with an authentication type of 'none'
        • You should see 1 new course "AMCS-200-003-13-SP" created and placed into a new top level category called "Spring 2013 - AMCS".
        • Take note of the full name of the course.
      • Go to IMSEnterprise Enrol Plugin settings/config screen;
      • Ensure that the options "Update course" and "Update user accounts when specified in IMS data" are checked.
      • Load the provided XML data_2.
        • Program works as before (category name)
        • You should see 1 new course "AMCS-301-004-14-SP" created and placed into the existing category called "Spring 2013 - AMCS".
        • You should see the full name of course "AMCS-200-003-13-SP" updated.
        • You should see the given name and family name of user "Joe User" updated to "Joseph User Jr.".
      • Go to IMSEnterprise Enrol Plugin settings/config screen;
      • Ensure that the option "Allow nested categories" is checked.
      • Load the provided XML data_3.
        • Program works with nested categories (using category name only).
        • You should see a new category "Summer 2016" at top level.
        • You should see a new category "INFS" in category "Summer 2016".
        • You should see 2 new courses "IFN-300-007-16-AB" and "IFN-300-008-16-DE" created and placed into category "INFS".
      • Go to IMSEnterprise Enrol Plugin settings/config screen;
      • Ensure that the options "Allow nested categories" and "Allow category idnumber" are checked.
      • Ensure that the option "Category Separator Character" contains '|' character.
      • Load the provided XML data_4.
        • Program works with nested categories (using category name and idnumber).
        • You should see a new category "Winter 2015" with idnumber "200" at top level.
        • You should see a new category "PHY" with idnumber "2001" in category "Winter 2015".
        • You should see 2 new courses "PHY-100-007-15-AB" and "PHY-100-118-15-AB" created and placed into category "PHY".

      Unit tests

      • Run : phpunit enrol_imsenterprise_testcase enrol/imsenterprise/tests/imsenterprise_test.php
      • Run : phpunit core_course_courselib_testcase course/tests/courselib_test.php
      Show
      Manual tests Go to IMSEnterprise Enrol Plugin settings/config screen; notice there are new options: to control updating users; "Update user accounts when specified in IMS data" to control updating courses "Update course" to enable nested categories "Allow nested categories" to enable category idnumber "Allow category idnumber" a separator character to separate category name and idnumber "Category Separator Character". Ensure that the options "Update course" and "Update user accounts when specified in IMS data" are not checked. Ensure that the options "Allow nested categories" and "Allow category idnumber" are not checked. Ensure that the option "Category Separator Character" is empty. Ensure that options "Create user accounts for users not yet registered in Moodle", "Create new (hidden) courses if not found in Moodle" and "Create new (hidden) course categories if not found in Moodle" are checked. Load the provided XML data_1. (by clicking "perform an IMS Enterprise import right now") Program works as before (category name) You should see 1 new user (Joe User) created with an authentication type of 'none' You should see 1 new course "AMCS-200-003-13-SP" created and placed into a new top level category called "Spring 2013 - AMCS". Take note of the full name of the course. Go to IMSEnterprise Enrol Plugin settings/config screen; Ensure that the options "Update course" and "Update user accounts when specified in IMS data" are checked. Load the provided XML data_2. Program works as before (category name) You should see 1 new course "AMCS-301-004-14-SP" created and placed into the existing category called "Spring 2013 - AMCS". You should see the full name of course "AMCS-200-003-13-SP" updated. You should see the given name and family name of user "Joe User" updated to "Joseph User Jr.". Go to IMSEnterprise Enrol Plugin settings/config screen; Ensure that the option "Allow nested categories" is checked. Load the provided XML data_3. Program works with nested categories (using category name only). You should see a new category "Summer 2016" at top level. You should see a new category "INFS" in category "Summer 2016". You should see 2 new courses "IFN-300-007-16-AB" and "IFN-300-008-16-DE" created and placed into category "INFS". Go to IMSEnterprise Enrol Plugin settings/config screen; Ensure that the options "Allow nested categories" and "Allow category idnumber" are checked. Ensure that the option "Category Separator Character" contains '|' character. Load the provided XML data_4. Program works with nested categories (using category name and idnumber). You should see a new category "Winter 2015" with idnumber "200" at top level. You should see a new category "PHY" with idnumber "2001" in category "Winter 2015". You should see 2 new courses "PHY-100-007-15-AB" and "PHY-100-118-15-AB" created and placed into category "PHY". Unit tests Run : phpunit enrol_imsenterprise_testcase enrol/imsenterprise/tests/imsenterprise_test.php Run : phpunit core_course_courselib_testcase course/tests/courselib_test.php
    • Affected Branches:
      MOODLE_22_STABLE, MOODLE_31_STABLE
    • Fixed Branches:
      MOODLE_32_STABLE
    • Pull Master Branch:
      MDL-31356_master
    • Story Points:
      40

      Description

      I've added the following features to the IMS Enterprise enrol plugin:

      Ability to update a course Full Name
      Ability to update a course Short Name
      Ability to create nested categories during course creation
      Ability to update a user record (all fields that the plugin already knew about except username)
      Ability to set/update an authentication type for a user (during creation and updates)

      I've added options in the settings/config area for this plugin to turn on/off course and user updates, and to set the separator character for nested categories.

        Attachments

        1. data_1.xml
          0.7 kB
        2. data_2.xml
          0.9 kB
        3. data_3.xml
          0.7 kB
        4. data_4.xml
          0.7 kB
        5. data_set_1.xml
          0.7 kB
        6. data_set_2.xml
          0.9 kB
        7. imsenterprise_lang_en_enrol_imsenterprise.php.patch
          2 kB
        8. imsenterprise_lib.php.patch
          13 kB
        9. imsenterprise_lib.php.patch
          9 kB
        10. imsenterprise_lib.php.patch
          8 kB
        11. imsenterprise_lib.php.patch
          8 kB
        12. imsenterprise_settings.php.patch
          2 kB
        13. imsenterprise.tar.gz
          14 kB
        14. moodle-287-imsenterprise-biggsb.patch
          15 kB
        15. moodle-master-MDL-31356.diff
          19 kB

          Issue Links

            Activity

              People

              Assignee:
              sergeg55 Serge Gauthier
              Reporter:
              perlwiz Brian Biggs
              Peer reviewer:
              Issam Taboubi Issam Taboubi
              Integrator:
              Dan Poltawski Dan Poltawski
              Tester:
              John Okely John Okely
              Participants:
              Component watchers:
              Amaia Anabitarte, Carlos Escobedo, Ferran Recio, Ilya Tregubov, Sara Arjona (@sarjona)
              Votes:
              11 Vote for this issue
              Watchers:
              18 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:
                Fix Release Date:
                5/Dec/16