fixes: CNVS-12565
test plan:
- as a student take a quiz
- verify that:
- background submissions are working
- end of time / date submissions are working
- manual submsissons are working
- verify various question types are graded correctly
- verify outcomes work as previously defined
Change-Id: Ia85141559e8026993c0e270267947128a5a0466b
Reviewed-on: https://gerrit.instructure.com/33669
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Josh Simpson <jsimpson@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Jason Madsen <jmadsen@instructure.com>
this commit lets canvas remember that an LTI has this extension.
launching and using LTI for content migrations will happen
separately.
refs LOR-20
test plan:
- configure an LTI tool with XML that includes the
migration_selection extension
- the tool should show up in the tool list with the "Migration
Selection" tag.
Change-Id: I880125515a32af1b9a39fbd1787617bceae74f50
Reviewed-on: https://gerrit.instructure.com/21442
Reviewed-by: Jake Trent <jaketrent@instructure.com>
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
Reviewed-by: Brad Humphrey <brad@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Jon Willesen <jonw@instructure.com>
An external tool configured for the migration extension will
show up on a course's content import page and allow you to
select a file to migrate from the LTI launch.
fixes LOR-20
Test Plan:
* Configure an external tool that has the migration_selection
extension
* The new tool should show in the dropdown on the content
import page.
* Run some migrations through the external tool.
Change-Id: Iea16a7e32145e6799c551816e6f70a73f2a8c3d0
Reviewed-on: https://gerrit.instructure.com/21443
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jake Trent <jaketrent@instructure.com>
Reviewed-by: Brad Humphrey <brad@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Jon Willesen <jonw@instructure.com>
fixes CNVS-11250
test plan:
- as a teacher with unweighted assignment groups
go to GB2 and toggle between points/percent
- a modal should appear that warns you about this action
- the text should make sense
- it should say "a percent" or "points" depending on
your current settings
- clicking cancel or the x should close the dialog
- clicking continue should close the dialog and change the totals
- when you reload the page, totals should remain changed
- clicking the checkbox and then continue should do the same
- however the next time you click the dropdown, the modal should
not appear, even after reload
(other courses/browsers will still show this user the modal)
- as a TA or another teacher in the same class, the modal should
still appear (until you click the checkbox)
Change-Id: I465bd7b9d770077931a769efb7904c1349920a3c
Reviewed-on: https://gerrit.instructure.com/33356
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Hilary Scharton <hilary@instructure.com>
fixes CNVS-1795
It doesn't make sense to allow fill in the blank answers past a certain
length, due to the strict matching we use for grading. This commit
introduces a validated limit on the client side to limit these to 80
characters.
Test plan
- Create a fill in the blank / multiple fill in the blank question
- Add an answer longer than 80 characters.
- You should be warned that the limit is unacceptable, and the answer
should be truncated to 80 characters.
Change-Id: Ifef524f3d30d25e70cb6b12d0c89a8dc8effdc2b
Reviewed-on: https://gerrit.instructure.com/33465
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Reviewed-by: Derek DeVries <ddevries@instructure.com>
Product-Review: Josh Simpson <jsimpson@instructure.com>
fixes CNVS-12202
test plan:
* open the edit page for a discussion topic in Firefox
* click the label "Allow threaded replies"
* verify that its checkbox is toggled
* regression test checkboxes and radio buttons
Change-Id: I7bea6f82307b3834ba7f69de3d3c215386f26e26
Reviewed-on: https://gerrit.instructure.com/32847
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Trevor deHaan <tdehaan@instructure.com>
Reviewed-by: Joel Hough <joel@instructure.com>
Product-Review: Braden Anderson <banderson@instructure.com>
closes CNVS-12250
Test plan:
* Make a quiz
* Make 151 quiz submissions
(or go to the rails console and run
Setting.set("too_many_quiz_submission_versions", 1)
and then make 2 quiz submissions)
* you should get a link to "See all submissions" in the sidebar where
the quiz version selector would normally go
Change-Id: Ica1e19eb6f16ef16ea6b86fec1975509a09f3326
Reviewed-on: https://gerrit.instructure.com/33309
Reviewed-by: Simon Williams <simon@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Cameron Matheson <cameron@instructure.com>
Test plan:
use speedgrader to:
* go to a student that has multiple submissions. the submissions
drop down should exist and work (for assignments and quizzes)
* go to a student that only has one submission. the dropdown should
not be there
* go to a student that has no submissions. it should look OK.
Change-Id: I066f574ac477adcc6f2bd88012e5ae5966726230
Reviewed-on: https://gerrit.instructure.com/33242
Reviewed-by: Simon Williams <simon@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Cameron Matheson <cameron@instructure.com>
fixes CNVS-10479
test plan:
- in a course with kaltura enabled
- go to a discussion and add media
- upload a video (use right tab, not the webcam)
- save the video/discussion post
- the video should be saved properly and viewable
(this sometimes takes a minute of two)
Change-Id: I40b9174807707dd1fb41125e04705422a8711d5d
Reviewed-on: https://gerrit.instructure.com/32024
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Nathan Rogowski <nathan@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
fixes CNVS-12179
The modules page is now responsive for smaller screens. Allows people
to view view modules with proper truncation.
Test Plan
Senario: View the modules page from the homepage as a student
As a student
Given I my homepage is set to use the modules page
And I have module items with really long titles
When I go to the homepage
I should see that my module item titles have truncated titles
And when I resize my window to 970px there is a horizontal scroll bar
And the date and points do NOT disapear
Senario: View the modules page as a student
As a student
Given I have module items with really long titles
When I go to the modules page
I should see that my module item titles have truncated titles
And when I resize my window to 700px there is a horizontal scroll bar
And the date and points do NOT disapear
Senario: View the modules page from the homepage as a teacher
As a teacher
Given I my homepage is set to use the modules page
And I have module items with really long titles
When I go to the homepage
I should see that my module item titles have truncated titles
And when I resize my window to 970px there is a horizontal scroll bar
When I resize to 1000px the date column should disapear
And the points column should be visible
Senario: View the modules page as a student
As a teacher
Given I have module items with really long titles
When I go to the modules page
I should see that my module item titles have truncated titles
And when I resize my window to 700px there is a horizontal scroll bar
When I resize to 1000px the date column should disapear
And the points column should be visible
Senario: Should always show at least 300px of the title
As a teacher or student
When I view any modules page
The module item titles should always display at least 300px of the
title not matter what the screensize
Senario: Should always show at least 300px of the title
As a teacher or student
When I view any modules page
I should see that long module titles truncate
And the module title should have a hover over title attribute
Change-Id: I518b6ec2a3eae87474e781c0956e8740a905ec2a
Reviewed-on: https://gerrit.instructure.com/33204
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Matt Fairbourn <mfairbourn@instructure.com>
Product-Review: Hilary Scharton <hilary@instructure.com>
fixes CNVS-2221
test plan:
* create more than ten courses
* open calendar2
* try to select more than ten contexts
* verify that your selection is limited to ten items
Change-Id: I17c5f87a7929433613c2cb25bc7b89d858353fd2
Reviewed-on: https://gerrit.instructure.com/33266
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Zach Pendleton <zachp@instructure.com>
Product-Review: Zach Pendleton <zachp@instructure.com>
QA-Review: Zach Pendleton <zachp@instructure.com>
fixes CNVS-8931
makes a new grading standard type called "gpa scale"
only allows for grades on the GPA scale
modifies GB2 dom elements if gpa scaled
modifies rubric_assessment response to properly change grade
adds dialog when selecting gpa scale grading type
refactors grading_standard.rb to use instance methods (not class)
added related tests
test plan:
- As a Teacher, create an assignment with GPA Scaled grading type
- Enter a grading scheme like the one in grading_standard.rb/default_gpa_scheme
- Go to GB2 and grade this assignment
- grades not in the schema should be "-"
- letters that aren't in the scheme should be a "-"
- if "3.0" is in the grading standard an input of 3 should
switch to 3.0 automatically
- letters in the scheme should work upper or lower case
- setting default grade should work with the same rules
- dom elements of this assignment should have a special class
- Other assignments should work as usual in GB2
- Go to Assignment Edit Page
- when selecting Display Grade as "GPA Scale" a ? icon should pop up
- clicking this icon should open a modal with sane text
- Go to GB1
- Grading an assignment should work like GB2
- GB1 should work as expected for non GPA Scale Assignments
- Go to the SpeedGrader
- grading assignments that are GPA Scaled should work similarly to GB2
- SpeedGrader should work as expected for non GPA Scale Assignments
- Enable Rubric based grading on an assignment
- once the rubric is filled out in SpeedGrader, the correctly rounded GPA should be inserted on save
- once the rubric is filled out in Submission Edit page, the correctly rounded GPA should be inserted on save
- rubrics should work as expected for non GPA Scale Assignments
- Other areas in which GradingStandards are used should work as expected
Change-Id: Ide1ea5ca13a70116ae3535b2c8e105ece79a34c8
Reviewed-on: https://gerrit.instructure.com/29742
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Hilary Scharton <hilary@instructure.com>
Product-Review: Mike Nomitch <mnomitch@instructure.com>
fixes CNVS-11703
This commit addresses a bug where due dates and lock dates were not
triggering auto submission by javascript when a quiz was taken.
Test plan
- Create a timed quiz with no due date
- take the quiz
- it should auto submit after the time is up.
- Create a quiz with a due date
- take the quiz
- it should auto submit when the due date is reached.
- Create a quiz with a lock date
- take the quiz
- it should auto submit when the lock date is reached.
Change-Id: I8e01b11d7ad060c49538eb53ceec77c5490c368f
Reviewed-on: https://gerrit.instructure.com/32778
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jason Madsen <jmadsen@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Josh Simpson <jsimpson@instructure.com>
fixes CNVS-12127
test plan:
1. Log into a course as a teacher
2. Create a discussion
3. Navigate to the Discussion Index Page
4. Close the discussion for comment
5. Pin the discussion
6. Open the cog menu and click on "Open for Comments"
7. Open the cog menu again
8. Verify that it gives you a "Close for Comments" option
Change-Id: I26036b0380beae75c79f893149099dfd572b71dd
Reviewed-on: https://gerrit.instructure.com/33048
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Joel Hough <joel@instructure.com>
QA-Review: Trevor deHaan <tdehaan@instructure.com>
Product-Review: Clare Strong <clare@instructure.com>
fixes 12030
We are just moving where completion requirements are displayed.
Test Plan
As a Teacher and Student
When I go to the modules page
And I have module items with completion requirements
Then I should see those requirements listed under the title of the module
item
As a Teacher and Student
When I go to the modules page
And I have module item without a completion requirement
When I add a completion requirement via the edit button
Then I should see the completion requirement dynamically be added under
then title of the module item it's for
Change-Id: Iad565d37cc156014572d15597ae70e6bdb9fc297
Reviewed-on: https://gerrit.instructure.com/33042
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
QA-Review: Matt Fairbourn <mfairbourn@instructure.com>
Product-Review: Sterling Cobb <sterling@instructure.com>
When working in draft state if you go to the modules page module items
are now truncated to 98 characters. If you hover over the title of a
module item you'll see the default title attribute displaying the title
in the hover box.
fixes CNVS-11999
Test Plan
-----------
As any type of user
With draft state enabled
When I go to the modules page
And I have created a module item with a text header over 98 characters long
I should see that the module item's text header is truncated to 98
characters
And it should have an elipsise (...)
And when I hover over it with my mouse it should show the full text
And it should have the title attribute on it.
Change-Id: I8cfeaac7e0e91290f7788af8b8fced20d52d98a9
Reviewed-on: https://gerrit.instructure.com/32828
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Sterling Cobb <sterling@instructure.com>
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
QA-Review: Nathan Rogowski <nathan@instructure.com>
fixes CNVS-10878
test plan:
* enable faculty journal
* open new conversations
* compose a message
* add one recpient
* verify that new conversations has the same behavior as
old conversations in showing and hiding the faculty
journal checkbox when composing a message
* verify that the message is added to the faculty journal
if the checkbox is checked
Change-Id: Ifcb868021dcc96f368cf069e626e7a0a8a90561d
Reviewed-on: https://gerrit.instructure.com/32826
QA-Review: Braden Anderson <banderson@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jon Willesen <jonw@instructure.com>
Product-Review: Braden Anderson <banderson@instructure.com>
in order to enroll a user in a course via the API, the user
being enrolled must have an active pseudonym that works
with the course's root account.
test plan:
- an account administrator or site administrator should
receive a user-not-found (status 404) error when trying
to use the API to enroll a user in a course where the user
does not have a login in the course's root account (i.e.,
the user "belongs to a different institution"),
AND the course's root account is _not_ the default account
(since the default account trusts everybody; this allows
anyone to enroll in FFT courses)
- you should be able to create an Observer via the course's
people page and link that observer to students in the course
before creating a login for the observer.
fixes CNVS-12020
Change-Id: Ib058d9b78830347e6fadfdc86bf4325aa557c325
Reviewed-on: https://gerrit.instructure.com/32374
Reviewed-by: Brian Palmer <brianp@instructure.com>
Reviewed-by: Rob Orton <rob@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Matt Fairbourn <mfairbourn@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
fixes CNVS-9044; fixes CNVS-12110
test plan:
* open discussions as a user with moderation permissions
* click the gear menu on a pinned discussion topic
* click the "Move To" option
* select a new position for the discussion topic
* verify that the discussion topic is moved
* refresh the page
* verify that the change persists
Change-Id: If118e41066d224dbb3153113c67372ecdd2b3007
Reviewed-on: https://gerrit.instructure.com/32423
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jon Willesen <jonw@instructure.com>
QA-Review: Trevor deHaan <tdehaan@instructure.com>
Product-Review: Braden Anderson <banderson@instructure.com>
closes CNVS-4460
test-plan:
- open the RCE somewhere
- type in some text
- hit the "math equation" button
- close the equation box without inserting anything
- type in something else
- save page/assignment/whatever
- verify the content typed after aborting the math editor shows up
Change-Id: Ibb3cf0704147ba23d235156619d17ada03707595
Reviewed-on: https://gerrit.instructure.com/32569
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Derek DeVries <ddevries@instructure.com>
QA-Review: Myller de Araujo <myller@instructure.com>
Product-Review: Jason Madsen <jmadsen@instructure.com>
just use tz.format(timestamp, ...) formatting (and $.dateString and
friends). fudgeDateForProfileTimezone can take any argument to
tz.parse(), including timestamps, so we don't need to instantiate that
first. the show_time property was never used.
Change-Id: I53acbcfdeb84cc517151b1af8a4f944a5b9c7489
Reviewed-on: https://gerrit.instructure.com/32108
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Anthus Williams <awilliams@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>
QA-Review: Jacob Fugal <jacob@instructure.com>
regression testing with due dates and lock dates
fixes CNVS-12048
test plan:
- Create a quiz with a time-limit (1 minute will do)
- As a student, start taking the quiz
- only answer a few questions and then close the window
- the quiz should not be auto-submitted in the background anymore
Change-Id: Ib91286466dc83aa2ad66d7206449a0956d8c0fe8
Reviewed-on: https://gerrit.instructure.com/32430
Reviewed-by: Josh Simpson <jsimpson@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Derek DeVries <ddevries@instructure.com>
fixes CNVS-10387
test plan
- create a new assignment
* from assignment index with draft state disabled
* from assignment index with draft state enabled
- verify that 'Online submission' appears on the form instead of 'No Submission'
- edit an existing assignment
- verify that correct submission method is listed
Change-Id: I89c678d285bb36192779946c6550edb8e1f1539e
Reviewed-on: https://gerrit.instructure.com/32294
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Cameron Sutter <csutter@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Liz Abinante <labinante@instructure.com>
fixes CNVS-11738
test plan:
* create a graded discussion
* pin and unpin it on the index page
* verify that it shows up in the appropriate section
* regression test creating, editing, and viewing discussions
Change-Id: I425881f1d963cd18fcbe77823de4de0843333841
Reviewed-on: https://gerrit.instructure.com/31588
Reviewed-by: Jon Willesen <jonw@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Trevor deHaan <tdehaan@instructure.com>
Product-Review: Braden Anderson <banderson@instructure.com>
fixes CNVS-10728
test plan:
* open new conversations
* select multiple unread conversations with shift-click
(or select multiple and mark as unread)
* in the header's "More options" menu, click "mark as read"
* verify that the messages are marked as read
* reload the page
* verify that the change persists
Change-Id: I21cad13d1334f15708fbf0a7a4fdbba51304e487
Reviewed-on: https://gerrit.instructure.com/31700
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Steven Shepherd <sshepherd@instructure.com>
Reviewed-by: Jon Willesen <jonw@instructure.com>
Product-Review: Braden Anderson <banderson@instructure.com>
fixes CNVS-10801
The issue here is that discussion topics have a null position
when they're first pinned. Our sorting library doesn't handle
null positions, so we need to initialize it when we pin topics
and fix legacy data on demand.
To test legacy data handling, you can run the "BEFORE PATCH"
instructions or run this in the console:
DiscussionTopic.update_all(position: nil)
test plan:
*** BEFORE PATCH ***
* create a course with many discussions
* pin some of the discussions
*** after patch ***
* pin, unpin, and sort discussions
* refresh the page
* verify that your discussion positions persist
Change-Id: I6770c584b4af41ddf9592d39fa14b5a424c5c57d
Reviewed-on: https://gerrit.instructure.com/31589
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Trevor deHaan <tdehaan@instructure.com>
Reviewed-by: Jon Willesen <jonw@instructure.com>
Product-Review: Braden Anderson <banderson@instructure.com>
in rails 2, touch was calling save, and then inferring a name.
just explicitly set the name; it's not important to the spec
Change-Id: I91e95d90e89c8d411871aeadb0d476bce7fe6d74
Reviewed-on: https://gerrit.instructure.com/31775
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: James Williams <jamesw@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
fixes CNVS-9885
When you import or copy a course you are given the option to select the
content you want to import. The option to select this was a checkbox
but has now been changed to a radio button. This should help people who
are confused by the process or forget to check the selective content
button. Default should be selecting all content
Test Plan
1. copy a course by going to 'import content into this course' for the
course settings.
2. select the radio button 'select migration content'
3. it should still allow you to select migration content
4. select all content should be the default
5. Next..
6. Go to course settings and click on 'copy this course'
7. There should be two radio buttons now that say 'All content' and
select specific content.
8 The default should be 'All content'
Change-Id: I62c7161c621e6872048b04a5a2c0fe696adf316f
Reviewed-on: https://gerrit.instructure.com/31112
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Jeff Fox
QA-Review: Matt Fairbourn <mfairbourn@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
also eliminate some unnecessary seleniuming from a related test
test plan:
- set up an external tool such as YouTube
- add multiple links to different videos
- rename one of these links via the pencil icon
- the other module links' names should not change
- add multiple copies of the same assignment to different modules
- rename one of these via the pencil icon
- the other copies' names should be updated
fixes CNVS-6644
Change-Id: Ia6011f47d253904402267b0c8ab03837646b9503
Reviewed-on: https://gerrit.instructure.com/31567
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
Product-Review: Bracken Mosbacker <bracken@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Matt Fairbourn <mfairbourn@instructure.com>
Change-Id: I27f4334f96ced8b850a9e7b9705c74d08a09311b
Reviewed-on: https://gerrit.instructure.com/31533
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
fixes CNVS-9759
test plan:
* navigate to the user settings page, and click your
avatar;
* verify that you can click the "select a photo" view to
pick an image, or that you can drag a photo directly
onto it;
* crop the picture using the crop tool and press the
"select image" button;
* verify that the button becomes disabled and that the
dialog then closes and your new avatar is displayed.
* refresh the page and make sure the new avatar sticks.
Change-Id: Ic33cc89e66ce3bf2bed834f2aac2f37029008ec1
Reviewed-on: https://gerrit.instructure.com/26890
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Steven Shepherd <sshepherd@instructure.com>
Reviewed-by: Jon Willesen <jonw@instructure.com>
Reviewed-by: Braden Anderson <banderson@instructure.com>
Product-Review: Jon Willesen <jonw@instructure.com>