test plan:
- run "rm -rf spec/javascripts; git checkout HEAD --
specs/javascripts" to reset your compiled javascript tests.
- run rake js:generate_runner
- JS tests should pass
- # of JS tests should be the same as they are on master before this
commit
Change-Id: I936aec8a8a5e2cc739e09757c622f300e99c72ef
Reviewed-on: https://gerrit.instructure.com/25615
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jon Jensen <jon@instructure.com>
Product-Review: Bryan Madsen <bryan@instructure.com>
QA-Review: Bryan Madsen <bryan@instructure.com>
fixes CNVS-9004
testing notes:
- in group management, group sets should display and
support the "Delete" option
- a "special" group set (i.e. Student Groups) that can't
be deleted by server, should not show the "Delete" option
Change-Id: I4ae4f8355119e853d712596794a5e11cce63b1bd
Reviewed-on: https://gerrit.instructure.com/25825
Reviewed-by: Jon Jensen <jon@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Jon Jensen <jon@instructure.com>
QA-Review: Jon Jensen <jon@instructure.com>
This wasn't working because we weren't loading the existing page view
from cassandra, so the user_id nil check was failing.
Also add the Setting to this codepath in case we need to turn off page
view updates for performance reasons.
fixes CNVS-2129
test plan:
* visit a course interaction page such as viewing a discussion topic
* turn on your web inspector
* spend some time on the page, scrolling around, clicking, doing things
that register as activity
* eventually you'll see an ajax request to /page_views to update the
interaction_seconds timer. this can take more than 5 minutes though --
the faster way to trigger it is to "interact" with the page for at least
30 seconds, and then navigate to another canvas page. that'll trigger
the page view update ajax call when the next page loads.
* visit /users/self and look at your page view history, the page view
should have the updated interaction seconds value. same with the csv
download of page view history.
Change-Id: I35a67450c0f3360720ff0c18fe9730ead607d5e0
Reviewed-on: https://gerrit.instructure.com/25871
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Brian Palmer <brianp@instructure.com>
This has been phased out, so is just needless complexity.
refs CNVS-2129
test plan:
* page views should still be stored and queried via cassandra or postgres
Change-Id: I0e5580086c912396b7e4cdfb139eb3a1acc4f67c
Reviewed-on: https://gerrit.instructure.com/25859
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Brian Palmer <brianp@instructure.com>
refs CNVS-8958
to parallel User#all_pseudonyms and make it clearer that it's embedding
the with_each_shard. temporarily alias back to User#accounts so we can
get past CI until plugins are updated with the new name.
Change-Id: I0698dfcbb1b418c1a66722d774df8821e31418b6
test-plan: existing specs
Reviewed-on: https://gerrit.instructure.com/25876
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>
QA-Review: Jacob Fugal <jacob@instructure.com>
fixes CNVS-9128
test plan:
- create a new conversation as an account admin to a user that
does not share a course with the admin.
- in the console, check that the context of the new
conversation is the root account associated with the domain
you used to create the conversation.
- verify that the recipient can reply to the conversation.
- create a new conversation as a sub-account admin.
- check that the context of the new conversation is the root
account associated with the domain you used to created the
conversation.
- create a new conversation with a course context.
- check that the context of the new conversation is the
selected course.
- make sure conversations in general display the right context
in the new conversations reply dialog when replying to both
old conversations and new conversations.
Change-Id: I905c80c3d0f092a1bb249e0e604be4698e9be3c7
Reviewed-on: https://gerrit.instructure.com/25804
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Braden Anderson <banderson@instructure.com>
QA-Review: Hannah Bottalla <hannah@instructure.com>
Product-Review: Jon Willesen <jonw@instructure.com>
closes CNVS-9075
test plan:
- create a quiz with at least one question
- take quiz as a student
- edit quiz as instructor and choose different correct answer
- verify that quiz regrade options display for all instructor accounts
Change-Id: I1e44de97994010d4491bf395a00b6d4a250d9ab6
Reviewed-on: https://gerrit.instructure.com/25850
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Derek DeVries <ddevries@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Jason Madsen <jmadsen@instructure.com>
fixes CNVS-9196
Style changes should only be applied if the course has draft state
enabled.
Test
Pre: Make sure you have the latest analytics plugin installed.
-- With Draft State Enabled --
1. Go to the course homepage
2. The right side 'secondary' navigation should be styled with a gray
background. No twitter bootstrap buttons
-- Without Draft State Enabled --
1. Go to the course homepage
2. The right side 'secondary' navigation should be styled with twitter
bootstrap style buttons.
In both cases you should still be able to see the analytics link in the
navigation. Be sure to have the analytics plugin enabled for this course
so the button appears.
Change-Id: I3b10edc542754a0a80537057133a66b27066a58e
Reviewed-on: https://gerrit.instructure.com/25831
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Matt Fairbourn <mfairbourn@instructure.com>
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
Product-Review: Bracken Mosbacker <bracken@instructure.com>
also modified the documentation for external tool configurations
to clarify how "environment" settings work
Test plan:
- verify that underscores are displaying instead of italicizing content
Change-Id: Ie62d11018becdc9a5281f3d25907827814d3fb7d
Reviewed-on: https://gerrit.instructure.com/25191
Reviewed-by: Brad Humphrey <brad@instructure.com>
Product-Review: Brad Humphrey <brad@instructure.com>
QA-Review: Brad Humphrey <brad@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
fixes CNVS-9204
refs CNVS-8921
test plan
- import a state standard
- have an outcome result for the state standard (graded item tied to outcome)
- run learning_outcome_results report
- run student_competency_report
- reports should have result
Change-Id: I8c39f235022b8f4d0a642a9364b7082e313d9c4e
Reviewed-on: https://gerrit.instructure.com/25849
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
fixes CNVS-9098
test plan:
- be sure to turn on draft state
- verify that as a teacher you still can't unpublish assignments or
quizzes that have submissions
- verify that on the assignment and quizzes index page tooltips go away
when moving over and then off of the publish icon (before and after
publishing an assignment
Change-Id: If24c991daa1f5e215b7c1fcb7088378f7df67906
Reviewed-on: https://gerrit.instructure.com/25772
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
fixes CNVS-9092
test plan
- enable draft state
- navigate to assignments show page
- drag an assignment group
- the little arrow should turn to the right
- release the assignment group
- the little arrow should flip back down
- collapse an assignment group
- drag the group
- the little arrow should not turn
- release the assignment group
- the little arrow should not turn
- the assignment group should stay collapsed
Change-Id: I6b50802a35a163603c65a2c592ef14cab6667178
Reviewed-on: https://gerrit.instructure.com/25754
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
A CSS directive that renders the correct answer arrow already existed
but was not valid because it was trying to manipulate a parent (the
.answer_box element) which actually renders the background-image.
This patch necessarily modifies the rendering of the image to happen in
the innermost child (the img.answer_image) element so it can be
manipulated by the enclosing a.select_answer_link (on :focus) as well as
the enclosing .answer box (on .hover)
On the JS side, flagging an answer as the correct one will now remove
the .hover state from the previously hovered element. This is to address
the confusion this caused when flagging using a keyboard.
fixes CNVS-6547
-- Test plan
* create a quiz
* add a question with multiple answers
- hover over the answers, the "partial answer" (faded arrow) should appear
- choose some input field
- press TAB until you reach the next answer's "correct answer" arrow:
* the image should be rendered with a thin outline
- press RETURN
* the image should no longer be faded
* answer should be highlighted as the correct one
* answer under your mouse cursor should no longer be highlighted as
if hovered over
Change-Id: Iefe71e849a134a5757257c7f243cfa217a1ce67c
Reviewed-on: https://gerrit.instructure.com/25755
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Derek DeVries <ddevries@instructure.com>
QA-Review: Myller de Araujo <myller@instructure.com>
Product-Review: Derek DeVries <ddevries@instructure.com>
also fixes logger as undefined method
refs CNVS-8896
refs CNVS-8901
closes CNVS-9119
test plan
- have a course that has modules with progression rules
- two users enrolled in the course
- advance in the module progression
- merge the two users
- merge should work
Change-Id: Id047ea5bec6ca1fa2f2319c89caa4b1985277ff4
Reviewed-on: https://gerrit.instructure.com/25767
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>
fixes CNVS-9072
test plan:
- this is just a simple refactoring that moves around code but doesn't
add/remove anything
- quizzes should behave as they always have
Change-Id: I58e2686b64414786e57875999fd92a1ab118cd29
Reviewed-on: https://gerrit.instructure.com/25635
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Josh Simpson <jsimpson@instructure.com>
QA-Review: Myller de Araujo <myller@instructure.com>
Product-Review: Derek DeVries <ddevries@instructure.com>
test plan:
1. enable the new groups UI
2. use JAWS
3. w/ large_roster=false
1. use the widget/menu to assign a user to group
2. the menu activation link should read the user's name
3. the group link should read the group's name
4. w/ large roster=true
1. use the add-a-user widget
2. it should read the selected user's name
Change-Id: I7df2af4652053b10573f83260bcba13a484a1e04
Reviewed-on: https://gerrit.instructure.com/25733
Reviewed-by: Jon Jensen <jon@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Marc LeGendre <marc@instructure.com>
QA-Review: Marc LeGendre <marc@instructure.com>
test plan:
* change your user settings to Deutsch and Polski, and verify that the
new translations appear properly
Change-Id: Ia7a3decc10dbc85e987cae136818d8c982dc8e0f
Reviewed-on: https://gerrit.instructure.com/25832
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-9080
test plan:
* open calendar2 with agenda view enabled
* browse week/month/agenda views and different dates
* verify that the current date persists when changing views
* verify that the mini calendar follows the main calendar date
* verify that creating a new event defaults to the current date
* verify that the week view only has a current time indicator
when today is in the current week
* refresh your browser in each view
* verify that the current date is persisted
Change-Id: Idfbcf9e6826be091c1fcdb54fceec33fe52e4550
Reviewed-on: https://gerrit.instructure.com/25640
Reviewed-by: Braden Anderson <banderson@instructure.com>
QA-Review: Braden Anderson <banderson@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Braden Anderson <banderson@instructure.com>
test plan
- run delete_all_docs_for_user
- should delete ALL docs for user
Change-Id: Ieec5afd661238bde262c89ff26f6703142297450
Reviewed-on: https://gerrit.instructure.com/25845
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
closes PS-705
test pre-reqs:
1. canvas up to date
2. canvas delayed jobs running
3. you might want to go through
the test plan before checking
out this commit and generate a
report before this commit so
you have an old report to test
against
test plan:
1. create a course with a published quiz
that has a couple of questions in it
2. add a couple of students to the course
3. take the quiz with the students
4. click on the quiz as a teacher and
click Qui Statistics(right side)
5. click Generate Student Analysis(right side)
6. verify columns and rows and swapped and info
looks correct.
7. if you want to re-generate the student analysis report
you have to take the quiz again with a student
Change-Id: Id8e98e32eea568bce99a1275f0d7e66c14766386
Reviewed-on: https://gerrit.instructure.com/25764
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Adam Phillipps <adam@instructure.com>
QA-Review: Adam Phillipps <adam@instructure.com>
Reviewed-by: Brandon Broschinsky <brandonbr@instructure.com>
avoids warnings about DYLD_ env vars if you have those set
Change-Id: If3a5ea88727a64fa61dd7591a82f445b7491b042
Reviewed-on: https://gerrit.instructure.com/25833
Reviewed-by: Jacob Fugal <jacob@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
when the rubric data was an array of HashWithIndifferentAccess instead of
just Hash (which happens when the rubric is copied to another course), it
didn't have the comma in front of learning_outcome_id that was expected in the
FixOutOfSyncOutcomeAlignments data fixup.
fixes CNVS-9021
test plan:
*** before checking out this ***
- create a new learning outcome
- create rubric with the learning outcome
- import the rubric into another course using "Import Content" in course
settings
- add the rubric to an assignment
- note the id of the outcome you added to the rubric
- in the console, run the following command:
`ContentTag.where(:learning_outcome_id => <LO_ID_HERE>).
update_all(:workflow_state => 'deleted')'
- go to the outcome page and it will not list any alignments
- set up some other outcome alignments that are active, and others that are
deleted, that you would not expect to change
*** checkout the commit ***
- make sure delayed jobs ar running, and the UndeleteSomeOutcomeAlignments job
is not in the failed jobs list
- go to the first outcome page again, it should correctly list the alignments
(meaning they were restored) that you manually deleted from the second
course (the one you imported into) but not the original. This is okay, and
it's because we deleted all the outcome's alignments in the console. In
real data, only the alignments from the copied course would have been deleted.
- other alignments should not be touched
Change-Id: I524cc6a86483ea8beb6809fcc14653ef3ca711df
Reviewed-on: https://gerrit.instructure.com/25648
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Cameron Matheson <cameron@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
fixes CNVS-9058
test plan:
* in a rails console, run the following:
Setting.set('message_scrubber_limit', 7)
scrubber = MessageScrubber.new
scrubber.scrub_all
* verify that all delayed messages older than 7 days
have been deleted and that messages newer than 7 days
still exist. you can do this by running the following:
# this should be 0
DelayedMessage.where('send_at < ?', scrubber.limit).count
# this should be > 0 (assuming you have recent
# delayed_messages)
DelayedMessage.where('send_at > ?', scrubber.limit).count
Change-Id: I5e641a3825d22b732730abb7176f5ad7c9283550
Reviewed-on: https://gerrit.instructure.com/25642
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Hannah Bottalla <hannah@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: Zach Pendleton <zachp@instructure.com>
test plan
- upload a scribd doc
- owner should be canvas-ENV
Change-Id: Ide5c1f47aabfa91f7e10672c23a54da4c7b9322f
Reviewed-on: https://gerrit.instructure.com/25818
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
fixes CNVS-9124
test plan:
* in a course with students, create a new announcement
with at least 2 paragraphs;
* as a site admin, navigate to /users/:id/messages, where
:id is the ID of a student in the course;
* verify that the html email sent to the student displays
with only the line breaks included in the original
announcement.
Change-Id: Ib1d38cda51110e2b66cffb9dae652ad349721076
Reviewed-on: https://gerrit.instructure.com/25723
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Marc LeGendre <marc@instructure.com>
QA-Review: Marc LeGendre <marc@instructure.com>
Reviewed-by: Zach Pendleton <zachp@instructure.com>
test plan:
* upload a scribdable file
* run jobs in the background
* the file should preview quickly
Change-Id: I92fbb16a8c6affb95032e69930512a43a94a2d13
Reviewed-on: https://gerrit.instructure.com/25799
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Rob Orton <rob@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
fixes CNVS-9026
test plan:
- As a teacher, check or uncheck the 'weight final grade...' checkbox
in the assignment index page settings dialog
- save
- open the settings dialog again
- There should not be an empty dialog on top of the real dialog
- check or uncheck the box again and save
- open the settings dialog again and make sure the previous setting
has been preserved
- you should be able to repeat this behavior as many times as you like
- check the box and save (unless it was already checked)
- open the dialog, uncheck the box, and cancel
- open the dialog. The checkbox should be checked and the
group weights table should be visible
Change-Id: Idcc0e52e5ca74e7ee054f917ab30bb2883dbab9c
Reviewed-on: https://gerrit.instructure.com/25792
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Matthew Irish <mirish@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
test plan
- specs should pass
Change-Id: I37857a560d3159c77706bfc737e71c7ac62c3428
Reviewed-on: https://gerrit.instructure.com/25771
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
also force deleted_at to be utc
test plan
- delete a user
- the user should have deleted_at populated
- delete a quiz
- the quiz should have deleted_at populated
Change-Id: Ibf3442b832f648d754ac9959f053570bc8c06a19
Reviewed-on: https://gerrit.instructure.com/25585
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
fixes CNVS-9100
Test plan:
1) make an assignment in a course with 3 or more students
2) grade the first student in speedgrader
3) go to the student grades page as the second student in the
speedgrader dropdown
4) set a hypothetical score for the assignment in step 1
5) submit homework as the 3rd student
6) go to the speedgrader for the assignment
* the third student's submission should be displayed on load
Change-Id: If7d996abb0340041daf5eb1d5d9ceba19d9639dc
Reviewed-on: https://gerrit.instructure.com/25752
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Cameron Matheson <cameron@instructure.com>
refs CNVS-8282
test plan
- have scribd enabled
- upload a scribdable document with a custom scribd user
- document should be rendered with scribd
- delete all docs on scribd_side for that user
- should not impact documents previously uploaded to scribd with default user
Change-Id: Ia63c5c0d2576efc3607e504f8691add36c4a5b37
Reviewed-on: https://gerrit.instructure.com/25571
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Rob Orton <rob@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
fixes CNVS-9132
test plan:
* navigate to new conversations and open the new message
dialog;
* verify that the bulk message checkbox label now reads,
"Send individual messages" and that the tooltip reads,
"This will send an individual message to each of the
recipients"
Change-Id: I584c18072aadb37068f6f26cafbedb18890b55b6
Reviewed-on: https://gerrit.instructure.com/25734
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Marc LeGendre <marc@instructure.com>
QA-Review: Marc LeGendre <marc@instructure.com>
Product-Review: Zach Pendleton <zachp@instructure.com>
Reviewed-by: Zach Pendleton <zachp@instructure.com>
refs CNVS-9166
we'd already branched to do stuff for rails 3.0, but it changed again
between rails 3.0 and rails 3.2
Change-Id: Icd82422b1524f2b1df6f7ffc65eaed8fce6d8a6e
test-plan: N/A
Reviewed-on: https://gerrit.instructure.com/25729
Reviewed-by: Jacob Fugal <jacob@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>
QA-Review: Jacob Fugal <jacob@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>