test plan:
* navigate to /profile/observees
* add new observees (specifying usernames & passwords)
* new observees should appear in the list
notes:
- the 'Observing' tab does not appear until at least one observee has
been added for the user (and the page is refreshed)
- the observing user should gain Observer enrollments for courses the
observed user is enrolled in (both present and future)
closes CNVS-13356
Change-Id: Icda0f0d256fc73bcb554523db6436457941d8b58
Reviewed-on: https://gerrit.instructure.com/37283
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Hilary Scharton <hilary@instructure.com>
closes CNVS-14012
test plan
- change your user settings to Norwegian (Bokmål)
and verify that the new translations appear properly
Change-Id: I4adf61a6d39f2ef05bb7fe2e66f76b2325cfa004
Reviewed-on: https://gerrit.instructure.com/37386
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
it kinda is now
Change-Id: Ia21a1bcd8ea321c22eb8334c18638b7bae88e9c5
Reviewed-on: https://gerrit.instructure.com/37434
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>
test plan:
* create a course object with html content (such as a
calendar event)
* create a link to a file, but corrupt the attachment id in the path
so it won't be found (e.g. /courses/x/files/y;
set y to something nonexistent)
* exporting or copying the course should not prevent all objects
of that type from being exported (e.g. should still bring in
other calendar events)
fixes #CNVS-13929
Change-Id: I84b3958937021a2c2d07db4fb4cb689d067136ce
Reviewed-on: https://gerrit.instructure.com/37383
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Test plan:
* go to an account that has canvadocs configured
* you should see the url you configured
* go to another account that hasn't had canvadocs configured
* there shouldn't be a base url filled in
Change-Id: I6889a02998f84a9ac7c6ac14d985beffea3a796c
Reviewed-on: https://gerrit.instructure.com/37412
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-995
test plan
- on dashboard recent feedback should read "past
two weeks" instead of "next two weeks"
Change-Id: Ic31055ef02c323b4c3899a1eba853afccd542f0c
Reviewed-on: https://gerrit.instructure.com/37299
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
fixes CNVS-13991
test plan
- specs should pass
Change-Id: Ie689f634e5ec51f85e07bdd4b1af21a311af97ad
Reviewed-on: https://gerrit.instructure.com/37328
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Ken Romney <kromney@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Dana Danger <dana@instructure.com>
adheres_to_policy has equivalent caching internally now, so no need
to bother with externally
also, OpenObjects went the way of the dodo a long time ago
(StreamItems always reconstitute the actual AR object)
Change-Id: I9f2e04700c8897d0fe539a58dcbd6ec829e6f023
Reviewed-on: https://gerrit.instructure.com/36310
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Nick Cloward <ncloward@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
test plan:
* create a course with external link module items,
and external tools with links pointing to a given
domain (e.g. "http://www.example.com/somewhere")
* in the rails console, manually configure the account settings
as follows, (replacing COURSEID with the id of the course):
a = Course.find(COURSEID).root_account
h1 = {"http://www.example.com" => "https://www.not-example.com"}
h2 = {:domain_substitution_map => h1}
a.settings[:default_migration_settings] = h2
a.save!
* copy the course
* the links should all be translated to the new domain
(e.g. "https://www.not-example.com")
fixes #CNVS-13512
Change-Id: I4472fec4c2633827409967cc76652e7395fb8e0f
Reviewed-on: https://gerrit.instructure.com/37356
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Closes CNVS-14021
TEST PLAN
---- ----
- create a quiz with a question
- try answering the quiz using the QSQ API (see docs)
- verify that your answer is recorded
Change-Id: I667671f639ac0b5c6bc469477b638e70f90f37ff
Reviewed-on: https://gerrit.instructure.com/37372
Reviewed-by: Derek DeVries <ddevries@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Derek DeVries <ddevries@instructure.com>
Previously we were passing in undefined, which was fine until you toggled
true, then wanted to go back.
see: http://api.jquery.com/toggleclass/#toggleClass-className-switch
fixes CNVS-5365
test plan:
- have a user with a submitted assignment that hasnt been graded
- in GradeBook, open the message students who...
- select "scored less than"
- select "Haven't submitted yet"
- select "Haven't been graded yet"
- without fix, null will be displayed by the user
- with the fix, everything will look normal
Change-Id: Ic05b8c2eec513ef26f8f3cdf26d8b328c7a850e1
Reviewed-on: https://gerrit.instructure.com/37206
Reviewed-by: Cameron Matheson <cameron@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
closer to 3.0, which we probably don't want to go to until
we can drop rspec 1 (rails 2)
Change-Id: I8affc4882bfc927a6d3b9bcc9c43fe5ab92cd3b7
Reviewed-on: https://gerrit.instructure.com/37326
Reviewed-by: Jon Jensen <jon@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
test plan:
* import a qti file into a course and select a question
bank to import
* should import into the correct bank
closes #CNVS-1965
Change-Id: I4f4647cedf28b931225986b757688c8794dfa1d4
Reviewed-on: https://gerrit.instructure.com/37321
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
closes CNVS-14001
test plan:
- quiz stats feature should be available in beta
- quiz stats feature should not be available in prod
Change-Id: If094589558b44b11b989b0b0e38b36359a1edfb3
Reviewed-on: https://gerrit.instructure.com/37347
Reviewed-by: Derek DeVries <ddevries@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Jason Madsen <jmadsen@instructure.com>
(also keep track of other imported items as well)
test plan:
* import a canvas export package (such as the one
referenced in the ticket) with assignments and graded
discussions
* import them into a course
* delete the assignments, etc. from the course
* re-import the package, while shifting the dates
* the re-imported (i.e. undeleted) assignments should
have their dates shifted
fixes #CNVS-13252
Change-Id: I396059cdcf58fe3386f21cc7cffe62ac8951cd05
Reviewed-on: https://gerrit.instructure.com/36743
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
***test plan
1. through the api pass parameters['include_deleted'] = true
and parameters['limiting_period'] = some number of days
2. Make sure enrollments that have been deleted or concluded within
specified # of days from above are returned in report
3. Make sure enrollments that are not concluded / deleted within
specified number of days are not returned in the report
refs: PS-1698
Change-Id: Id24c58954dba2aed0a92cd5dea1946ef0764dc1a
Reviewed-on: https://gerrit.instructure.com/36612
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Brandon Broschinsky <brandonbr@instructure.com>
Product-Review: Adam Phillipps <adam@instructure.com>
QA-Review: Adam Phillipps <adam@instructure.com>
fixes CNVS-13526
test plan:
- test along with the demo site changes
- this is needed to verify the demo site tracking pixel changes
Change-Id: Ice12d7248e75e24c3694d3df5cccda7e8ba18881
Reviewed-on: https://gerrit.instructure.com/36972
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Drew Bowman <dbowman@instructure.com>
QA-Review: Drew Bowman <dbowman@instructure.com>
Product-Review: Drew Bowman <dbowman@instructure.com>
QA-Review: Steven Shepherd <sshepherd@instructure.com>
Reviewed-by: Joel Hough <joel@instructure.com>
Chrome has a nice bug where clicking on block element
inside an inline element will force the inline element
to keep the :active pseudo class.
this causes tooltips to stay open since our tooltips
show if the tooltip element has the :active pseudo class
a bug has been filed at https://code.google.com/p/chromium/issues/detail?id=391254
fixes CNVS-10808
test plan:
- using chrome
- Click the attach file icon
- Make sure the tooltip disappears
Change-Id: I86ff3bc9b2d309382c63b8fa4183bfc9b9162af6
Reviewed-on: https://gerrit.instructure.com/37255
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Colleen Palmer <colleen@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Brad Horrocks <bhorrocks@instructure.com>
test plan:
* logged in as an account admin, visit the user page for
a given user other than yourself
* use the "Add Login" dialog to create a login and
password for the user
* should not log you out and login the edited user
fixes #CNVS-13883
Change-Id: I6104b64dfd9a9557b1f6943bad14e1dcba2168f3
Reviewed-on: https://gerrit.instructure.com/37290
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
fixes #CNVS-13548
When adding a module item the + link should have been a button with a
label. It now is a button with a label and works in JAWs and voice over.
Test Plan ------------
As a user that can create a module item
Given I'm using jaws and/or voice over
When I navigate to the modules page
I should be able to click on the add module items button
And it should be a button
And it should have a label
And it should work in Jaws
And it should work in voice over
Change-Id: I617dc3e37a9aeb2e54ee17a273f8284dbc7787f4
Reviewed-on: https://gerrit.instructure.com/36203
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Hilary Scharton <hilary@instructure.com>
this hard-codes draft state to on in the code, but still allows tests to run
against non-draft state code (as if it was still set to allowed). this allows
us to then go clean up tests on a component by component basis as we rip out
old non draft state code
closes CNVS-13582
test plan:
- basic canvas regression test
- make sure draft state is on for all courses
- make sure it cannot be turned off at the course or account level
Change-Id: Ia22e6b8a7e40a64b42021846f2fe85aaf3005504
Reviewed-on: https://gerrit.instructure.com/37260
Reviewed-by: Bryan Madsen <bryan@instructure.com>
Product-Review: Bryan Madsen <bryan@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
make the enrollment "active" instead of "invited", or else
User#can_masquerade? will fail because the "invited" enrollment
will not link the student view user to the course via the
courses association
test plan:
1. have a teacher in an active course who is not an account admin
2. enter student view
3. leave student view
4. conclude the course
5. enter student view again. it should work this time.
fixes CNVS-13610
Change-Id: If59683a58ae2fcd425a50eccdab8ca74ac435e07
Reviewed-on: https://gerrit.instructure.com/37215
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: James Williams <jamesw@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
fixes CNVS-13791
with non-eagerloading, the constants might not be present, so we just
have to try to get it, instead of checking if we have it
test plan:
* in development mode, make sure cache_classes is false
* create a quiz with a fill in multiple answers question
* save it
* preview the quiz
* it should not page error
Change-Id: Iacdebd972e4b0d6f404e8f0a6a91a8adecb77ca8
Reviewed-on: https://gerrit.instructure.com/37172
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Ahmad Amireh <ahmad@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
Closes CNVS-13730
This patch enables the (re)publishing functionality in DS mode. The
issue was that the internals were relying on "workflow_state_changed?"
to be truthy in order to re-publish the quiz, which is not the usual
case in DS where the quiz's WState is always "available" and doesn't
really change between authoring updates.
A side change: Canvas::DraftStateValidations is now covered and
responsible for adding the required validations to classes that mix it
in.
TEST PLAN
---- ----
- create a quiz with draft-state on
- add a question
- save the quiz, publish it
- open a tab on the quiz show page and keep it
- in another tab, edit the quiz, modify the question, hit "Update
Question" and switch back to the show quiz tab
- refresh the page, verify you get the "Save it Now" button
- push the button
- refresh again
- verify that the button no longer re-appears, and that your changes
were actually published (you can do this by taking the quiz as a
student)
Change-Id: Idf3b4302b23d6abc483b80796fee753b0e6fba85
Reviewed-on: https://gerrit.instructure.com/37303
Reviewed-by: Derek DeVries <ddevries@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Ahmad Amireh <ahmad@instructure.com>
Change-Id: Ibb4465348162219b4f1da6f1a842234a7cecd78e
Reviewed-on: https://gerrit.instructure.com/37316
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
Closes CNVS-13078
TEST PLAN
---- ----
- visit ember quiz stats
- verify the colors are updated as requested in the jira ticket
- verify that when you hover over a bar in the bar charts you no
longer see the bars turn to the orange-red color
Change-Id: Ia0e6380dc1ee4ab5971edd4628d9ec75844a5b64
Reviewed-on: https://gerrit.instructure.com/36070
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jason Madsen <jmadsen@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Ahmad Amireh <ahmad@instructure.com>
fixes CNVS-13449
test plan
- create a discussion topic with an image without a src attribute
- ensure that notification is sent for the topic
Change-Id: Idb87eaa955089197aaaa2247cc6172d8dd52c6ba
Reviewed-on: https://gerrit.instructure.com/36756
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Braden Anderson <braden@instructure.com>
QA-Review: David Josse <david@instructure.com>
Product-Review: Joel Hough <joel@instructure.com>
The internal order of blanks (in question_data) is no longer relevant
when rendering the results but instead should follow the order of the
[blank] definitions found in the question text.
Closes CNVS-3544
TEST PLAN
---- ----
- create a quiz with a FIMB question
- create two blanks, call them "color" and "size", e.g:
"My shirt is colored [color] and is [size] big."
- take the quiz and verify that your answers are shown in the
correct order per blank ([color] and then [size])
- edit the quiz and do this:
- edit the question
- select the portion of the "is colored [color]" and drag it using
your cursor to be somewhere after the "[size]" blank, e.g:
"My shirt and is [size] big colored [color]" (yes, ignore the
grammar this one time)
- directly click on Update Question without pressing anywhere else
- save quiz and republish
- take the quiz again by the student, submit it and:
- verify that the disabled input boxes still read in the correct,
newly-adjusted order which is [size] and then [color]
- verify that the result boxes look right overall
Change-Id: I497b15f5c0dfa863e39f4fd5856d56fb84581fde
Reviewed-on: https://gerrit.instructure.com/37251
Reviewed-by: Derek DeVries <ddevries@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Ahmad Amireh <ahmad@instructure.com>
fixes CNVS-13697
When you create html markup in canvas, you should be able to add
accessible attributes and roles to elements. This commit allows you to
do that.
Test Plan
As a user that can edit a wiki page
When you edit a wiki page
And you toggle to edit the html
Then you add an aria attribute like aria-label
And you toggle back to the yswyg editor
And you toggle back into the html view
Then aria elements should still be on the html elements
And they should still be there when you save the page and inspect the
elements via developer tools.
Change-Id: Id443170fb3eabcbfcec58fd29b6fcfe1ea71279a
Reviewed-on: https://gerrit.instructure.com/36627
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Hilary Scharton <hilary@instructure.com>
Fixes CNVS-13729
Test plan:
- Reply to a discussion.
- Using a screen reader, add an attachment, and verify that the
attachment field is labeled.
Change-Id: I193b18a210e3255deb61f27f50349d74f395f6e8
Reviewed-on: https://gerrit.instructure.com/36863
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Braden Anderson <braden@instructure.com>
QA-Review: David Josse <david@instructure.com>
Product-Review: Aaron Cannon <acannon@instructure.com>
Fixes RD-79
test plan:
- add an lti app with the course_settings_sub_navigation
extension (probably have to modify the xml for an existing
app).
- go to the course settings page and see the app shows up at
the top of the right sidebar.
- on the console, change the integration_type for the tool to
'lor'.
- refresh the course settings page and see the app now has a
new badge.
Change-Id: I1d5ccc57e1ee3624abe91543c22793aa6dd0350a
Reviewed-on: https://gerrit.instructure.com/36853
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Brad Humphrey <brad@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Jon Willesen <jonw@instructure.com>
fixes CNVS-13805
Test plan:
* make a public course
* upload a canvadocable file
* visit the course in a new browser (without logging in)
* you should be able to preview the file
Change-Id: I4ef0b0ba656f2aad734736178b09ad9a729ae3c9
Reviewed-on: https://gerrit.instructure.com/37245
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Cameron Matheson <cameron@instructure.com>
Make sure it comes before ActionDispatch's logging of the request start
fixes CNVS-13890
test plan: turn on 'log_context: true' in config/logging.yml, and make
sure that the `Started GET "/path"` lines have the correct request id of the
subsequent request, not the previous request.
Change-Id: Ie6a77993955296b9032e07f8536506b6816517b7
Reviewed-on: https://gerrit.instructure.com/37183
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Brian Palmer <brianp@instructure.com>
fixes CNVS-13790
string manipulation just lost the html_safe flag on rails 3, but not
rails 2
test plan:
* create a quiz with a fill in multiple blanks question
* preview it
* it should render the question correctly, not have a bunch
of raw html
Change-Id: I399874707a880e55c3772e5a780ff595de9062d6
Reviewed-on: https://gerrit.instructure.com/37188
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Reviewed-by: Ahmad Amireh <ahmad@instructure.com>
Product-Review: Brian Palmer <brianp@instructure.com>
refs CNVS-13790
the serializers aren't all loaded in development mode, so you can't
rely on them auto-registering themselves. just constantize what the
class name should be.
also fix a module method not being in the correct file, also for
autoloading goodness
Change-Id: Id7da60757c1b7d816fe94e39d57b521e9efb730d
Reviewed-on: https://gerrit.instructure.com/37173
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Ahmad Amireh <ahmad@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Brian Palmer <brianp@instructure.com>
refs CNVS-13790
test plan:
* create a quiz with a multiple drop downs question
* preview it
* it should render correctly
Change-Id: I8a37e0e7b8eee545252343927f8697b659726de0
Reviewed-on: https://gerrit.instructure.com/37193
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Ahmad Amireh <ahmad@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Brian Palmer <brianp@instructure.com>
test plan:
* with rails 3 and caching enabled, create a new assignment
* add due dates for various sections
* save the assignment
* the overridden due dates should appear (i.e. the empty cache should
not remain)
fixes #CNVS-13477
Change-Id: I1b4b2b5a9a1f91fd010b39bca6381c02bd8310fe
Reviewed-on: https://gerrit.instructure.com/37153
Reviewed-by: Cameron Sutter <csutter@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>