Commit Graph

33 Commits

Author SHA1 Message Date
Cody Cutrer a81944a73a rails 6: s/update_attributes/update/g
Change-Id: Ie137c1040260b363979160e1f0558883577ebebd
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222510
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
2020-01-09 20:56:35 +00:00
James Williams 37e5d6079a use cache_register to clear todo list cache for admins
should reduce updates on users table every time
a submission is made

also remove touch_students on course change
since their caches should already be handled by the
 enrollments cache_key

refs #CORE-2851

Change-Id: I5769cc5408bc0c9639c60c692cd3e117861b5bb1
Reviewed-on: https://gerrit.instructure.com/193902
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
2019-05-20 16:41:57 +00:00
Clay Diffrient a2666fe453 Add specific labels to the global navigation trays
closes CORE-2117

Test Plan:
  - Using screenreader go through the global navigation
    trays.
  - They should say things like "Courses tray" rather than
    "Global navigation tray"

Change-Id: Ic5f992ace58a66029cc91765b0e7c60440e4616b
Reviewed-on: https://gerrit.instructure.com/173002
Tested-by: Jenkins
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
QA-Review: Tucker Mcknight <tmcknight@instructure.com>
Product-Review: Clay Diffrient <cdiffrient@instructure.com>
2018-11-28 17:43:50 +00:00
Ryan Shaw ff47063268 don't load the stream items on dashboard until needed
closes: CORE-114

make it so the dashboard
only loads the dashboards by default and only loads
the stream items via ajax when you say you want them.

test plan:
* load your dashboard
* it should load faster than it did before (especially
  for a user in a lot of classes with a lot of activity)
* click the toggle to see the "stream item view"
* it should show a spinner then load your stream items
* click any expand or collapse links on the stream items,
  those should still work
* click the toggle a few more times, it should not
  re-load the stream items

Change-Id: Id3b79ec30a238d13949a6f209d34d22669c1c64e
Reviewed-on: https://gerrit.instructure.com/89235
Tested-by: Jenkins
Reviewed-by: Mysti Sadler <mysti@instructure.com>
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
QA-Review: Ed Schiebel <eschiebel@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
2018-08-23 19:11:21 +00:00
Spencer Olson 3fa322b7e3 remove moderate_grades permission checks
changes checks for :moderate_grades permissions to instead call
Assignment#permits_moderation?

closes GRADE-1227

Test Plan:
1. Verify only the final grader or an admin with select_final_grade
   permission can give final provisional grades.
2. General smoke test on the Grade Summary page (logged in as final
   grader and logged in as admin) and in SpeedGrader (logged in as
   final grader, logged in as admin, and logged in as provisional
   grader) for moderated assignments.

Change-Id: If039cc36c373097bab81993335b5f2306f90b17e
Reviewed-on: https://gerrit.instructure.com/155973
Reviewed-by: Adrian Packel <apackel@instructure.com>
Reviewed-by: Gary Mei <gmei@instructure.com>
Tested-by: Jenkins
QA-Review: Adrian Packel <apackel@instructure.com>
Product-Review: Keith T. Garner <kgarner@instructure.com>
2018-07-31 15:04:22 +00:00
Neil Gupta 6a659fbaa8 stop using anonymous moderated marking feature flag
fixes GRADE-976

test plan:
* Make sure the AMM flag is off
* All AMM features should be visible and work
* The Anonymous Marking and Moderated feature flags should be visible
* Toggling the AMM feature flag should do nothing

Change-Id: Ie0c52c23748389c6f5df5b85e8580bdf474c0a52
Reviewed-on: https://gerrit.instructure.com/152067
Reviewed-by: Adrian Packel <apackel@instructure.com>
Tested-by: Jenkins
Reviewed-by: Derek Bender <djbender@instructure.com>
QA-Review: James Butters <jbutters@instructure.com>
Product-Review: Keith T. Garner <kgarner@instructure.com>
2018-06-12 20:58:47 +00:00
Ryan Shaw 465b36270c [instui 3->4] upgrade navigation_header
Closes: CORE-750

This replaces all the code for the global nav tray
That pops out when you select “courses” “groups” “Help” or your avatar.
It replaces react-tray with InstUI tray and uses instUI components
wherever possible. that means that we need much less custom one-off
css for these things and can just use the instui defaults most of the
time.

Test plan:
* do a regression test on each of the  global nav trays that pops out
  when you select “courses” “groups” “Help” or your avatar

Change-Id: Ib32c6cc9e091ec5cbdbc19ced9fbbd5e2e4bae8f
Reviewed-on: https://gerrit.instructure.com/135354
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
2018-02-21 20:10:41 +00:00
Rob Orton 377d4f0ceb validate dates on assignment model
fixes CNVS-41165

test plan
 - should allow updating due date to invalid lock
   range if lock range is also updated

Change-Id: I928918be6079e431ac38d471a68ed86a6991201d
Reviewed-on: https://gerrit.instructure.com/139788
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Reviewed-by: Landon Gilbert-Bland <lbland@instructure.com>
QA-Review: Venk Natarajan <vnatarajan@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2018-02-06 16:57:48 +00:00
Landon Wilkins 9893976560 da licença part 64
add consistent license headers to all source files

Change-Id: I4e4ec218aeff4f00ab67da80f57d980733902361
Reviewed-on: https://gerrit.instructure.com/110315
Tested-by: Jenkins
Reviewed-by: Landon Wilkins <lwilkins@instructure.com>
Reviewed-by: Jon Jensen <jon@instructure.com>
Product-Review: Jon Jensen <jon@instructure.com>
QA-Review: Jon Jensen <jon@instructure.com>
2017-05-01 21:26:37 +00:00
Stephen Jensen 1bf8c61633 Roll up toggle settings into dropdown
Closes: CNVS-33353

Test Plan:
- Navigate to the dashboard
- In the top right, instead of a toggle switch, there
  should now be a cog
- Selecting the cog should trigger a popover menu
  containing Dashboard View options
- Choosing 'Recent Activity' should change to the
  recent activity feed
- If you refresh the page, you should still be on
  the recent activity feed
- Selecting 'Recent Activity' while on the recent
  activity feed should have no effect
- Selecting 'Dashboard Cards' should take you back
  to the card dashboard
- If you refresh the page, you should still be on
  the dashboard cards
- Selecting 'Dashboard cards' while on the dashboard
  card view should have no effect

Change-Id: Ib0ce704dbc5c030274401d1b7bdfd13ec4b73be8
Reviewed-on: https://gerrit.instructure.com/97185
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Dan Sasaki
Product-Review: Kyle Follett <kfollett@instructure.com>
2017-03-20 19:02:52 +00:00
Jon Jensen 037783f7fa don't include unnecessary modules into Object, fixes SD-2013
also add a cop to prevent it in the future

Change-Id: Ic949cc4448f546736aa3aeee17fc1fc33a1f2808
Reviewed-on: https://gerrit.instructure.com/99847
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: Jon Jensen <jon@instructure.com>
QA-Review: Jon Jensen <jon@instructure.com>
2017-01-18 19:20:00 +00:00
MFairbourn 8f283f52cb spec: add test for dashboard test: 56003
Test Plan:
- Code Review
- Pass Jenkins

Change-Id: Id8e0223ce6b185e732bac75f35c64363c02d5ef6
Reviewed-on: https://gerrit.instructure.com/98827
Tested-by: Jenkins
Reviewed-by: Pedro Fajardo <pfajardo@instructure.com>
Product-Review: Matt Fairbourn <mfairbourn@instructure.com>
QA-Review: Matt Fairbourn <mfairbourn@instructure.com>
2017-01-05 16:22:54 +00:00
Cody Cutrer 9708254396 bump authlogic, scrypt, and bcrypt-ruby
Change-Id: Ic4816f70d1dfa5a0ee0759e24481da0714ce4938
Reviewed-on: https://gerrit.instructure.com/92636
Tested-by: Jenkins
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
2016-10-27 15:58:32 +00:00
James Williams d9f87ab1a9 turn new ui feature flag on
test plan:
* make sure that canvas new ui isn't broken

closes #CNVS-31214

Change-Id: I30b20f709e481abf1518e71afe108cfcca475e46
Reviewed-on: https://gerrit.instructure.com/83926
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Tested-by: Jenkins
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Colleen Palmer <colleen@instructure.com>
2016-08-24 20:33:37 +00:00
Jennifer Stern 669b1fac27 Add help subnavigation panel to global navigation
Refs: CNVS-28038

Test Plan:
- enable the help link in the rails console:
  `Setting.set('show_feedback_link', 'true')`
- enable new ui
- verify that when you clik on the 'help' link in the global nav, the links
display in a navigation tray.
- verify that the create ticket and teacher feedback forms work fine
  (within the tray).
- verify that there is no change to the 'help' dialog when launched from
  the login page or the speedgrader.
- verify that there is no change to the 'help' dialog when launched with
  old ui.

Change-Id: If455bc198fca89a2bf242a8230b30dc8ddfc234d
Reviewed-on: https://gerrit.instructure.com/84116
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Jennifer Stern <jstern@instructure.com>
QA-Review: Pierce Arner <pierce@instructure.com>
2016-08-08 21:15:52 +00:00
Landon Wilkins 82e6977a7f spec: make have_class wait, refs SD-1145
test plan:
* specs pass

Change-Id: I2afa9f13c6e1cee5c12e3ac35e48f234c33ef4fd
Reviewed-on: https://gerrit.instructure.com/80269
Tested-by: Jenkins
Reviewed-by: Jon Jensen <jon@instructure.com>
Product-Review: Jon Jensen <jon@instructure.com>
QA-Review: Jon Jensen <jon@instructure.com>
2016-05-27 16:17:39 +00:00
Ryan Shaw 04efb8c02d spec: fix more specs that fail when newUI is on
refs: CNVS-29532

ENV['CANVAS_FORCE_USE_NEW_STYLES'] is true in the
jenkins hourly NewUI only build. so each of these
were failing there.

as far as the formatting of these changes, I tried
to do it in a way to make it so the process of
removing the oldUI code path this summer is explicit,
easy and clear.

Change-Id: I05def03b73cca235ee0919cc86f01410ef51f4f1
Reviewed-on: https://gerrit.instructure.com/80533
Tested-by: Jenkins
Reviewed-by: Matt Fairbourn <mfairbourn@instructure.com>
Product-Review: Matt Fairbourn <mfairbourn@instructure.com>
QA-Review: Matt Fairbourn <mfairbourn@instructure.com>
2016-05-24 22:44:19 +00:00
Ryan Shaw c45fa9f564 spec: fix some specs that fail when newUI is on
refs: CNVS-29532

ENV['CANVAS_FORCE_USE_NEW_STYLES'] is true in the
jenkins hourly NewUI only build. so each of these
were failing there.

as far as the formatting of these changes, I tried
to do it in a way to make it so the process of
removing the oldUI code path this summer is explicit,
easy and clear.

Change-Id: Icb4653c2b5a32a28d192fe228ad8b480a25423bd
Reviewed-on: https://gerrit.instructure.com/80203
Tested-by: Jenkins
Reviewed-by: Robert Lamb <rlamb@instructure.com>
Product-Review: Robert Lamb <rlamb@instructure.com>
QA-Review: Robert Lamb <rlamb@instructure.com>
2016-05-23 22:10:29 +00:00
Jon Jensen 3d4c568111 spec: fix flaky text expectations, refs SD-1145
and misc cleanup on surrounding lines

notes:
* include_text now only works on elements, not strings
* include_text now waits
* include_text barfs if you wrap it in a redundant keep_trying_until

Change-Id: I164cb8177aecc1fee92053a5468dfdfaf26c7576
Reviewed-on: https://gerrit.instructure.com/79780
Reviewed-by: Landon Wilkins <lwilkins@instructure.com>
Tested-by: Jenkins
Product-Review: Jon Jensen <jon@instructure.com>
QA-Review: Jon Jensen <jon@instructure.com>
Reviewed-by: Jon Jensen <jon@instructure.com>
2016-05-18 16:12:25 +00:00
Jon Jensen 717680037e spec: rework negative dom assertions
fixes SD-1063, speeds up :allthethings:

negative DOM assertions are 💩, but if we must have them, make them
more tolerable. the old way:

  expect(f(".something-that-should-be-gone")).to be_nil
  expect(fj("buhleeted:visible")).to be_nil
  expect(fln("Can't Click Here Anymore").to be_nil

the new way:

  expect(container).not_to contain_css(".something-that-should-be-gone")
  expect(container).not_to contain_jqcss("buhleeted:visible")
  expect(container).not_to contain_link("Can't Click Here Anymore")

(you can of course use these new matchers for positive assertions as well)

although it's a tad more verbose, the new way is better because:

1. it's smart enough to bail once the assertion is met (versus the old way
   which would take 10-20 seconds to not find the thing and *then* run the
   assertion)
2. it requires them to be scoped, to reduce the likelihood of false
   positives (e.g. if the page is totally broken, then of course the
   assertion would pass)

also reworked the various flash message assertions... see the new
expect_flash_message and expect_no_flash_message

this should remove over an hour of linear time off the build (10 sec per
old assertion, except fj ones which took 20 sec)... so like a minute of
actual time, cuz parallelization :P

a consequence of this change is that f/fj/ff/ffj now raise if nothing is
found, so you really have to go out of your way to do it the bad way. so
don't :)

Change-Id: I0fe6e8500947c27d748b70bb2cda585edf71e427
Reviewed-on: https://gerrit.instructure.com/78420
Tested-by: Jenkins
Reviewed-by: Landon Wilkins <lwilkins@instructure.com>
Product-Review: Landon Wilkins <lwilkins@instructure.com>
QA-Review: Landon Wilkins <lwilkins@instructure.com>
2016-05-03 20:05:46 +00:00
Deepeeca Soundarrajan 518f1bf952 spec: Add spec for dashboard stream item
Change-Id: Ib78971b35039092bb45d582371f3210371478f5e
Reviewed-on: https://gerrit.instructure.com/74016
Tested-by: Jenkins
Reviewed-by: August Thornton <august@instructure.com>
Product-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
2016-03-09 21:14:38 +00:00
Alex Boyd 0b3b12f1b2 Focus on the todo list header after ignoring the first item
Fixes CNVS-26584

Test plan:
 - Have some items in your todo list
 - Ignore the first one
 - Ensure that focus jumps to the "To Do" header

Change-Id: I07f90a38c4afb6ed67b293459917edbf15f8aea4
Reviewed-on: https://gerrit.instructure.com/70740
Reviewed-by: Joel Hough <joel@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Tested-by: Jenkins
Product-Review: Alex Boyd <aboyd@instructure.com>
2016-02-24 20:22:42 +00:00
Alex Boyd 7799495aa3 Redesign the To-Do, Coming Up, and Recent Feedback lists
Fixes CNVS-25877

Test plan:
 - Create a user with:
   - an assignment that needs to be submitted
   - an assignment that needs to be graded
   - an assignment whose grades the user needs to moderate
   - an assignment that they need to peer review
   - a calendar event that they can see
 - Go to the user's home page
 - Ensure all of the assignments show up in the to-do list
 - Ensure they show up in Coming Up as well
 - Ensure that the calendar event shows up under Coming Up
 - Go to the courses where you created the assignments
 - Ensure that each assignment shows up on its respective course to-do
   list
 - Submit an assignment
 - As a teacher, ensure that the assignment shows up as needing
   grading, and that the number in the badge to the left is 1
 - Ensure that screenreaders read the badge as "1 submission
   needs grading"
 - Make another submission as a different user
 - Clear the cache by running `Rails.cache.clear` at a Rails console
 - As the teacher, ensure that the badge is now 2
 - Ensure that screenreaders read the badge as "2 submissions
   need grading"
 - Repeat 8 more times as different users, so that there are now
   10 submissions
 - Clear the cache again
 - Ensure that the badge now says "9+"
 - Ensure that screenreaders read the badge as "More than 9
   submissions need grading"
 - As the user who submitted the assignment, ensure that the grade
   shows up on the To-Do list, Coming Up, and Recent Feedback
 - As a teacher, leave a submission comment
 - As the user who submitted the assignment, ensure that the comment
   shows up under Recent Feedback
 - Create a public course
   - You can make a course public by going to its settings page
     and checking "Make this course publicly visible"
 - Log out
 - Visit /courses/<id>, where <id> is the id of the course
 - Ensure that the course shows as expected, and that nothing
   shows up on the to-do list
 - Automated tests should cover everything else

Change-Id: I18673995db94d896bf2c39515258e61065b48319
Reviewed-on: https://gerrit.instructure.com/69474
Reviewed-by: Andrew Butterfield <abutterfield@instructure.com>
QA-Review: Heath Hales <hhales@instructure.com>
Tested-by: Jenkins
Product-Review: Allison Weiss <allison@instructure.com>
2016-01-19 19:52:16 +00:00
Jeremy Stanley 9dd3aaccc9 remove moderated_grading feature flag
test plan:
 - ensure the "Moderate Grades" permission is available
 - ensure the Moderated Grading assignment setting is available
   and persists across course copy
 - sanity check the Moderated Grading workflow to ensure all
   the pieces are still there

fixes CNVS-25080

Change-Id: I490a837f93b5ca35e57469c4411e09f2eb6f411c
Reviewed-on: https://gerrit.instructure.com/69121
Tested-by: Jenkins
Reviewed-by: James Williams  <jamesw@instructure.com>
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
2015-12-23 03:29:21 +00:00
Heath Hales 3fc8030a26 spec: add relative path to dashboard_spec, dashboard_teacher_spec
Change-Id: I0f6ebab7a97a9a7b158c76c3f05d20108c6c96b1
Reviewed-on: https://gerrit.instructure.com/69210
Tested-by: Jenkins
Reviewed-by: Gentry Beckmann <gbeckmann@instructure.com>
Product-Review: Gentry Beckmann <gbeckmann@instructure.com>
QA-Review: Gentry Beckmann <gbeckmann@instructure.com>
2015-12-21 20:47:17 +00:00
Heath Hales 2aeaf453e4 Spec: 108723, 108725 - Stream Items - Published Assignments
Change-Id: I8151b765d370d639396da9f2fdc844122e7a19de
Reviewed-on: https://gerrit.instructure.com/69105
Tested-by: Jenkins
Reviewed-by: Jahnavi Yetukuri <jyetukuri@instructure.com>
Product-Review: Robert Lamb <rlamb@instructure.com>
QA-Review: Robert Lamb <rlamb@instructure.com>
2015-12-17 17:24:07 +00:00
James Williams 6cf008fd48 moderated grading todo items for moderators
test plan:
* create a moderated assignment
* make a provisional grade
* the assignment should show up in the
todo list for the moderator
 to "Moderate X" and take them to the
 assignment moderation page
* the todo item should be ignoreable
 (either permanently or until a mark is created/changes)

closes #CNVS-23307

Change-Id: I7007ba948e688ca5864a0d851c153a288bef4233
Reviewed-on: https://gerrit.instructure.com/64734
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
Product-Review: Cosme Salazar <cosme@instructure.com>
2015-10-08 16:26:27 +00:00
cguanzon 35b9cae005 spec:selenium: in-process server selenium tests is now a context
- reasoning: this group contains set-up and teardown,
  it does not include 'it' blocks

Change-Id: I1803420a5c7f59246f3af211e42ced808a994c3f
Reviewed-on: https://gerrit.instructure.com/60329
Tested-by: Jenkins
Reviewed-by: Matt Fairbourn <mfairbourn@instructure.com>
Product-Review: Matt Fairbourn <mfairbourn@instructure.com>
QA-Review: Matt Fairbourn <mfairbourn@instructure.com>
2015-08-07 23:24:00 +00:00
Steven Shepherd 784c37f4eb Add priorities and test ids to remaining dashboard rb files
Test Plan:
  - Run Specs

Change-Id: Id5da404dff25653e3f4b97732fe25d780bc11597
Reviewed-on: https://gerrit.instructure.com/57424
Tested-by: Jenkins
Reviewed-by: Jahnavi Yetukuri <jyetukuri@instructure.com>
Product-Review: Steven Shepherd <sshepherd@instructure.com>
QA-Review: Steven Shepherd <sshepherd@instructure.com>
2015-06-30 15:46:54 +00:00
Clay Diffrient 5c5baf1113 Fix a11y with the ignore feature of the To Do list
fixes CNVS-19205

Test Plan:
   - Add a submission to a course that needs grading.
   - As a teacher of the course go to your dashboard
   - In the to do list, use a SR to access the menu that
     pops up with the Ignore "X".
   - You should be able to navigate it without problem
   - The same behavior should occur from the course
     home page.
   - For keyboard only, focus should go to the previous
     ignore "X" if it is there.
   - If a previous ignore "X" isn't available, it should
     go to the view calendar link.

Change-Id: I8e8297dc41ac8af69131ef748f25f169541c2958
Reviewed-on: https://gerrit.instructure.com/50278
Reviewed-by: Dan Minkevitch <dan@instructure.com>
Tested-by: Jenkins
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Clay Diffrient <cdiffrient@instructure.com>
2015-03-23 20:43:31 +00:00
James Williams d8bfdc0e9b show assignments needing to be graded only to instructors
also a touch of refactoring

test plan:
* create a course with a student, teacher and designer
* also create an assignment

* as the student, submit to the assignment
* as the teacher, should be able to see the assignment in
 the "To Do" list on the right-hand side of the dashboard
* as the designer, should *not* be able to see it

closes #CNVS-8059

Change-Id: I97b61bf857a1cf84c71597ffdd3c816023b84dd5
Reviewed-on: https://gerrit.instructure.com/50063
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
2015-03-11 13:51:59 +00:00
Cody Cutrer d86e09fee1 rspec 3-ify spec/selenium
refs CNVS-16239

Change-Id: I483dd42326d14a2a2645103600cfa242ca7f1fa8
2014-10-15 19:27:10 -06:00
Matt Wheeler 3ce8c5a8fd Split dashboard selenium specs out into four files
Refs CNVS-15688

One each for the main dashboard, teacher dashboard, todo section,
and coming up sections.

Test Plan:

Verify that all 4 files run in under two minutes each, on Jenkins.

Change-Id: I417eeb43a1c80a5134295459555b26e4a34e0231
Reviewed-on: https://gerrit.instructure.com/41578
Reviewed-by: Brad Horrocks <bhorrocks@instructure.com>
Product-Review: Matthew Wheeler <mwheeler@instructure.com>
QA-Review: Matthew Wheeler <mwheeler@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
2014-09-23 18:24:49 +00:00