-
Functional Test
-
Minor
-
Moodle 4.5
This is an exploratory test of a new feature or improvement, so please feel free to try anything you like and not just the test steps!
Setup / basic info
- The communication experimental feature and associated providers (Matrix and custom link) are enabled by default on https://qa.moodledemo.net/, so no site level admin configurations should be required to test them.
- Matrix is also enabled on the Matrix Demo 1 course on that site (that course also includes some further information about the Matrix integration on its homepage). The below steps assume you will test with that course, though you can experiment with enabling it yourself on other courses.
- You can access the Communication settings for a course's home page More dropdown menu.
Custom link provider
This provider allows you to set up a URL for any communication service on a course. No user/room management takes place, it simply makes a link available from the blue communication button at the bottom right of any page in the course (just above the "?" icon).
Matrix
This provider will create and manage the relevant room(s) within the Matrix messaging service for your course, as well as managing who is added/removed from any such room(s) and their per-room access/power level.
Notes:
- Matrix accounts/rooms are accessed via the Element web application, which for the rooms used by the QA site can be found at https://element.in.moodle.com/. Credentials for that site are the same as that user's Moodle QA site credentials (eg u: teacher / p: moodle).
- Most actions (such as managing room membership, creation etc) are performed in the background by ad-hoc tasks. This means those tasks must complete before the action will be completed.
Test Scenario
- As a teacher, navigate to the Matrix Demo 1 course.
- Set the group mode to Visible groups.
- Go to Participants > Groups and create two groups - call them "MDLQA-X Group A" and "MDLQA-X Group B", where X is the number of this QA test, eg: "
MDLQA-18913Group A". - Go to More > Communication and check the Provider is set to 'Matrix'. If it is is, skip to the next step. If it is not:
- Set the provider to Matrix. You can leave the room name blank or as-is, it will populate with the course name when saved if left blank.
- Once saved, teachers will likely see a banner on the course homepage confirming their room is being prepared.
- Once reloading the page results in a "room is ready" banner, the background processes have completed and the relevant setup has been performed in Matrix. You will then see the communication icon/button at the bottom right of the course page.
- Click on the communication icon at the bottom right of the page.
- You will be redirected to the Matrix (Element) web client. You should now have 2 browser tabs open (one for Moodle and one for Matrix/Element).
- Log in using your current user's credentials (ie u: teacher p: moodle).
- CONFIRM two rooms have been created (one for Group A and one for Group B) and that the room names include the groups' names.
- Back in your Moodle tab, navigate back to the course's participants page (keep the Matrix tab open as well, you will return to it in later steps).
- As admin, update the role of one student to become a teacher and set another user as a manager.
- Add one student to Group A and a different student to Group B.
- Wait a few seconds for the background cron processes to run.
- Return to the Matrix tab.
- CONFIRM that you see the expected room memberships and power level updates:
- CONFIRM that both your current teacher user and the user you upgraded to a teacher role in Moodle have been added to both groups' rooms, and that their power level is Moderator (aka Custom 51).
- CONFIRM that the user you gave the manager role in Moodle has been added to both groups' rooms and their power level is Moderator (aka Custom 51).
- CONFIRM that the students in the course have only been added to the room for the group they are the member of, and their power level remains the Default.
- Go back to the participants page, find the student who you changed to teacher and change their role back to student.
- Wait a few seconds for the background cron processes to run.
- Go back to the Matrix browser tab.
- CONFIRM that user's power level has been changed to Default and the user has been removed from both groups' rooms.
- Go back to the participants page and change one student's role to manager.
- Wait a few seconds for the background cron processes to run.
- Go back to the Matrix browser tab.
- CONFIRM that the user has been added to both groups' rooms, and their power level is Moderator (aka Custom 51).
- Go back to the participants page and enrol the admin user as a student in the course.
- Wait a few seconds for the background cron processes to run.
- Go back to the Matrix browser tab.
- CONFIRM that the site admin has been added to both groups' rooms and their power level is set to Custom 90.
- Go back to the the course in the Moodle tab.
- Navigate to More > Communication and change the communication provider from 'Matrix' to 'Custom link'.
- Leave the room name as-is (it has not functional purpose for custom link), and set the Custom link URL to https://moodle.org/mod/forum/view.php?id=56 and save changes.
- Wait a few seconds for the background cron processes to run.
- Refresh the course page and click on the communication icon.
- CONFIRM a new tab opens which loads the QA testing forum.
- Go back to the Matrix browser tab.
- CONFIRM that you (the teacher) have been removed from both groups' rooms (if you have one open or click on them under Historical, you will see a message like "You were removed from <room name> by Admin User. This indicates that all users have been removed from the room.
- Edit the course settings, change the group mode to no group and save changes.
- Navigate to More > Communication and change the provider back to 'Matrix'.
- Set the Room name if you wish - if you leave it blank the expected behaviour is that after you save, it will be automatically populated by the course name.
- Set the Room topic if you wish - this is used to describe what the room is for.
- Save the changes.
- Wait a few seconds for the background cron processes to run.
- Go back to the Matrix browser tab.
- CONFIRM a single course room has been created (or is now available, the room may have already existed for this course), with the room name set in step 46 (or the course name if you did not manually insert a course name).
- CONFIRM that you see the expected room membership and power levels:
- CONFIRM all users enrolled in the course are added to the course room in Matrix.
- CONFIRM that any teachers in the course have been given the Moderator power level in the room.
- CONFIRM that any managers in the course have been given the Moderator power level in the room.
- CONFIRM the site administrator who you enrolled in the course earlier has the power level of Custom 90 in the room.
- CONFIRM that all students in the course retain the Default power level.
- Go back to the the course participants page in the Moodle tab.
- Change the role of a user from teacher to student and a different student to the role of manager.
- Wait a few seconds for the background cron processes to run.
- Go back to the Matrix browser tab.
- CONFIRM that the user you changed from teacher to student had their power level changed to Default, and that the student you changed to manager's power level upgraded to Moderator.
- Go back to the the course in the Moodle tab and navigate to More > Communication.
- Change the communication provider from 'Matrix' to 'None'.
- Go back to the Matrix browser tab.
- CONFIRM that you (the teacher) have been removed from the course room (if you have one open or click on them under Historical, you will see a message like "You were removed from <room name> by Admin User.
- is a QA test written for
-
MDL-78551 Implement initial group support in Communication providers
- Closed