211 lines
9.0 KiB
Gherkin
211 lines
9.0 KiB
Gherkin
@shard_1 @requires_stub_lti
|
|
Feature: LMS.LTI component
|
|
As a student, I want to view LTI component in LMS.
|
|
|
|
#1
|
|
Scenario: LTI component in LMS with no launch_url is not rendered
|
|
Given the course has correct LTI credentials with registered Instructor
|
|
And the course has an LTI component with no_launch_url fields:
|
|
| open_in_a_new_page |
|
|
| False |
|
|
Then I view the LTI and error is shown
|
|
|
|
#2
|
|
Scenario: LTI component in LMS with incorrect lti_id is rendered incorrectly
|
|
Given the course has correct LTI credentials with registered Instructor
|
|
And the course has an LTI component with incorrect_lti_id fields:
|
|
| open_in_a_new_page |
|
|
| False |
|
|
Then I view the LTI but incorrect_signature warning is rendered
|
|
|
|
#3
|
|
Scenario: LTI component in LMS is rendered incorrectly
|
|
Given the course has incorrect LTI credentials
|
|
And the course has an LTI component with correct fields:
|
|
| open_in_a_new_page |
|
|
| False |
|
|
Then I view the LTI but incorrect_signature warning is rendered
|
|
|
|
#4
|
|
Scenario: LTI component in LMS is correctly rendered in new page
|
|
Given the course has correct LTI credentials with registered Instructor
|
|
And the course has an LTI component with correct fields
|
|
Then I view the LTI and it is rendered in new page
|
|
|
|
#5
|
|
Scenario: LTI component in LMS is correctly rendered in iframe
|
|
Given the course has correct LTI credentials with registered Instructor
|
|
And the course has an LTI component with correct fields:
|
|
| open_in_a_new_page |
|
|
| False |
|
|
Then I view the LTI and it is rendered in iframe
|
|
|
|
#6
|
|
Scenario: Graded LTI component in LMS is correctly works
|
|
Given the course has correct LTI credentials with registered Instructor
|
|
And the course has an LTI component with correct fields:
|
|
| open_in_a_new_page | weight | graded | has_score |
|
|
| False | 10 | True | True |
|
|
And I submit answer to LTI 1 question
|
|
And I click on the "Progress" tab
|
|
Then I see text "Problem Scores: 5/10"
|
|
And I see graph with total progress "5%"
|
|
Then I click on the "Instructor" tab
|
|
And I click on the "Student Admin" tab
|
|
And I click on the "View Gradebook" link
|
|
And I see in the gradebook table that "HW" is "50"
|
|
And I see in the gradebook table that "Total" is "5"
|
|
|
|
#7
|
|
Scenario: Graded LTI component in LMS role's masquerading correctly works
|
|
Given the course has correct LTI credentials with registered Instructor
|
|
And the course has an LTI component with correct fields:
|
|
| open_in_a_new_page | has_score |
|
|
| False | True |
|
|
And I view the LTI and it is rendered in iframe
|
|
And I see in iframe that LTI role is Instructor
|
|
And I switch to student
|
|
And I view the LTI and it is rendered in iframe
|
|
Then I see in iframe that LTI role is Student
|
|
|
|
#8
|
|
Scenario: Graded LTI component in LMS is correctly works with beta testers
|
|
Given the course has correct LTI credentials with registered BetaTester
|
|
And the course has an LTI component with correct fields:
|
|
| open_in_a_new_page | weight | graded | has_score |
|
|
| False | 10 | True | True |
|
|
And I submit answer to LTI 1 question
|
|
And I click on the "Progress" tab
|
|
Then I see text "Problem Scores: 5/10"
|
|
And I see graph with total progress "5%"
|
|
|
|
#9
|
|
Scenario: Graded LTI component in LMS is correctly works with LTI2v0 PUT callback
|
|
Given the course has correct LTI credentials with registered Instructor
|
|
And the course has an LTI component with correct fields:
|
|
| open_in_a_new_page | weight | graded | has_score |
|
|
| False | 10 | True | True |
|
|
And I submit answer to LTI 2 question
|
|
And I click on the "Progress" tab
|
|
Then I see text "Problem Scores: 8/10"
|
|
And I see graph with total progress "8%"
|
|
Then I click on the "Instructor" tab
|
|
And I click on the "Student Admin" tab
|
|
And I click on the "View Gradebook" link
|
|
And I see in the gradebook table that "HW" is "80"
|
|
And I see in the gradebook table that "Total" is "8"
|
|
And I visit the LTI component
|
|
Then I see LTI component progress with text "(8.0 / 10.0 points)"
|
|
Then I see LTI component feedback with text "This is awesome."
|
|
|
|
#10
|
|
Scenario: Graded LTI component in LMS is correctly works with LTI2v0 PUT delete callback
|
|
Given the course has correct LTI credentials with registered Instructor
|
|
And the course has an LTI component with correct fields:
|
|
| open_in_a_new_page | weight | graded | has_score |
|
|
| False | 10 | True | True |
|
|
And I submit answer to LTI 2 question
|
|
And I visit the LTI component
|
|
Then I see LTI component progress with text "(8.0 / 10.0 points)"
|
|
Then I see LTI component feedback with text "This is awesome."
|
|
And the LTI provider deletes my grade and feedback
|
|
And I visit the LTI component (have to reload)
|
|
Then I see LTI component progress with text "(10.0 points possible)"
|
|
Then in the LTI component I do not see feedback
|
|
And I click on the "Progress" tab
|
|
Then I see text "Problem Scores: 0/10"
|
|
And I see graph with total progress "0%"
|
|
Then I click on the "Instructor" tab
|
|
And I click on the "Student Admin" tab
|
|
And I click on the "View Gradebook" link
|
|
And I see in the gradebook table that "HW" is "0"
|
|
And I see in the gradebook table that "Total" is "0"
|
|
|
|
#11
|
|
Scenario: LTI component that set to hide_launch and open_in_a_new_page shows no button
|
|
Given the course has correct LTI credentials with registered Instructor
|
|
And the course has an LTI component with correct fields:
|
|
| open_in_a_new_page | hide_launch |
|
|
| False | True |
|
|
Then in the LTI component I do not see a launch button
|
|
Then I see LTI component module title with text "LTI (EXTERNAL RESOURCE)"
|
|
|
|
#12
|
|
Scenario: LTI component that set to hide_launch and not open_in_a_new_page shows no iframe
|
|
Given the course has correct LTI credentials with registered Instructor
|
|
And the course has an LTI component with correct fields:
|
|
| open_in_a_new_page | hide_launch |
|
|
| True | True |
|
|
Then in the LTI component I do not see an provider iframe
|
|
Then I see LTI component module title with text "LTI (EXTERNAL RESOURCE)"
|
|
|
|
#13
|
|
Scenario: LTI component button text is correctly displayed
|
|
Given the course has correct LTI credentials with registered Instructor
|
|
And the course has an LTI component with correct fields:
|
|
| button_text |
|
|
| Launch Application |
|
|
Then I see LTI component button with text "Launch Application"
|
|
|
|
#14
|
|
Scenario: LTI component description is correctly displayed
|
|
Given the course has correct LTI credentials with registered Instructor
|
|
And the course has an LTI component with correct fields:
|
|
| description |
|
|
| Application description |
|
|
Then I see LTI component description with text "Application description"
|
|
|
|
#15
|
|
Scenario: LTI component requests permission for username and is rejected
|
|
Given the course has correct LTI credentials with registered Instructor
|
|
And the course has an LTI component with correct fields:
|
|
| ask_to_send_username |
|
|
| True |
|
|
Then I view the permission alert
|
|
Then I reject the permission alert and do not view the LTI
|
|
|
|
#16
|
|
Scenario: LTI component requests permission for username and displays LTI when accepted
|
|
Given the course has correct LTI credentials with registered Instructor
|
|
And the course has an LTI component with correct fields:
|
|
| ask_to_send_username |
|
|
| True |
|
|
Then I view the permission alert
|
|
Then I accept the permission alert and view the LTI
|
|
|
|
#17
|
|
Scenario: LTI component requests permission for email and is rejected
|
|
Given the course has correct LTI credentials with registered Instructor
|
|
And the course has an LTI component with correct fields:
|
|
| ask_to_send_email |
|
|
| True |
|
|
Then I view the permission alert
|
|
Then I reject the permission alert and do not view the LTI
|
|
|
|
#18
|
|
Scenario: LTI component requests permission for email and displays LTI when accepted
|
|
Given the course has correct LTI credentials with registered Instructor
|
|
And the course has an LTI component with correct fields:
|
|
| ask_to_send_email |
|
|
| True |
|
|
Then I view the permission alert
|
|
Then I accept the permission alert and view the LTI
|
|
|
|
#19
|
|
Scenario: LTI component requests permission for email and username and is rejected
|
|
Given the course has correct LTI credentials with registered Instructor
|
|
And the course has an LTI component with correct fields:
|
|
| ask_to_send_email | ask_to_send_username |
|
|
| True | True |
|
|
Then I view the permission alert
|
|
Then I reject the permission alert and do not view the LTI
|
|
|
|
#20
|
|
Scenario: LTI component requests permission for email and username and displays LTI when accepted
|
|
Given the course has correct LTI credentials with registered Instructor
|
|
And the course has an LTI component with correct fields:
|
|
| ask_to_send_email | ask_to_send_username |
|
|
| True | True |
|
|
Then I view the permission alert
|
|
Then I accept the permission alert and view the LTI
|