Details

    • Type: Sub-task
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 2.8.3
    • Fix Version/s: 3.1
    • Component/s: Glossary, Web Services
    • Labels:
    • Testing Instructions:
      Hide

      Test pre-requisites

      Cross-DB testing.
      You may want to create this on master, and restore on your integration site.

      • Two glossaries
        • One with setting "Average or ratings" (in config form Ratings > Aggregate type).
      • Mixed entries in both glossaries
        • Concepts starting with letter, or number
        • Some entries with aliases (keywords)
        • Some entries with attachments
        • Some entries in categories, or uncategorised
        • Entries with different authors
        • Some entries which are not approved

      Regression testing

      Cross-DB testing.
      Compare master vs. integration, they should behave the same.

      1. Perform the following switching between at least 3 glossary display formats, one of which should display all 4 tabs.
      2. Make sure that:
        • Filtering by letter works as before
        • Filtering by All or Special works as before
        • Ordering by date (created, updated) ascending/descending works as before
      3. Make sure that the print view works as before in each filtering/ordering combination
      4. Check the approval screen for regression as well (Note: MDL-51823)

      Webservice testing

      You will have to call all the following webservices, please refer to the external function definition to find out what parameters are accepted. Note that all of these are tested using web services so here you can just perform a rough test.

      1. For each of the following web services:
        • mod_glossary_get_glossaries_by_courses
        • mod_glossary_view_glossary (check logs)
        • mod_glossary_view_entry (check logs)
        • mod_glossary_get_entries_by_letter
        • mod_glossary_get_entries_by_date
        • mod_glossary_get_categories
        • mod_glossary_get_entries_by_category
        • mod_glossary_get_authors
        • mod_glossary_get_entries_by_author
        • mod_glossary_get_entries_by_author_id
        • mod_glossary_get_entries_by_search
        • mod_glossary_get_entries_by_term
        • mod_glossary_get_entries_to_approve
        • mod_glossary_get_entry_by_id
      2. Make sure that:
        • A user without permission cannot retrieve what they're not supposed to
          • View hidden glossary
          • View other's non-approved entries
        • The entries are returned with their attachments
        • The entries contain the picture URL of the author (and it's the right one)
        • The webservice works as you'd expect

      Webservice call using curl:
       
      curl http://MOODLE/webservice/rest/server.php \
      -d wsfunction=FUNCTION \
      -d wstoken=TOKEN \
      -d moodlewsrestformat=json \
      -d moodlewssettingfilter=1 \
      -d PARAM1="VAL1" \
      -d PARAM2="VAL2" | python -m json.tool
      

      Show
      Test pre-requisites Cross-DB testing. You may want to create this on master, and restore on your integration site. Two glossaries One with setting "Average or ratings" (in config form Ratings > Aggregate type). Mixed entries in both glossaries Concepts starting with letter, or number Some entries with aliases (keywords) Some entries with attachments Some entries in categories, or uncategorised Entries with different authors Some entries which are not approved Regression testing Cross-DB testing. Compare master vs. integration, they should behave the same. Perform the following switching between at least 3 glossary display formats, one of which should display all 4 tabs. Make sure that: Filtering by letter works as before Filtering by All or Special works as before Ordering by date (created, updated) ascending/descending works as before Make sure that the print view works as before in each filtering/ordering combination Check the approval screen for regression as well (Note: MDL-51823 ) Webservice testing You will have to call all the following webservices, please refer to the external function definition to find out what parameters are accepted. Note that all of these are tested using web services so here you can just perform a rough test. For each of the following web services: mod_glossary_get_glossaries_by_courses mod_glossary_view_glossary (check logs) mod_glossary_view_entry (check logs) mod_glossary_get_entries_by_letter mod_glossary_get_entries_by_date mod_glossary_get_categories mod_glossary_get_entries_by_category mod_glossary_get_authors mod_glossary_get_entries_by_author mod_glossary_get_entries_by_author_id mod_glossary_get_entries_by_search mod_glossary_get_entries_by_term mod_glossary_get_entries_to_approve mod_glossary_get_entry_by_id Make sure that: A user without permission cannot retrieve what they're not supposed to View hidden glossary View other's non-approved entries The entries are returned with their attachments The entries contain the picture URL of the author (and it's the right one) The webservice works as you'd expect Webservice call using curl:   curl http://MOODLE/webservice/rest/server.php \ -d wsfunction=FUNCTION \ -d wstoken=TOKEN \ -d moodlewsrestformat=json \ -d moodlewssettingfilter=1 \ -d PARAM1="VAL1" \ -d PARAM2="VAL2" | python -m json.tool
    • Affected Branches:
      MOODLE_28_STABLE
    • Fixed Branches:
      MOODLE_31_STABLE
    • Pull from Repository:
    • Pull Master Branch:
      MDL-49231-master

      Description

      We need to implement a set of glossary web services for exporting glossary entries to be used mostly in the mobile app

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Votes:
                  0 Vote for this issue
                  Watchers:
                  8 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved:
                    Fix Release Date:
                    23/May/16