Test Plan:
- Jenkins passes
- You can once again view previous submission in A2 student view
Fixes COMMS-2279
flag = assignments_2
Change-Id: Ie0da4fb3e7725dba37dd8e2d95b7a2cb89298e62
Reviewed-on: https://gerrit.instructure.com/204217
Tested-by: Jenkins
Product-Review: Landon Gilbert-Bland <lbland@instructure.com>
Reviewed-by: Steven Burnett <sburnett@instructure.com>
QA-Review: Michelle Simmons <misimmons@instructure.com>
fixes GRADE-2309
test plan:
1. Visit New Gradebook
2. Set focus on any assignment column header link
3. Verify the focus indicator is visible
Change-Id: I59ba7ed979b5f0aed06b8c3618d0cddd7ef8d43b
Reviewed-on: https://gerrit.instructure.com/204250
Tested-by: Jenkins
Reviewed-by: Adrian Packel <apackel@instructure.com>
Reviewed-by: Keith Garner <kgarner@instructure.com>
QA-Review: Jeremy Neander <jneander@instructure.com>
Product-Review: Jonathan Fenton <jfenton@instructure.com>
we had a rule that increased the top/bottom margins for h3 when
contained within content created by the user with the rce. Deleting
this rule fixes this ticket, and I can't find a reason for why the h3
would be singled out for special spacing.
closes COREFE-197
test plan:
- using the rce html edit mode, add an h3 with some text around it
> expect 6px margins above and below, not 24px
Change-Id: I9332c5320ea87d37d21bf84ca7a06c3e2797ea3e
Reviewed-on: https://gerrit.instructure.com/204191
Reviewed-by: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
Tested-by: Jenkins
Product-Review: Ed Schiebel <eschiebel@instructure.com>
closes ADMIN-2795
flag: none
Test plan
- As a teacher, submit an assignment
for a student with a submitted_at date
that will override the submission time
- Do this with other grader types also
- Verify that you can't submit for a student
who shouldn't have access to the assignment
(excused, lock dates, grading periods, etc)
- Verify you can't change the submission
time as the student
Change-Id: I86b7e6d3b03c9fe9b1c15908a3d0a5f88d5202f5
Reviewed-on: https://gerrit.instructure.com/167638
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Anju Reddy <areddy@instructure.com>
Product-Review: Ethan Knapp <eknapp@instructure.com>
Closes PLAT-3858
Test Plan:
- Make a get request to /api/v1/courses/:id/files
- Verify an asset accessed event is created
- Make a get request to /api/v1/users/id/files
- Verify an asset accessed event is created
- Use one of the file download urls from the
to download a file
- Validate an asset accessed event is created
with and without a Canvas session
Change-Id: I3551ad683ed3a6d328a166482206defddd9bfef1
Reviewed-on: https://gerrit.instructure.com/203903
QA-Review: Tucker Mcknight <tmcknight@instructure.com>
Tested-by: Jenkins
Product-Review: Oxana Jurosevic
Reviewed-by: Marc Phillips <mphillips@instructure.com>
Event was not added as an observer to the model for
live events to trigger.
closes PLAT-4639
Test Plan:
- create an outcome result and see that it gets
put on the stream
Change-Id: If81565ce9498a03f3c1967759edcc2db9b2a24a5
Reviewed-on: https://gerrit.instructure.com/204273
Tested-by: Jenkins
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: Oxana Jurosevic
fixes: CORE-3225
this is to work around this issue:
https://instructure.slack.com/archives/C02945PB7/p1565022713106300
Test plan:
* in edge 42, load the assignment show page
* you should not get an error in the console like:
HTTP401: DENIED - The requested resource requires user authentication.
(Fetch)GET - https://<canvas>/api/v1/courses/11/lti_apps
/launch_definitions?placements%5B%5D=assignment_edit
Change-Id: I2d5d1a031b79a5ec1ea35675a00795cc284fbb6a
Reviewed-on: https://gerrit.instructure.com/203850
Tested-by: Jenkins
QA-Review: Ryan Shaw <ryan@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
Reviewed-by: Marc Phillips <mphillips@instructure.com>
Fixes PLAT-4681
Test Plan:
-set up an lti key
-hit /login/oauth2/auth?client_id=tool_id&response_type=code
&state=YYY&redirect_uri=some_url&scope=url:GET
-verify that redirect was redirected to with error type and description
Change-Id: I724f503e31edd449f29e3a894d492a11cca61279
Reviewed-on: https://gerrit.instructure.com/203250
Tested-by: Jenkins
Reviewed-by: Marc Phillips <mphillips@instructure.com>
QA-Review: Tucker Mcknight <tmcknight@instructure.com>
Product-Review: Jesse Poulos <jpoulos@instructure.com>
Also includes some small fixes to this deterioriating codebase
Test Plan:
- Given a quiz with more than one student
- And a quiz with 3 questions, each worth 1.2 points (or similar)
- Take the quiz with each student, getting some right and some wrong
each time
- Then view the statistics page in a locale with a different decimal
separator
- See the separator appear where needed
Closes QO-448
Change-Id: Ie0fceb3ff827bcc68aff9c6e60292768d43410b3
Reviewed-on: https://gerrit.instructure.com/204141
Reviewed-by: Bryan Petty <bpetty@instructure.com>
Tested-by: Jenkins
QA-Review: David Tan <dtan@instructure.com>
Product-Review: Kevin Dougherty III <jdougherty@instructure.com>
fixes ADMIN-2577
flag: Accessible Sidebar Menu
test plan:
- Check left side menu in Courses with regular mode and High Contrast
first, to make sure nothing changed or broke.
- Enable the 'Accessible Sidebar Menu' release flag
- As teacher or admin:
- Check criteria #1-6 from the jira ticket to ensure nothing missed
- Check High Contrast also, ensure it works correctly
- Disable 'Announcements' and ensure the eye-off icon doesn't wrap
weirdly and is all on one line
- Unused nav items also get icon and slightly different tooltip
- Tooltips for unused & hidden nav items show when navigated to with
keyboard
- Check student view also, to verify those items don't show
- As admin:
- Go edit the theme, and check that the theme preview for the nav
works (it required an adjustment for extra padding) so
the new outlining wasn't cut off)
Change-Id: I778a155bce0bb32117abf8ee5d7fe327a7fb0b34
Reviewed-on: https://gerrit.instructure.com/199404
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Daniel Sasaki <dsasaki@instructure.com>
Product-Review: Daniel Sasaki <dsasaki@instructure.com>
we need to be able to save, clear, and display text entry
drafts in A2 text entry assignments
note: this does not yet interact with the pizza tracker
Test Plan:
* as a teacher, create a text entry assignment
* as a student in A2, navigate to the assignment
* with no draft, you should navigate to the Start Entry page
* click Start Entry
** the RCE should load
** confirm in a rails console that the SubmissionDraft is
now an empty string
** confirm on refresh that the page still loads the RCE
* type some text and refresh without saving
** confirm the text is not saved
* type some text and click Save
** confirm the text persists on refresh
** confirm in a rails console that the SubmissionDraft has
saved the text
* click Cancel
** it should navigate to the Start Entry page
** confirm on refresh that the Start Entry page still loads
** confirm in a rails console that the SubmissionDraft body is
null
fixes COMMS-2264
fixes COMMS-2266
flag: assignments_2
Change-Id: Ia6232b8b378f6bd7a273fd81ef9ce8c4eac7e9f1
Reviewed-on: https://gerrit.instructure.com/204094
Reviewed-by: Michelle Simmons <misimmons@instructure.com>
Reviewed-by: Landon Gilbert-Bland <lbland@instructure.com>
Tested-by: Jenkins
QA-Review: Matthew Lemon <mlemon@instructure.com>
Product-Review: Ryan Norton <rnorton@instructure.com>
fixes GRADE-2288
Test plan:
- Have a course with New Gradebook and Post Policies enabled
- Create an anonymous assignment
- Adjudicate
- Post grades
- Check that the wording of the anonymous-assignment alert in the tray
matches what's in the acceptance criteria for the ticket
- Hide grades
- Check that the wording of the anonymous-assignment alert in the tray
matches what's in the acceptance criteria for the ticket
Change-Id: I04faafe3c3f96336e88433175dcfe619de3db7f7
Reviewed-on: https://gerrit.instructure.com/204149
Tested-by: Jenkins
Reviewed-by: Jeremy Neander <jneander@instructure.com>
Reviewed-by: Derek Bender <djbender@instructure.com>
QA-Review: Adrian Packel <apackel@instructure.com>
Product-Review: Jonathan Fenton <jfenton@instructure.com>
fixes COMMS-2230
flags assignments 2
Test Plan:
* Create a course and add a student
* On the course install an LTI tool with a homework_submissions placment
* Create an assignment for the course with an online upload assignment
type
* Masquerade as the student and compose a submission draft using both
LTI and regular files
* Submit the draft and view the submission.
Change-Id: I5935da3f1f728ce7551aad617e00adf71e85a7f8
Reviewed-on: https://gerrit.instructure.com/203634
Reviewed-by: Landon Gilbert-Bland <lbland@instructure.com>
Reviewed-by: Steven Burnett <sburnett@instructure.com>
Tested-by: Jenkins
QA-Review: Ben Nelson <bnelson@instructure.com>
Product-Review: Matthew Lemon <mlemon@instructure.com>
test plan
* once this is merged, this will make it so all those annoying errors
stop getting posted in #canvas-builds
Change-Id: I1f4c356d30e1f57fc3cb13c788f479f4d551866b
Reviewed-on: https://gerrit.instructure.com/204171
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Clay Diffrient <cdiffrient@instructure.com>
Bonus: found a missing number in the student details on the show page
Test Plan:
- Given a course with a student
- Made a quiz with decimal points (say 5.5)
- Take the quiz as a student
- Switch to French (or similar) and view the moderate page
- See points properly localized
Closes QO-445
Change-Id: I3dc797ecbdd22af8478fd847924759f4554a40e0
Reviewed-on: https://gerrit.instructure.com/203900
Tested-by: Jenkins
Reviewed-by: Jim Simon <jsimon@instructure.com>
QA-Review: Jonathan Holt <jholt@instructure.com>
Product-Review: Kevin Dougherty III <jdougherty@instructure.com>
Fixes PLAT-4600
Test Plan:
-create an LTI key verify there are not duplicate placements
when editin json
-install tool
-verify tool is available in placements
Change-Id: I4593a3bd5ecacd24012123af54612308572281ce
Reviewed-on: https://gerrit.instructure.com/204127
Reviewed-by: Marc Phillips <mphillips@instructure.com>
Tested-by: Jenkins
QA-Review: Marc Phillips <mphillips@instructure.com>
Product-Review: Jesse Poulos <jpoulos@instructure.com>
Closes PLAT-4693
Test Plan:
- Add a 'default_assignment_tool_url' value to your root
account settings hash
- Navigate to the new assignments page and validate
the value you set is in the JS ENV
Change-Id: I427172f2e011d3de11c8dc10fdea7cda020c8a53
Reviewed-on: https://gerrit.instructure.com/204059
Tested-by: Jenkins
Reviewed-by: Marc Phillips <mphillips@instructure.com>
QA-Review: Marc Phillips <mphillips@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
Stub the aws kinsesis stream if
STUBBED_KINESIS_STREAM is set in the ENV.
This will print the event out to terminal so you
can see what events are being submitted.
refs PLAT-4639
Test Plan:
- live events doesn't break when configured
Change-Id: Ic182551e3304c9c6241091b7ae9988703093dfb2
Reviewed-on: https://gerrit.instructure.com/204138
Tested-by: Jenkins
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: Marc Phillips <mphillips@instructure.com>
test plan:
- the expand/contract buttons for each group, and also the
kebab menus and menu items, should be identified by screen
readers as buttons rather than links to '#'
fixes ADMIN-2789
Change-Id: I8adcb14ce439d2288277f0259b45e1926a578083
Reviewed-on: https://gerrit.instructure.com/203542
Tested-by: Jenkins
Reviewed-by: Mysti Lilla <mysti@instructure.com>
QA-Review: Daniel Sasaki <dsasaki@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
closes: CORE-3175
based on our browser support documentation
(https://community.canvaslms.com/docs/doc-10720) "On August 3, 2019,
Internet Explorer 11 will no longer be supported as a Canvas browser."
and since any code being merged to master now won't hit prod until after
august 3rd, we can safely drop IE11 support now
test plan:
* look at the code generated by webpack
* you should see things like "class" and arrow functions "() => {}"
* if you go to canvas in IE 11, it should not work
* if you go to canvas in the next oldest browsers we support (which
would probably be Edge 42 or Safari 11) it should still work the same
as it did before
Change-Id: Ifc7f64902a333fd0f662ff6a68eb8f4353f01130
Reviewed-on: https://gerrit.instructure.com/197827
Tested-by: Jenkins
Reviewed-by: Steven Burnett <sburnett@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
test plan:
* with or without the “drop IE 11” commit applied (which stops
transpiling async/await with regenerator-runtime)
yarn jspec-watch app/coffeescripts/ember/screenreader_gradebook/tests/controllers/screenreader_gradebook.spec.js
Should pass
Change-Id: I331bae1291ad74b193c6a0c910be77057bbc470d
Reviewed-on: https://gerrit.instructure.com/204153
Tested-by: Jenkins
Reviewed-by: Steven Burnett <sburnett@instructure.com>
QA-Review: Steven Burnett <sburnett@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
On the discussions index page, each discussion has two new menu items
for direct sharing.
flag: direct_share
closes: ADMIN-2783
test plan:
- new menu items are only there when the feature flag is on
- new menu items are only there when the user can actually manage
discussions, not just create or moderate.
Change-Id: I8769cbd99f506663157c3efe470d80aa7eac5b34
Reviewed-on: https://gerrit.instructure.com/203038
Tested-by: Jenkins
Reviewed-by: Mysti Lilla <mysti@instructure.com>
QA-Review: Anju Reddy <areddy@instructure.com>
Product-Review: Jon Willesen <jonw+gerrit@instructure.com>
For group assignments that aren't set to grade students individually,
don't require a student group to be selected, since SpeedGrader will
show a single entry for each group. (For group assignments that *do*
grade students individually, we still require and apply the filter.)
fixes GRADE-2352
Test plan:
- Enable the "Filter SpeedGrader by Student Group" feature in the root
account
- Have a course with new gradebook and the above-derived course setting
enabled, and at least one group set w/ groups
- Set up three assignments:
- A plain old invidiually-graded assignment (A1)
- A group assignment that does *not* grade students individually (A2)
- A group assignment that *does* grade students individually (A3)
- In new Gradebook:
- For each assignment above, check the behavior of the SpeedGrader
link in the submission tray for a student in that assignment:
- A1 and A3 should disable the link unless you are filtering by a
student group
- A2 should always have the link enabled
- On the assignment view page, check the behavior of the SpeedGrader
link for each assignment:
- A1 and A3 should require a student group to be selected before the
link is enabled
- A2 should always have the link enabled, and not bother showing the
group dropdown
- On loading SpeedGrader for an assignment:
- A1 and A3 should only show students for the selected group, as you'd
expect
- A2 should show the all the groups in the assignment's selected
group set as individual "students", while showing separate
individual entries for any students not assigned to any of those
groups
Change-Id: Id797040518f3596ace5c05e6ed189fad19ffef78
Reviewed-on: https://gerrit.instructure.com/203502
Tested-by: Jenkins
Reviewed-by: Jeremy Neander <jneander@instructure.com>
Reviewed-by: Gary Mei <gmei@instructure.com>
QA-Review: Gary Mei <gmei@instructure.com>
Product-Review: Jonathan Fenton <jfenton@instructure.com>
fixes COMMS-2276
Test Plan:
- in A2 create a mix of read and unread submission comments
- notice the rows all align
Change-Id: I04c58616b7e3bef872dc93da6a7cab0da0e96297
Reviewed-on: https://gerrit.instructure.com/204123
Reviewed-by: Landon Gilbert-Bland <lbland@instructure.com>
QA-Review: Landon Gilbert-Bland <lbland@instructure.com>
Tested-by: Jenkins
Product-Review: Steven Burnett <sburnett@instructure.com>
My previous attempt to get this to work with or without the “Drop ie 11”
commit applied fixed one thing but with the “drop ie 11” commit applied
it would fail on another thing. This avoids the issue altogether by just
not using a real es `class` as the parent class
Test plan:
* with “drop IE 11” applied:
bin/rspec ./spec/selenium/quizzes/quizzes_question_creation_spec.rb:66
Should pass
Change-Id: Iefb92d103ff0f6d4993fd73bb3f3b41eb3e9d1e3
Reviewed-on: https://gerrit.instructure.com/204096
Tested-by: Jenkins
Product-Review: Ryan Shaw <ryan@instructure.com>
Reviewed-by: Steven Burnett <sburnett@instructure.com>
QA-Review: Steven Burnett <sburnett@instructure.com>
when creating a new link, only use text that's actually selected
to populate the Text field of the create link dialog.
when editing a link, pull all the link text to populate the dialog
closes COREFE-6
test plan:
- load a page with the RCE
- type in some text, leave the text caret adjacent to the text
- clink Links > External Links
> expect the Insert Link modal's Text field to be empty
- create a link
- with the text caret adjacent or w/in the link, click
Links > Edit link
> expect the Text field to be populated with the link's text
- type some more text, select it, and click Links > External Links
> expect the Text field to be populated with the selected text
- from Documents > Course Documents, add a link to a course document
- put the text cursor in or adjacent to the link
- click on the popup Options button
> expect the Text field in the Link Options tray to be populated
with the link text
Change-Id: Ice7a9500befaaf7957982387ba5ea8a0223f2b47
Reviewed-on: https://gerrit.instructure.com/204002
Reviewed-by: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
Tested-by: Jenkins
Product-Review: Ed Schiebel <eschiebel@instructure.com>
The external tools can do all sorts of things. They might pass their
submissions back to canvas or not, have their own commenting system,
their own retry system, etc. Talking to product, we agreed that these
should not be rendered inside of the A2 student view, and stick to the
A1 behaivor
Test Plan:
- Jenins passes
- With the A2 feature flag turned on:
* LTI loads when we have an assignment of the external_tool type
* A2 loads for all other assignment types
closes COMMS-2274
flag = assignments_2
Change-Id: I7f9f3e5f14f7836214b9d2680a90c6cc82740d2e
Reviewed-on: https://gerrit.instructure.com/204072
Reviewed-by: Steven Burnett <sburnett@instructure.com>
Tested-by: Jenkins
QA-Review: Matthew Lemon <mlemon@instructure.com>
Product-Review: Landon Gilbert-Bland <lbland@instructure.com>
fixes COMMS-2273
Test Plan:
- Tests pass
- mark a submission as read and query a submission comment for its read
field
- mark a submission comment as read and query for its read field
- notice both return read for the user and false for another user
- celebrate
Change-Id: I9dd9a4e919e7e60f13b1b18ef56da61cbb9055f6
Reviewed-on: https://gerrit.instructure.com/203936
Reviewed-by: Landon Gilbert-Bland <lbland@instructure.com>
QA-Review: Landon Gilbert-Bland <lbland@instructure.com>
Tested-by: Jenkins
Product-Review: Steven Burnett <sburnett@instructure.com>
test plan:
* a link to a wiki page with a "+" in the title
shouldn't cause a warning in the course link validator
closes #ADMIN-2801
Change-Id: I1ac5843c40b4c7067e5fc7a6eb9b7ccd5a99e220
Reviewed-on: https://gerrit.instructure.com/203727
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Jeremy Stanley <jeremy@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
Test plan:
* with or without the “drop IE 11” commit applied
(Which stops using babel to transpile `class` syntax)
* bin/rspec ./spec/selenium/people_settings_spec.rb:144
should not fail with:
TypeError: Class constructor TokenInput cannot be invoked without 'new'
Or to test manually:
* go to /courses/1/users
* click the 3dots on a student row
* click “edit sections”
* it should not throw that ^ js error
Change-Id: I1846b968fbfcb9043fe1040a098499450887510b
Reviewed-on: https://gerrit.instructure.com/204060
Reviewed-by: Steven Burnett <sburnett@instructure.com>
QA-Review: Steven Burnett <sburnett@instructure.com>
Tested-by: Jenkins
Product-Review: Ryan Shaw <ryan@instructure.com>
This was to get it to work when the “Drop IE 11” commit is applied.
Without changing it, it would die on
bin/rspec ./spec/selenium/discussions/discussions_threaded_spec.rb:146
With:
TypeError: Class constructor blah cannot be invoked without 'new'
The one thing I had to change manually was to handle
setting this.view in a way that that it can be accessed in the parent
constructor
Test plan:
* bin/rspec ./spec/selenium/discussions/discussions_threaded_spec.rb:146
Should work with or without the “Drop IE 11” commit applied
Or to test manually:
* go to /courses/x/discussions/y
* edit a discussion reply
* it should work
Change-Id: I835d9b251ab31455f93dc8d09d47edbbfa3dcb97
Reviewed-on: https://gerrit.instructure.com/204017
Tested-by: Jenkins
Reviewed-by: Steven Burnett <sburnett@instructure.com>
QA-Review: Steven Burnett <sburnett@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
This is the first step in a coffee to js conversion and is so the diff
On the actual conversion doesn’t show up as a deleted file and a new
file. It will not pass Jenkins since it is a js file with coffee script
Syntax and that is expected
Change-Id: Ieec30e98bc15c8c650be0df7c02b03fa6a1b34d3
Reviewed-on: https://gerrit.instructure.com/204016
Reviewed-by: Steven Burnett <sburnett@instructure.com>
QA-Review: Steven Burnett <sburnett@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
Tested-by: Ryan Shaw <ryan@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
closes GRADE-2289
Test plan:
Course copy:
- Have a course with New Gradebook and post policies enabled
- Create the following assignments/post policies:
- A Manual posting policy for the course overall
- An auto-posted assignment (A1)
- A manually-posted assignment (A2)
- An anonymous assignment (A3)
- A moderated assignment (A4)
- From the course's Settings screen, make a copy of the course
- Enable New Gradebook for the new course if needed
- Check that the newly-created copy has retained the overall post policy
for the course and the individual post policies for the assignments
(i.e., A1 should be auto-posted and A2-A4 should be manually-posted)
- Note that A4 should be manually-posted, even if you had previously
released grades and set the policy to automatic (course copy does
not carry over the grade-publishing status)
Blueprint:
- Enable the "Blueprint Course" account feature option
- Create a new course with the same assignment/post policy loadout as
the course in the above step
- In the Settings menu, check the "Blueprint Course" checkbox for the
course
- Set up another course using this one as a blueprint
- Change around some of the assignment post policies in the blueprint
- Make sure these register as unsynced changes for the assignments,
and check that syncing carries them over
- Change the course post policy for the blueprint
- Make sure that syncing the course carries the new post policy over
(it should not apply the new course policy to any assignments, only
set it on the course level)
- To have the policy transfer over, you'll need to make sure you
include course settings in the sync
Change-Id: I1fec3d5e88a8aa333ba511780d3934e98a4d7c2c
Reviewed-on: https://gerrit.instructure.com/203194
Tested-by: Jenkins
Reviewed-by: Rob Orton <rob@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Gary Mei <gmei@instructure.com>
Product-Review: Keith Garner <kgarner@instructure.com>
fixes GRADE-2149
Test Plan
- Set a late policy with a fractional value. Example: 2.35% per day.
- Create an assignment with a due 1 day ago and points possible of 10.
- As a student, submit to the assignment.
- Grade the student. Note the grade after the late policy has applied.
- Edit the assignment and add an override for a *different* student.
- Check the first student's grades again. It should not have changed
from the value previously noted.
Change-Id: I0206847439d94042f27782d825669bf5be1e4c86
Reviewed-on: https://gerrit.instructure.com/202222
Tested-by: Jenkins
Reviewed-by: Jeremy Neander <jneander@instructure.com>
Reviewed-by: Keith Garner <kgarner@instructure.com>
QA-Review: Gary Mei <gmei@instructure.com>
Product-Review: Keith Garner <kgarner@instructure.com>
When New Gradebook is sorted by total grade, filtering by student
group now works.
fixes GRADE-2276
Test Plan
- Create at least 2 groups.
- Add some students to one group, and some students to another group.
- Navigate to the New Gradebook.
- Sort by Total Grade.
- Filter by student group.
- Verify that only students in the selected student group appear.
Change-Id: Ib690569b679956bff60d7bf801edf906fdf0a76e
Reviewed-on: https://gerrit.instructure.com/203373
Tested-by: Jenkins
Reviewed-by: Adrian Packel <apackel@instructure.com>
Reviewed-by: Jeremy Neander <jneander@instructure.com>
QA-Review: Gary Mei <gmei@instructure.com>
Product-Review: Keith Garner <kgarner@instructure.com>
we need to allow setting a 'body' in the submission draft
mutation in graphql for text entry assignments
Test Plan:
* create an assignment as a teacher
* add a student to that assignment
* as a student, navigate to /graphiql
* run the following mutation
** set the submissionId to whatever your latest submissionId is
```
mutation {
createSubmissionDraft(input: {submissionId: "1", attempt: 1, body: "stuff"}) {
errors {
message
attribute
}
submissionDraft {
_id
body
}
}
}
```
* you should get a result like:
```
{
"data": {
"createSubmissionDraft": {
"errors": null,
"submissionDraft": {
"_id": "42"
"body": "stuff",
}
}
}
}
```
* in the rails console, confirm the data (especially the body)
is correct: SubmissionDraft.find(<id>)
fixes COMMS-2265
Change-Id: I6ba6a67e3a592e295c62365ca7fa13250d05e837
Reviewed-on: https://gerrit.instructure.com/203731
QA-Review: Matthew Lemon <mlemon@instructure.com>
Reviewed-by: Matthew Lemon <mlemon@instructure.com>
Tested-by: Jenkins
Product-Review: Ryan Norton <rnorton@instructure.com>
we need to add a 'body' field to the submission draft type
in graphql to allow us to store text entry drafts going forward.
Test Plan:
* run the db migration to add body to submission draft:
** bundle exec rake db:migrate:up VERSION=20190801215707
* create an assignment as a teacher
* add a student to that assignment
* run the following in the /graphiql endpoint to locate the
submissions for that assignment
```query MyQuery {
assignment(id: "1") {
submissionsConnection(filter: {states: [unsubmitted, submitted, graded, pending_review]}) {
nodes {
_id
submissionDraft {
body
}
}
}
}
}```
** you should see a submission with a null submission draft
* in the rails console, you will need to add a submission
draft with a body to that submission
** sub = Submission.find(1) // or whatever your submission ID is
** draft = SubmissionDraft.create!(submission: sub,
submission_attempt = sub.attempt + 1)
** draft.body = 'some text'
** draft.save!
** sub.submission_drafts = [draft]
** sub.save!
* run the query in graphql again, and you should see something
like:
```
{
"data": {
"assignment": {
"submissionsConnection": {
"nodes": [
{
"_id": "31",
"submissionDraft": {
"body": "some text"
}
}
]
}
}
}
}
```
fixes COMMS-2263
Change-Id: I62877ac43727f02191c84a98e2609bd8f9987733
Reviewed-on: https://gerrit.instructure.com/203674
Reviewed-by: Steven Burnett <sburnett@instructure.com>
Reviewed-by: Landon Gilbert-Bland <lbland@instructure.com>
Reviewed-by: Cameron Matheson <cameron@instructure.com>
Tested-by: Jenkins
QA-Review: Matthew Lemon <mlemon@instructure.com>
Product-Review: Ryan Norton <rnorton@instructure.com>
Replace Select with CanvasSelect
Replace legacy TextInput with the new TextInput
fixes ADMIN-2771
test plan:
- go to account courses page, /accounts/self
- click the "+Course" button
> expect the 2 TextInputs to accept input
> expect the subaccount and term selects to work as expected
> expect some nice screenreader messages as you interact with the
selects
> expect the course to be created with the right data
when clicking on the "Add Course" button
- try it again, but do something to make it fail (I set a breakpoint
at courses_controller.rb line 791 and set @course=nil)
> expect to get an error flash message
- click on the "details" button
> expect the details popup to be above the Modal's overlay and you
can dismiss it.
Change-Id: I8612b086a8812660c82c9d243746ed211deb5a59
Reviewed-on: https://gerrit.instructure.com/202575
Tested-by: Jenkins
Reviewed-by: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
refs: MBL-12809
Test Plan:
- Create an assignment with a submission that needs grading, and
a submission that is already graded
- request submissions for the assignment through gql using the
gradingStatus filter for needs_grading
- It should return the submission requiring grading and
not the other one
Change-Id: I2ac6b7e95819122d085898255a352a002aefa9f7
Reviewed-on: https://gerrit.instructure.com/202156
Tested-by: Jenkins
Reviewed-by: Cameron Matheson <cameron@instructure.com>
QA-Review: Matt Sessions <msessions@instructure.com>
Product-Review: Matt Sessions <msessions@instructure.com>
We made this change in @instructure/ui-themeable in g/203714
but that is for the current master on instUI 6, we need it now even
though we are still on instUI 5 so this will back port it in so we can
use it now.
Test plan:
* Things that use `themeable` should work both with and without the
“Drop ie11” commit applied.
Specifically:
bin/rspec ./spec/selenium/dashboard/planner/student_planner_assignments_spec.rb:88
Should not fail with
TypeError: Class constructor Yr cannot be invoked without 'new'
Change-Id: I7ef8ef9eda1057badabbb08fcdd6875ad8064e89
Reviewed-on: https://gerrit.instructure.com/203950
Reviewed-by: Steven Burnett <sburnett@instructure.com>
QA-Review: Steven Burnett <sburnett@instructure.com>
Tested-by: Jenkins
Product-Review: Ryan Shaw <ryan@instructure.com>
fixes GRADE-2064
test plan:
A. Setup
1. Create a course
2. Enroll 11 students
3. Ensure two assignment groups exist (A and B)
4. Keep the first assignment group empty (A)
5. Create 100 assignments in group B
* all worth 10 points
6. Ensure the assignment groups are ordered A, then B
B. Verify
1. Visit Default Gradebook
2. Grade each student for at least one assignment
3. Visit Screenreader Gradebook
4. For each student:
a. Select the student in the dropdown menu
b. Verify the student's course grade is calculated
Change-Id: Icc880e3c83a9fda549664be7083a551a018541c5
Reviewed-on: https://gerrit.instructure.com/203617
Tested-by: Jenkins
Reviewed-by: Adrian Packel <apackel@instructure.com>
Reviewed-by: Gary Mei <gmei@instructure.com>
QA-Review: Jeremy Neander <jneander@instructure.com>
Product-Review: Jonathan Fenton <jfenton@instructure.com>