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

Promote mod/lti site admin pages to core

XMLWordPrintable

    • MDL-79844-main
    • Hide

      Automated testing

      • Confirm a passing run of behat with --tags=@core_ltix
      • Confirm a passing run of behat with --tags=@mod_lti
      • PHPUnit: confirm all passing (gha)

      Test dynamic registration

      1. Make your site public (ngrok, etc)
      2. Go to Site admin > General > LTI > Manage tools
      3. Paste https://robotest.theedtech.dev/register into the text input and click "Add LTI Advantage"
      4. Verify successful registration
      5. Click the close button at the bottom of the tool registration pane
      6. Activate the tool via the tool card and confirm that works.
      7. Edit the tool
      8. Change the name, remove the description and remove any custom params
      9. Save the tool
      10. Paste https://robotest.theedtech.dev/register into the text input and click "Add LTI Advantage" again
      11. When prompted to update the tool, click "Update"
      12. Scroll down in the output and verify you see "Successful registration" in green. Note: you'll probably see a broken robot graphic and I suspect this is in error - perhaps related to the fact that Moodle's known endpoints have changed. The registration will still work though. I've raised that red bit with Claude in the mean time.
      13. Edit the tool and verify
        • The page is ltix/typessettings.php and you see the "LTI version" field
        • Name is Robotest
        • Description is set once again
        • Custom params are set once again
      14. Cancel out of the form
      15. Click "Tool configuration details" on the tool card
      16. Verify you see tool information in a modal

      Test LTI 2.0 registration

      1. You don't need a public site for this, so you disable that if running.
      2. Create another Moodle site called Tool (can just be weekly, whatever)
      3. Enable auth_lti and enrol_lti plugins
      4. Create a course and go to it
      5. Via the course nav, select "Published as LTI tools"
      6. Click the "legacy" tab
      7. Click the "Add" button
      8. Leave all default and click "Add method"
      9. Copy the "Registration URL" value
      10. Now, in the original site running the patch, go to "Site admin > General > LTI > Manage tools"
      11. Paste the registration URL you just copied and click "Add legacy LTI"
      12. Verify you see "Successful registration"
      13. Continue, via the button
      14. Verify you're asked to activate the tool.
      15. Activate the tool
      16. Verify you can see the tool card for the tool you just created.
      17. Edit the tool
      18. Verify you're on toolssettings.php and you don't see things like "LTI Version" in the form. A few fields will be readonly - that's expected.
      19. Go back to "Manage tools"
      20. Paste the registration URL again and click "Add legacy LTI"
      21. Verify you see "This registration URL is already in use"

      Verify legacy views for tool registrations still works

      1. Continues on from above, so make sure you've done those bits..
      2. Go to "Site admin > General > LTI > Manage tools"
      3. Click "Manage external tool registrations". You'll see a legacy blue table.
      4. Select the "Accepted" column
      5. Verify you see for SITE/enrol/lti/proxy.php with some params - the tool you just created via LTI 2.0 registration
      6. Click edit
      7. Verify the page is registersettings.php and you see 4 fields, 3 of which are disabled/readonly.
      8. Verify you see all capabilities and services appear selected.
        Note: you can't save this form - existing bug in main branch and has likely been like this for ages - ignore that if you decide to test it.
      9. Click cancel so you're back on the blue table, accepted tab.
      10. Delete the registration and confirm that it's gone.
      11. Go back to "Manage tools" and confirm the tool is gone from there also now.
      12. Now, again click "Manage external tool registrations"
      13. Click "Configure a new external tool registration"
      14. Get the tool registration URL from your other site again
      15. Paste it into the registration URL field
      16. Enter any name e.g. "Legacy test tool"
      17. Select all capabilities and services
      18. Save
      19. *Verify you see the tool in the "Configured" tab and that you can see a tick icon next to edit and delete
      20. Click the tick icon
      21. Verify you see "Successful registration"
      22. Click "Continue"
      23. This will just show an infinite loading spinner (another bug in main), so ignore that and reload the page
      24. When the page reloads, select the "Accepted" column
      25. Verify you see for SITE/enrol/lti/proxy.php with some params - the tool you just created via LTI 2.0 registration
      26. Verify there's nothing in any other tabs there
      27. Go back to "Manage tools"
      28. Verify:
        • The tool is again present there too now, as a tool card.
        • The tool is listed as "pending" there.
      29. Click the "Manage preconfigured tools" link
      30. Go to the "Pending" tab
      31. Verify you see the tool listed there
      32. Click the tick icon and Verify the tool is now listed under the "Active" column
      33. Go back to "Manage tools"
      34. Verify the tool is again present here, but is now activated.
      Show
      Automated testing Confirm a passing run of behat with --tags=@core_ltix Confirm a passing run of behat with --tags=@mod_lti PHPUnit: confirm all passing (gha) Test dynamic registration Make your site public (ngrok, etc) Go to Site admin > General > LTI > Manage tools Paste https://robotest.theedtech.dev/register into the text input and click "Add LTI Advantage" Verify successful registration Click the close button at the bottom of the tool registration pane Activate the tool via the tool card and confirm that works. Edit the tool Change the name, remove the description and remove any custom params Save the tool Paste https://robotest.theedtech.dev/register into the text input and click "Add LTI Advantage" again When prompted to update the tool, click "Update" Scroll down in the output and verify you see "Successful registration" in green. Note: you'll probably see a broken robot graphic and I suspect this is in error - perhaps related to the fact that Moodle's known endpoints have changed. The registration will still work though. I've raised that red bit with Claude in the mean time. Edit the tool and verify The page is ltix/typessettings.php and you see the "LTI version" field Name is Robotest Description is set once again Custom params are set once again Cancel out of the form Click "Tool configuration details" on the tool card Verify you see tool information in a modal Test LTI 2.0 registration You don't need a public site for this, so you disable that if running. Create another Moodle site called Tool (can just be weekly, whatever) Enable auth_lti and enrol_lti plugins Create a course and go to it Via the course nav, select "Published as LTI tools" Click the "legacy" tab Click the "Add" button Leave all default and click "Add method" Copy the "Registration URL" value Now, in the original site running the patch, go to "Site admin > General > LTI > Manage tools" Paste the registration URL you just copied and click "Add legacy LTI" Verify you see "Successful registration" Continue, via the button Verify you're asked to activate the tool. Activate the tool Verify you can see the tool card for the tool you just created. Edit the tool Verify you're on toolssettings.php and you don't see things like "LTI Version" in the form. A few fields will be readonly - that's expected. Go back to "Manage tools" Paste the registration URL again and click "Add legacy LTI" Verify you see "This registration URL is already in use" Verify legacy views for tool registrations still works Continues on from above, so make sure you've done those bits.. Go to "Site admin > General > LTI > Manage tools" Click "Manage external tool registrations". You'll see a legacy blue table. Select the "Accepted" column Verify you see for SITE/enrol/lti/proxy.php with some params - the tool you just created via LTI 2.0 registration Click edit Verify the page is registersettings.php and you see 4 fields, 3 of which are disabled/readonly. Verify you see all capabilities and services appear selected. Note: you can't save this form - existing bug in main branch and has likely been like this for ages - ignore that if you decide to test it. Click cancel so you're back on the blue table, accepted tab. Delete the registration and confirm that it's gone. Go back to "Manage tools" and confirm the tool is gone from there also now. Now, again click "Manage external tool registrations" Click "Configure a new external tool registration" Get the tool registration URL from your other site again Paste it into the registration URL field Enter any name e.g. "Legacy test tool" Select all capabilities and services Save *Verify you see the tool in the "Configured" tab and that you can see a tick icon next to edit and delete Click the tick icon Verify you see "Successful registration" Click "Continue" This will just show an infinite loading spinner (another bug in main), so ignore that and reload the page When the page reloads, select the "Accepted" column Verify you see for SITE/enrol/lti/proxy.php with some params - the tool you just created via LTI 2.0 registration Verify there's nothing in any other tabs there Go back to "Manage tools" Verify : The tool is again present there too now, as a tool card. The tool is listed as "pending" there. Click the "Manage preconfigured tools" link Go to the "Pending" tab Verify you see the tool listed there Click the tick icon and Verify the tool is now listed under the "Active" column Go back to "Manage tools" Verify the tool is again present here, but is now activated.
    • 5

      Promote mod/lti site admin pages to core

      The main goals here are:

      1. Move all admin-specific views/renderables/js/etc. to core_ltix/. The administration of tools is now a core concern.
      2. Introduce a new site admin node, allowing these views to be accessed.
        • E.g. Move 'Manage tools' from it's location in "Site admin > Plugins > Activity modules > External tool" to a new location "General > LTI > Manage tools". This will also involve updating (removing) mod/lti/settings.php, once we're sure the same functionality exists in the core_ltix admin tree.

            jaked Jake Dallimore
            ismael-texidor Ish Texidor-Rodriguez
            Ilya Tregubov Ilya Tregubov
            Votes:
            0 Vote for this issue
            Watchers:
            10 Start watching this issue

              Created:
              Updated:
              Resolved:

                Estimated:
                Original Estimate - 0 minutes
                0m
                Remaining:
                Remaining Estimate - 0 minutes
                0m
                Logged:
                Time Spent - 2 days, 5 hours, 7 minutes
                2d 5h 7m

                  Error rendering 'clockify-timesheets-time-tracking-reports:timer-sidebar'. Please contact your Jira administrators.