closes QUIZ-6539
Test Plan:
- Verify the Feature Flag "Quiz LTI Plugin" does not appear in Canvas
- Verify NQ is still functional after normal provisioning
Change-Id: I18f7cf81b88cc433add09fccf1daa8a8c53e71dc
Reviewed-on: https://gerrit.instructure.com/207653
Tested-by: Jenkins
Reviewed-by: Aaron Griffin <agriffin@instructure.com>
QA-Review: Alex Slaughter <aslaughter@instructure.com>
Product-Review: Kevin Dougherty III <jdougherty@instructure.com>
This updates the Quiz submission notifications to respect
submission.posted? (instead of assignment.muted?) if the new
gradebook is enabled.
fixes GRADE-2407
test plan:
- Have a course set to use old gradebook with a student
- Create an old quiz (An autograded one would do nicely.)
- Turn on new gradebook
- Enable a manual post policy for the quiz
- as the student, take the quiz
- After grading occurs, note that no notifications went out to the
student
Change-Id: Iaf9badd443f32d954d7c9e7a6dd2a16cc79bf416
Reviewed-on: https://gerrit.instructure.com/208285
Reviewed-by: Derek Bender <djbender@instructure.com>
Reviewed-by: Jeremy Neander <jneander@instructure.com>
Tested-by: Jenkins
QA-Review: Jeremy Neander <jneander@instructure.com>
Product-Review: Keith Garner <kgarner@instructure.com>
there was a mix of left and right. the inst design team has
standardized on the upper-right corener, regardless of which
edge of the window the tray opens from.
closes COREFE-231
test plan:
- load a page with the rce
- open Links > Course Links
- open Images > Course Images
- open Documents > Course Documents
> verify the close button is in the upper-right corner
and the heading is on the same line, to the left
Change-Id: I77bec2cad44e432b88d633d1f07eb2622da5cdb4
Reviewed-on: https://gerrit.instructure.com/206981
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
Change-Id: Ib48d20836f8063de61107cb0ec6f6e2c85d49dca
Reviewed-on: https://gerrit.instructure.com/208076
Reviewed-by: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
Tested-by: Jenkins
closes COREFE-203
Adds ability for a teacher to switch between course and user files.
Changes the images query logic to piggyback on the /documents api
so docuents, media, and images will all share the same query logic
test plan:
- have a course with some images
- have a teacher and a student with personal images
- go to the course as a teacher
> expect rce images toolbar button menus to
show Upload, Course images, and My images
- upload an image
> expect it to succeed
> expect the new image to appear in the Course images
tray
> expect the images to appear in the course's upload media folder
- select My Images from the toolbar menu
> expect my Images to be shown in the tray
- use the filter to switch to Course Images
> expect course Images to be shown in the tray
- repeat, starting with Course Images and flipping to My Images
- go to the course as a student
> expect rce Images toolbar button menus to
show Upload and My Images
- upload Image(s)
> expect it to succeed
> expect the new imsges to appear in the user's file page's
My Files (/files).
> do NOT expect the imsges to show up in the course's Files page
(/courses/:id/files)
- click on Images > My Images
> expect to see Links and My Images in the top select of the tray
> do NOT expect to see the Course Files option in tray
Change-Id: If7f4e6b6f90b445e497be81b9cb940da71a8cf74
Reviewed-on: https://gerrit.instructure.com/206788
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Tested-by: Jenkins
Product-Review: Ed Schiebel <eschiebel@instructure.com>
Closes: COREFE-251
If their login flow requires any javascript to actually execute
that will probably still not work since if it is our javascript
it will probably have syntax ie11 can’t understand but
if all they need is the server-rendered html & css of the login page
this should let them do that
This also ups the “minimum supported ie version” to 12. So that if
they do get to the login screen, and javascript actually works, they
will see something like this: https://cl.ly/e192872f4a66
Test plan:
* try to login from ie11
* it should show the login screen and let you login but once you hit
Submit, on the page that loads after, it should redirect you to the
Ie-is-not-supported.html page
Change-Id: I8dc93cf2a5810a7e189cef05ba26c390cd9e16e0
Reviewed-on: https://gerrit.instructure.com/208125
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
This was broken because jest would die on the
`import _Handlebars from 'handlebars/runtime’`
In frontend_build/i18nLinerHandlebars.js
Test plan:
* you should be able to import a file that imports a handlebars file
In jest tests
Change-Id: I021de6650dd97270e10709495a42b84b6b4a4505
Reviewed-on: https://gerrit.instructure.com/208112
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
closes PLAT-4789
Test Plan:
- see that the new spacing matches what is requested in the ticket
Change-Id: I0d5456ce7451bda108ac9a54beab313b8eb701bc
Reviewed-on: https://gerrit.instructure.com/207953
Reviewed-by: Xander Moffatt <xmoffatt@instructure.com>
QA-Review: Xander Moffatt <xmoffatt@instructure.com>
Tested-by: Jenkins
Product-Review: Marc Phillips <mphillips@instructure.com>
fixes ADMIN-2844
flag=none
Test plan
- Follow repro steps in ticket
and ensure you only get the user
returned once
Change-Id: I3807ab2bfa6793a6a9d81524a4b42a2910c32cb5
Reviewed-on: https://gerrit.instructure.com/208018
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Mysti Lilla <mysti@instructure.com>
Refs Closes PLAT-4766
Test Plan:
Make sure you can save a tool configuraiton that uses the new
list_event_types scope
Change-Id: Ib0e9ce88e03a5cce71aae2a418557f67492234d7
Reviewed-on: https://gerrit.instructure.com/208079
Tested-by: Jenkins
Reviewed-by: Xander Moffatt <xmoffatt@instructure.com>
QA-Review: Clint Furse <cfurse@instructure.com>
QA-Review: Xander Moffatt <xmoffatt@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
closes PLAT-4753
Test Plan:
- generate a sessionless launch, launch it, see that
the event is generated on sessionless launch
Change-Id: Ic025da551286edea73e30e48e580b5f3d8d9fe38
Reviewed-on: https://gerrit.instructure.com/207982
Tested-by: Jenkins
QA-Review: Tucker Mcknight <tmcknight@instructure.com>
Reviewed-by: Xander Moffatt <xmoffatt@instructure.com>
Product-Review: Marc Phillips <mphillips@instructure.com>
Commenting as an anonymous peer reviewer will no longer return in the
json response the user_id of the student being reviewed.
fixes GRADE-2150
Test Plan
- Create an anonymous peer review assignment.
- Assign Student A to peer review Student B.
- As Student A, submit for the assignment.
- As Student A, leave a comment for Student B during the peer review.
- Verify that, in the network response for the comment, Student B's
user_id is not included in the submission object.
Change-Id: I4caa44736744553c165174836ca94d4a9676de71
Reviewed-on: https://gerrit.instructure.com/207438
Tested-by: Jenkins
Reviewed-by: Jeremy Neander <jneander@instructure.com>
Reviewed-by: Adrian Packel <apackel@instructure.com>
QA-Review: Derek Bender <djbender@instructure.com>
Product-Review: Keith Garner <kgarner@instructure.com>
closes PLAT-4782
Test Plan:
- note that a call to the users api for an lti tool will
add the users email
Change-Id: I31cbdebdd1c066241bd5d78b298815428b1f35b7
Reviewed-on: https://gerrit.instructure.com/207958
Tested-by: Jenkins
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Tucker Mcknight <tmcknight@instructure.com>
Product-Review: Marc Phillips <mphillips@instructure.com>
Change-Id: I6ed33e19803420cb6adb00116cacbe7b92eadc76
Reviewed-on: https://gerrit.instructure.com/208099
Tested-by: Jenkins
Reviewed-by: Gary Mei <gmei@instructure.com>
QA-Review: Jeremy Neander <jneander@instructure.com>
Product-Review: Jeremy Neander <jneander@instructure.com>
This spec has been flaky. The theory is that it might not be acting on
the correct DOM elements, due to DOM pollution. The result is that it
ends up waiting on behavior that was never triggered, and times out.
Change-Id: I107aac0e9fe8185dcdf81137a71ca5a0e75ee7f9
Reviewed-on: https://gerrit.instructure.com/208056
Tested-by: Jenkins
Reviewed-by: Gary Mei <gmei@instructure.com>
QA-Review: Jeremy Neander <jneander@instructure.com>
Product-Review: Jeremy Neander <jneander@instructure.com>
when users submit text submissions in a2 we need to display
the submission
Test Plan:
* as a teacher, create a text entry assignment
* as a student, navigate to the assignment in a2
* click "Start Entry" to open the RCE
* create a draft with:
** text
** media (video / pictures)
** html elements (tables, font, etc)
* click "Save" to create the draft
* click "Submit" to submit the draft
* confirm that the submission that is displayed looks correct
fixes COMMS-2288
Change-Id: Ib9c5fcff451c15202c49297474c90a4f1c9f1259
Reviewed-on: https://gerrit.instructure.com/207177
Tested-by: Jenkins
Reviewed-by: Steven Burnett <sburnett@instructure.com>
QA-Review: Ben Nelson <bnelson@instructure.com>
Product-Review: Ryan Norton <rnorton@instructure.com>
fixes COMMS-2406
Test Plan:
- As an account admin go to the accounts settings page
- notice you see the input field for "Slack Api Token"
Change-Id: I31fcb5730e8a02168ee7b61e06650e49fc8ec420
Reviewed-on: https://gerrit.instructure.com/208042
Tested-by: Jenkins
Reviewed-by: Landon Gilbert-Bland <lbland@instructure.com>
QA-Review: Steven Burnett <sburnett@instructure.com>
Product-Review: Steven Burnett <sburnett@instructure.com>
fixes COMMS-2339
Test Plan:
-Create a course and enable Assignment Group Weighting
(for reference how to do this see
https://umich.instructure.com/courses/85440/pages/assignment-groups-and-weighted-grading)
-Reset course
-In the new course do not visit the assignments page and attempt to make an announcement
-notice you can
Change-Id: I24b25ab9b1c103cef97552ab44071c5223f86f03
Reviewed-on: https://gerrit.instructure.com/208048
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Steven Burnett <sburnett@instructure.com>
Change-Id: If6ecdf2213894cfcab00521cb5d24367fcfeda84
Reviewed-on: https://gerrit.instructure.com/207905
Tested-by: Jenkins
Reviewed-by: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
These hit the timeout in the master build, this is to see if we
can temporarily make that go away so the build can pass otherwise
Test plan:
* once merged, the master js build should not fail on jest tests
Change-Id: I32b74200287ce1a952844dd71c19adbd8ac1f6b0
Reviewed-on: https://gerrit.instructure.com/207983
Tested-by: Jenkins
Reviewed-by: Tucker Mcknight <tmcknight@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
fixes COMMS-2321
Test Plan:
- In a2 as a student within a media attempt assignment
- click the add media button
- in the computer panel add a media file
- click the closed captions checkbox
- play around with the closed caption adding ui
- notice you can add and remove the closed captoin creator row
- downloading and deleting of captions still to come
Change-Id: Ie54a27508bc2a7238efc26ab7c7fc5a3428e01a1
Reviewed-on: https://gerrit.instructure.com/207513
Tested-by: Jenkins
Reviewed-by: Landon Gilbert-Bland <lbland@instructure.com>
QA-Review: Steven Burnett <sburnett@instructure.com>
Product-Review: Steven Burnett <sburnett@instructure.com>
Test Plan:
In a course with at least 1 student
- Create an assignment
- Have a student submit to that assignment
- As a teacher, leave at least one submission comment on the submission
- As the student, view the assignment in A2
-- There should be an unread counter on the Comments tab
- Click on the Comments tab
-- There should be an unread badge to the left of the comment
- BEFORE 1 SECOND HAS PASSED: Click back to the Attempt tab
-- The unread counter on the comments tab should not change no matter
how long you wait on the Attempt tab
- Click back to the Comments tab
- Wait 1 second and see that the unread markers disappear
-- A screen reader alert should be read
- Refresh the page and see that the unread markers do not reappear
- With no unread comments, click on the Comments tab and wait 1+ seconds
- Verify that no mutation was run because there are no unread comments
closes COMMS-2281
flag=assignments_2
Change-Id: I0782eec6327e791df56eec8e0b276f1c155334f7
Reviewed-on: https://gerrit.instructure.com/206504
Tested-by: Jenkins
Reviewed-by: Landon Gilbert-Bland <lbland@instructure.com>
QA-Review: Steven Burnett <sburnett@instructure.com>
Product-Review: Steven Burnett <sburnett@instructure.com>
closes COREFE-245
test plan:
- it still builds
- all the tests stil pass
Change-Id: I3838e43eb11a2cac213e28f1bfac326bf21f9891
Reviewed-on: https://gerrit.instructure.com/207861
Tested-by: Jenkins
Reviewed-by: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
fixes SAS-1157
after importing metadata about older canvas attachments into inst-fs,
there will exist a set of files in inst-fs containing mappings from
canvas attachment ids to inst-fs uuids. consume those with this task in
order to close the circle and let those older canvas attachments use the
inst-fs references.
Change-Id: Ibb67bfcdec727f52db68bed7d2ff393c5e53313e
Reviewed-on: https://gerrit.instructure.com/171953
Tested-by: Jenkins
QA-Review: Jacob Fugal <jacob@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>
Reviewed-by: Jonathan Featherstone <jfeatherstone@instructure.com>
I have a suspicion that this is maybe polluting things in our
Karma tests and maybe this is why the master build is failing
Test plan:
* specs should pass
* maybe, if we’re lucky, the master js build should also pass
Change-Id: Ic3603401497f19c0f3588dd8fa82177e79840833
Reviewed-on: https://gerrit.instructure.com/207955
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
refs ADMIN-2838
flag=none
Test plan
- Specs pass
Change-Id: Ifcc286be599dba6a709b2696dee58aa267f862b2
Reviewed-on: https://gerrit.instructure.com/207758
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jenkins
QA-Review: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Mysti Lilla <mysti@instructure.com>
closes ADMIN-2838
flag=direct_share
Test plan
- Ensure a user with manage_content permission
can search for teachers, tas and designers that
exist somewhere in the account
- Make sure the user doesn't find themselves in the
search
- Missing search term should 400
- People without manage content should get 401
- Shouldn't be able to use the API with the
feature being on
Change-Id: I11465fc43dd97ce8decb8681239bc02374c3ee7a
Reviewed-on: https://gerrit.instructure.com/207523
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Mysti Lilla <mysti@instructure.com>
test plan:
- render API docs
- refer to Content Migrations documentation on how to create
a course copy migration
- use the select parameter to choose content to copy while
creating the course copy (vs. the upload workflow which
preprocesses the file and requires a second API call to
select content afterward)
flag=none
closes ADMIN-2837
Change-Id: I0550d8a0a6a3fec5ab36677177b88372033b9dfc
Reviewed-on: https://gerrit.instructure.com/207139
Tested-by: Jenkins
QA-Review: Mysti Lilla <mysti@instructure.com>
Product-Review: Mysti Lilla <mysti@instructure.com>
Reviewed-by: Mysti Lilla <mysti@instructure.com>
This moves eslint, stylelint, and xsslint to be part of our
JS build pipeline. It does not account for other linters that
are more general like tatl_tael linters and commit messages or
non-frontend language specific linters like rubocop.
Test Plan:
- The linters-and-js build on New Jenkins should run and actually
run the linters specified above.
closes COREFE-220
flag = none
Change-Id: I8f633caf9af025c83bbe68fbd1536276a838c159
Reviewed-on: https://gerrit.instructure.com/206106
Tested-by: Jenkins
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Reviewed-by: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
Change-Id: Id1e933038be5c6552372e6834383cf9a1acc6add
Reviewed-on: https://gerrit.instructure.com/207904
Tested-by: Jenkins
Reviewed-by: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
Closes PLAT-4766
Test Plan:
- Configure Canvas to use the live events
subscription service
- Verify making a request to the new endpoint
returns a categorized list of events
- Verify the new endpoint uses LTI advantage
authorization/authentication
Change-Id: Id6f4ec2978e3a4542042bd821e408acfa566005c
Reviewed-on: https://gerrit.instructure.com/207713
Tested-by: Jenkins
Reviewed-by: Clint Furse <cfurse@instructure.com>
QA-Review: Clint Furse <cfurse@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
model it more closely after marshal.c in ruby
* avoid triggering ActiveRecord::Relation from loading data (and then asploding
as it tries to cache that data on a hash we're already iterating)
* directly identify singleton dump failures, which are otherwise impossible
to blame the correct object in a circular hierarchy
Change-Id: Ibb35240f62a5d9333a4c1d3cd13de079b06e1753
Reviewed-on: https://gerrit.instructure.com/207658
Tested-by: Jenkins
Reviewed-by: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
fixes ADMIN-2772
flags=none
test plan:
- Check functionality of account->course search page. That Select
options update choices. None of the options throw errors, etc.
- Set a Term and select Teacher, which will update URL params. Then
do a page refresh. After full page load, those options should
persist.
- Warnings about <Select> deprecation gone from page
Change-Id: Idc34e650c48c423acbac8c0074a96c84f5c3c707
Reviewed-on: https://gerrit.instructure.com/202574
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
Reviewed-by: Mysti Lilla <mysti@instructure.com>
QA-Review: Jon Willesen <jonw+gerrit@instructure.com>
Product-Review: Carl Kibler <ckibler@instructure.com>
it didn't work, so I'll just put it back to how it was
This reverts commit d31468710e.
Change-Id: I8144f2641a3cd715b7fe4f1821ba3afe8a6549a8
Reviewed-on: https://gerrit.instructure.com/207855
Reviewed-by: James Butters <jbutters@instructure.com>
Tested-by: Jenkins
QA-Review: Ryan Shaw <ryan@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
Change-Id: Ic7642beccfda949d1b2a16fd3a87d4cfaa705c1f
Reviewed-on: https://gerrit.instructure.com/207662
Reviewed-by: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
Tested-by: Jenkins
Scrolling of external tools was broken on iPads due to this
"overflow-y: hidden" CSS rule.
Test plan
* Open Commons on an iPad
* Scrolling the page should work
Fixes CM-931
Change-Id: I6739fbb3a16e6d9d30c76733a8d34b491ee2d8dc
Reviewed-on: https://gerrit.instructure.com/207331
Tested-by: Jenkins
Reviewed-by: Jacob Burroughs <jburroughs@instructure.com>
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: Jozsef Kozma <jkozma@instructure.com>