Commit Graph

347 Commits

Author SHA1 Message Date
Cody Cutrer 3e27ddeae0 bundle update rubocop-performance, rubocop-rails
[skip-stages=Flakey]
[skip-crystalball]

99% of fixes are Performance/StringIdentifierArgument, but one or
two instances of each of Performance/Count, Performance/MapCompact,
Rails/Pluck in safe navigation chains

Change-Id: Ibd2292fb9e7c1e9162068021073c3c0f4b0d65df
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/335489
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Aaron Ogata <aogata@instructure.com>
Build-Review: Aaron Ogata <aogata@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
2023-12-18 20:28:02 +00:00
Cody Cutrer c32d30f662 bundle update rubocop
[skip-stages=Flakey]
[skip-crystalball]

and apply corrections from new/updated cops:

 * Layout
 * Lint/AmbiguousRange
 * Lint/RedundantSafeNavigation
 * Style/HashEachMethods
 * Style/HashSyntax
 * Style/InverseMethods
 * Style/RedundantLineContinuation
 * Style/RedundantParentheses
 * Style/RedundantReturn
 * Style/SuperWithArgsParentheses
 * Style/SymbolProc

Change-Id: I787e46f5b1c89e0fedebd5452ba74567d66954c1
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/334291
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Aaron Ogata <aogata@instructure.com>
Build-Review: Aaron Ogata <aogata@instructure.com>
Migration-Review: Aaron Ogata <aogata@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
2023-12-06 14:25:02 +00:00
Cody Cutrer 3d580338da use more idiomatic ruby for PaceService
* avoid purposely raising and rescuing ActiveRecord::RecordNotFound for simple
   control flow that you expect it to not be found often
 * don't name a class Interface when it's not an interface (it's just an
   abstract base class)
 * don't use a Factory class when it's really just a class method on said
   base class

Change-Id: I56e25c977f5dbe68ab527536bad4d75cd84291d7
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/333956
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Davis Hyer <dhyer@instructure.com>
QA-Review: Davis Hyer <dhyer@instructure.com>
Product-Review: Davis Hyer <dhyer@instructure.com>
2023-12-05 21:50:45 +00:00
Spencer Olson ac9a991d7e fix grading period presenter bug
Don't throw an error when provided with a bogus grading period id.

Test Plan:
- specs pass

Change-Id: I2d9cd872a02ff94a05f5742e959d0df69e53d07e
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/332437
Reviewed-by: Cameron Ray <cameron.ray@instructure.com>
Reviewed-by: Kai Bjorkman <kbjorkman@instructure.com>
Product-Review: Cameron Ray <cameron.ray@instructure.com>
QA-Review: Kai Bjorkman <kbjorkman@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2023-11-08 21:44:31 +00:00
Kai Bjorkman 1c40e83446 show pass/fail grade w/ restrict quantitative data
flag=restrict_quantitative_data
closes EVAL-3596

Test Plan:
Prerequisites: A Canvas course that has the Restrict view of
quantitative data setting enabled.
- In the course, create a Complete/Incomplete assignment.
- As a student, complete the assignment.
- After you submit as the student, navigate to the assignment submission
 page (For courses using assignment enhancements you will need to go to
 the URL directly, for courses not using assignment enhancements you can
 get here from the grades page after selecting the assignment)
- Ensure a complete or incomplete grade is displayed

Change-Id: Ibec456b980b5b727b58193f2ec9cb654a5b906a1
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/330782
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Derek Williams <derek.williams@instructure.com>
Reviewed-by: Cameron Ray <cameron.ray@instructure.com>
QA-Review: Derek Williams <derek.williams@instructure.com>
Product-Review: Ravi Koll <ravi.koll@instructure.com>
2023-10-26 18:28:29 +00:00
Derek Williams 24276bc1a5 coerce nil to zero when sorting assignments with nil position
the grade_summary_presenter can encounter a situation where the
context_module_tag.position is nil for an assignment. This causes
the sort to fail. This commit coerces nil to zero when sorting.

fixes EVAL-3581
flag=none

test plan:
- create a module in a course
- put two assignments with consecutive ids in the module
    - for example, assignment_with_id_1 and assignment_with_id_2 both
    in the same module
- give assignment_with_id_2 a context_module_tag.position of nil
    - Assignment.find(2).context_module_tags.first
    .update_column(:position, nil)
- act as a student in that course and visit the grades page
- change the 'Arrange By' field to 'Modules'
- ensure the page loads without error

Change-Id: I6d2516eb52ad449bc5e6de1233422c089a4170c6
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/330571
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Kai Bjorkman <kbjorkman@instructure.com>
Reviewed-by: Sleyder Zuleta <sleyder.zuleta@instructure.com>
QA-Review: Samuel Lee <samuel.lee@instructure.com>
Product-Review: Ravi Koll <ravi.koll@instructure.com>
2023-10-26 14:55:45 +00:00
Cody Cutrer cbcfaad422 bundle update rubocop
Change-Id: Ifdf9bc5694376dd37be073d17a6ef1ae42074add
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/330091
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Aaron Ogata <aogata@instructure.com>
Build-Review: Aaron Ogata <aogata@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
2023-10-11 14:30:59 +00:00
Spencer Olson 686701f8d6 display minus instead of en-dash
Changes the display of letter grades (e.g. "A-") to use the unicode
minus character (U+2212) instead of en-dash, so that screenreaders properly
read the grade (e.g. "A minus" instead of "A (pause)").

flag=none
closes EVAL-3344

Test Plan:
- On the following pages, verify displayed minus letter grades use the
  unicode minus character and are announced by screenreaders as
  "<the grade> minus":
  - global student grades page (/grades when a student is enrolled in more
    than one course)
  - student grades page
  - new student grades page (student_grade_summary_upgrade FF enabled)
  - A2 assignment page
  - SpeedGrader
  - Default Gradebook
  - Enhanced Individual Gradebook (individual_gradebook_enhancements
    enabled)
- On pages where letter grades can be input to grade a student (e.g.
  Gradebook + SpeedGrader), verify both types of input are accepted:
  - "<the grade><en-dash>" e.g. "B-"
  - "<the grade><minus>" e.g. "B−"

Change-Id: I3b8c4b48f198966d492900edbe6265cd98f311f3
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/327945
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Kai Bjorkman <kbjorkman@instructure.com>
Reviewed-by: Derek Williams <derek.williams@instructure.com>
QA-Review: Kai Bjorkman <kbjorkman@instructure.com>
Product-Review: Cameron Ray <cameron.ray@instructure.com>
2023-10-09 16:24:10 +00:00
Kai Bjorkman d57e3d3101 remove visibility_feedback_student_grades_page feature flag
flag=visibility_feedback_student_grades_page
closes EVAL-3086

[fsc-max-nodes=18] [fsc-timeout=40]

Test Plan:
    -specs pass

Change-Id: If2f48a57d0bca93ff970c4b5e820eb25ed55b1e1
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/326572
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
Reviewed-by: Samuel Lee <samuel.lee@instructure.com>
QA-Review: Kai Bjorkman <kbjorkman@instructure.com>
Product-Review: Cameron Ray <cameron.ray@instructure.com>
2023-09-20 15:43:08 +00:00
Samuel Lee 28929d9a45 fix concluded observers unable to view grades
fix where observers with concluded enrollments are unable to view
grades of linked students who are also concluded

closes EVAL-3319
flag=none

test plan:
- have a course with an enrolled student and an observer linked to that
  student
- conclude the enrollment for both the observer and the student
- go to Prior Enrollments and act as the observer
- go to the grades page and see that it does not give the unauthorized
  error and instead shows the grades page for the student

Change-Id: If6bd9e250f2bb02f4d1449f65803bd6a2e1f40ee
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/325927
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Jackson Huang <jackson.huang@instructure.com>
Product-Review: Ravi Koll <ravi.koll@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
Reviewed-by: Kai Bjorkman <kbjorkman@instructure.com>
2023-09-12 16:37:37 +00:00
Eric Saupe b011fb30bf Handle missing student enrollments
fixes LF-525
flag=course_paces_for_students

test plan:
- Have a course with course pacing and module items and a student
- Go to the course pacing page for students
- While the page is loaded in another tab or the console remove the
student enrollment
- Publish a pace for the student enrollment that was deleted
- Verify no error report was generated and no assignment overrides were
made for the student
- Refresh the course pacing page and verify the enrollment is not there
and there is no error

Change-Id: Id65cb9feeaed59cf7edc083ba77fd27819cfa541
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/324311
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Mysti Lilla <mysti@instructure.com>
Reviewed-by: Luis Oliveira <luis.oliveira@instructure.com>
QA-Review: Jacob DeWar <jacob.dewar@instructure.com>
Product-Review: Eric Saupe <eric.saupe@instructure.com>
2023-08-09 15:52:10 +00:00
rohan.chugh 023033c689 render custom grade status pills on grades page
adds support for rendering custom grade status pills on the student
grades page

closes EVAL-3242

flag=grading_scheme_updates
flag=custom_gradebook_statuses

test plan:
- add a custom grade status to a student's submission for an
  assignment
- go to that student's grades page
- verify that the submission with the custom status has a pill in the
  status column of the grades page that has the status's name and is
  gray
- do the same but for an assignment that is considered dropped
  and verify that the assignment has both the dropped indicator
  (slightly transparent/grayed out) and also the custom status
- to add rules for dropping grades, go to the assignments tab, click
  the 3 dots for an assignment GROUP (not an individual assignment),
  click edit, and set "Lowest Scores" to something greater than 0

Change-Id: I50f71396ebcea493b4707cacf0cbde1748816b90
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/324156
Reviewed-by: Christopher Soto <christopher.soto@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
QA-Review: Christopher Soto <christopher.soto@instructure.com>
Product-Review: Sam Garza <sam.garza@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2023-08-04 16:08:38 +00:00
Matheus f85c4142cf Ignore invalid module_item_ids passed for MarkDonePresenter
fixes LF-453
flag = none

test plan:
- request a path and query param like as:
/courses/<course_id>/assignments/<assignment_id>?module_item_id=somerandomstring
- ensure you see the assignment regardless of the invalid item_id

Change-Id: I8c30fcbc91ca2a9e255cb6253bb0100616de9651
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/322208
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jacob DeWar <jacob.dewar@instructure.com>
QA-Review: Jacob DeWar <jacob.dewar@instructure.com>
Product-Review: Luis Oliveira <luis.oliveira@instructure.com>
2023-07-07 19:56:34 +00:00
Jacob Burroughs 7dcc507d0a Rubocop for ruby 3.1
[skip-stages=Flakey]

Change-Id: I6abefdfa9fed6dd4525c8786e93efa548b3710f2
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/319603
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Isaac Moore <isaac.moore@instructure.com>
QA-Review: Jacob Burroughs <jburroughs@instructure.com>
Product-Review: Jacob Burroughs <jburroughs@instructure.com>
Build-Review: Jacob Burroughs <jburroughs@instructure.com>
Migration-Review: Jacob Burroughs <jburroughs@instructure.com>
2023-06-06 16:44:26 +00:00
Kai Bjorkman 4e947d89cd filter out hidden quizzes in gradebooks
flag=hide_zero_point_quizzes_option
closes EVAL-3051
closes EVAL-3052
closes EVAL-3053

Test Plan:
    - turn hide_zero_point_quizzes_option FF ON
    - create a new quiz and set it's points possile to 0 and
    select the checkbox that appears underneath labled "Do not display
    in gradebook or the student's grade page"
    - Navigate to the traditional gradebook and ensure that there is
    NOT a column shown for that quiz
    - Navigate to the individual gradebook and ensure that there is
    NOT an entry in the assignment dropdown for that quiz
    - Navigate to the student grades page as a student assigned to this
    quiz and ensure that there is NOT a row in the grades for that quiz
    - ensure the quizzes are still visible on the quizzes index page and
    assignments index page
    - turn hide_zero_point_quizzes_option FF OFF
    - Navigate to the traditional gradebook and ensure that there is now
    a column for that quiz
    - Navigate to the individual gradebook and ensure that there is
    an entry in the assignment dropdown for that quiz
    - Navigate to the student grades page as a student assigned to this
    quiz and ensure that there is a row in the grades for that quiz

Change-Id: I348d9ba6347315f61d46f1637a8cb0f7376ec1db
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/318429
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Cameron Ray <cameron.ray@instructure.com>
Reviewed-by: Derek Williams <derek.williams@instructure.com>
QA-Review: Derek Williams <derek.williams@instructure.com>
Product-Review: Sam Garza <sam.garza@instructure.com>
2023-05-24 21:14:47 +00:00
Cody Cutrer 502aa068da rubocop: Layout/Multiline*LineBreaks
[skip-stages=Flakey]

Change-Id: I24912809267088bc19a4082c49bc5f78ca7b76bb
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/317302
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jacob Burroughs <jburroughs@instructure.com>
Build-Review: Jacob Burroughs <jburroughs@instructure.com>
Migration-Review: Jacob Burroughs <jburroughs@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
2023-05-01 19:31:42 +00:00
Jackson Howe dd35ce331b Add font setting to profile/dashboard_cards APIs
closes LS-3972
flag = k5_font_selection

Test plan:
 - GET /api/v1/dashboard/dashboard_cards
 - Expect useClassicFont to be present and to reflect each course's
   font selection
 - GET /api/v1/users/self/profile
 - Expect use_classic_font_in_k5 to be present and to reflect the
   font that the current user sees on the dashboard

Change-Id: I590cf9295682e83571bde3a28c29ff7e22b9076c
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/316931
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Luis Oliveira <luis.oliveira@instructure.com>
QA-Review: Luis Oliveira <luis.oliveira@instructure.com>
Product-Review: Jackson Howe <jackson.howe@instructure.com>
2023-04-25 19:18:56 +00:00
Cody Cutrer 1d3d9ed499 rubocop: fix miscelleneuos violations in prep of bumping rubocop
Change-Id: I9d37303737f00d6e022cb8fc08726e293a7336ab
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/315166
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jacob Burroughs <jburroughs@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
2023-04-12 19:26:13 +00:00
Cody Cutrer b2b0bff902 rubocop: Style/TernaryParentheses, Style/RedundantParentheses
[skip-stages=Flakey]

Change-Id: I8d860eedd8b199ed3adf0e2bf9162b43096c5347
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/315130
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Aaron Ogata <aogata@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
Build-Review: Cody Cutrer <cody@instructure.com>
2023-04-12 14:56:48 +00:00
Cody Cutrer 99de4c3bdd rubocop: Style/SafeNavigation
Change-Id: I8e563a80cfd5df985fad024bfbf260ff457f8972
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/315163
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jacob Burroughs <jburroughs@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
2023-04-10 20:57:10 +00:00
Nicolas Thomaz Bueno abb2dbd357 add method to User to query courses while not ignoring access
fixes EVAL-2807
flag=none

Test Plan:
Prerequisites: 3 public Courses, each with 1 assignment; 1 student,
 that all courses have enrolled and has grades in all the assignments
 of all courses;

- As the student , go to any course > grades
	- You shoud be able to see all courses and the student's grades
	for each of them.
- As admin, choose one course, hereby referred as Restricted, and go
 to its settings.
	- Set Participation to "Course", and the period to the past.

Change-Id: Ic225f0d4dbcd62ba7dde1154e30b97a09989fd44
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/311294
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
Reviewed-by: Kai Bjorkman <kbjorkman@instructure.com>
QA-Review: Cameron Ray <cameron.ray@instructure.com>
Product-Review: Sam Garza <sam.garza@instructure.com>
2023-03-09 18:47:45 +00:00
August Thornton 1e0ee0640e guard from bogus query param values for MarkDonePresenter
fixes FOO-3297
flag = non

test plan:
• request a path and query param such as:
/courses/<course_id>/assignments/<assignment_id>?module_item_id[%27;PP=29191205
• ensure it doesn't blow up

Change-Id: Ic7c80ccd065d0fc91156eea324261c15cf167e48
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/308259
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Charley Kline <ckline@instructure.com>
Product-Review: Charley Kline <ckline@instructure.com>
QA-Review: August Thornton <august@instructure.com>
2023-01-06 17:38:28 +00:00
Jonathan Guardado 55096f9317 Fix: Endless loading spinner on course updates
When updating the course, e.g start/end dates, all of the contexts
seem to get recreated, and that executes the publish pace job for
each context and leaves the app in an endless loading scenario; this
PS fixes the issue handling that syncing correctly.

Fixes LS-3671
flag=course_paces_redesign

test plan:
- Add several students and sections to a course with the course
pacing.
- Do some changes in a pace context and expect the inline loading
spinner to appear when closing the modal
- in a separate tab, go to the course settings and change the
course's end date.
- Go back to the pacing page and expect to see the loading spinners
- Expect the loading spinner to disappear when the jobs finish.

Change-Id: I5167eb1ca0c25ff2f749602eb93c5e08292d02ce
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/308000
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Jonathan Guardado <jonathan.guardado@instructure.com>
Reviewed-by: Robin Kuss <rkuss@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
2023-01-03 23:15:28 +00:00
Jonathan Guardado c14f0e76d9 Inline loading spinner for background publishing jobs
- A new loading spinner in the “Last Modified” column to indicate the
pace is being published
- Sync Redux with active pace publishing jobs on app initialization

closes LS-3538, LS-3634
flag=course_paces_redesign

test plan:
1- With the course_paces_redesign flag enabled
2- Create a course with several sections and students
3- Enable course pacing in the course and add a module
4- Go to the course pacing page and create the default pace
5- Notice the page does not get the blank space in the container, and
the pace contexts table is immediately shown
6-Create a section pace and close the modal as soon as the close
button gets enabled
7-Notice the spinner in the “last modified” column for the section you
are publishing
8-Repeat steps 6 and 7 for students
9-Notice that when the jobs finish the affected rows get updated and
an alert appears indicating the context and the action e.g.
“Student 1 Pace created”

- Sync on mount
1-Make the jobs get queued or take much time to complete
2-Create or update some paces
3-Notice the loading spinner for all of the paces
4-Notice that the spinners persist when switching between sections
 and students
5-Refresh the page and expect to see the loading spinner in the paces
publishing

Change-Id: Iccb923a780ed4423fac6ed5f33816b406bbf3119
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/307527
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Jonathan Guardado <jonathan.guardado@instructure.com>
Reviewed-by: Robin Kuss <rkuss@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
2022-12-19 18:17:54 +00:00
Luis Oliveira a449870e11 Course pace default heading fetch rework
closes LS-3563
flag=course_paces_redesign

test plan:
- Enable course_paces_redesign flag
- Enable course pacing on a course
- Go to course pacing page
- Evaluate the pace heading appearence
- Save a default pace of a week and some days
- Reevaluate the pace hading appearence
  (weeks and days in duration should
  be all lowercase)

Change-Id: I6f0653e829637c6bc71ed9d50e962204664cb29b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/304172
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Robin Kuss <rkuss@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
Product-Review: Luis Oliveira <luis.oliveira@instructure.com>
2022-10-28 13:18:07 +00:00
Jackson Howe 2cb99aad94 Refactor direct share permissions
Add a new policy block to the Course model to centrally manage
direct share permissions. Renames can_content_share? to
can_view_content_shares? for clarity, since the ability to use
direct share depends on the context. Includes the granular
manage_course_content_add permission in the check to ensure
direct share still works after that feature is enabled.

flag = none
closes LS-3547

Test plan:
 - Specs pass
 - Spot check the following locations to make sure direct share works
   for authorized users only:
   - /profile/content_shares
   - course modules
   - course assignments
   - course quizzes
   - course discussions
   - course pages
   - course files

Change-Id: I0957076f58be859f75d0b874524c83877a0d804e
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/304155
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Luis Oliveira <luis.oliveira@instructure.com>
QA-Review: Luis Oliveira <luis.oliveira@instructure.com>
Product-Review: Jackson Howe <jackson.howe@instructure.com>
2022-10-27 20:36:27 +00:00
paulo.chaves df736a8f95 Add blue dot to unread grade
- Blue dot styling refactor
- Add specs for unread grade, comment and rubric on grade summary
- Doesn't show the blue dot if submission is not posted
- Remove unread grade blue dot after 5 seconds
- Fix blue dot position if a RTL lang is selected

closes EVAL-2542
flag=assignments_2_student
flag=visibility_feedback_student_grades_page

Test Plan:
  - Enable the "Assignment Enhancements - Student" feature flag
  - Enable the "Improve Feedback on Students Grade Page" feature flag
  - Have a course with at least two students
  - Have a published assignment (post grades - automatically)
  - As a student submit the assignment
  - As a teacher grade the student
  - As a student, when landing on the grades page the blue dot
    shows up on the grade
    - That blue dot should disappear after 5 seconds
    - If the page is reloaded the blue dot should be gone because
      the grade is marked as read when the user views the grade
    - And if the teacher changes the grade the blue dot should
      appear again.

  - Have a published assignment (post grades - manually)
  - As a student submit the assignment
  - As a teacher grade the student
  - As a student, when landing on the grades page, you
    should see no blue dot on the grade

Change-Id: I7f40137049ca00bb69cd0b50129b13f6cc6af19c
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/302822
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
Reviewed-by: Cameron Ray <cameron.ray@instructure.com>
Reviewed-by: Aaron Shafovaloff <ashafovaloff@instructure.com>
QA-Review: Cameron Ray <cameron.ray@instructure.com>
Product-Review: Deborah Kwak <deborah.kwak@instructure.com>
2022-10-18 14:37:05 +00:00
Davis Hyer 8b3ab3c0d0 support fetching 'student_enrollment' pace contexts
fixes LS-3518
flag=course_paces_redesign

test plan:
  - specs pass

qa risk: low

Change-Id: I83698a9df5b15f87a6bed66741ab014a0ddb681d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/303228
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Luis Oliveira <luis.oliveira@instructure.com>
QA-Review: Luis Oliveira <luis.oliveira@instructure.com>
Product-Review: Davis Hyer <dhyer@instructure.com>
2022-10-17 15:06:49 +00:00
Davis Hyer 417c37312a support fetching 'section' pace contexts
fixes LS-3517
flag=course_paces_redesign

test plan:
  - specs pass

qa risk: low

Change-Id: Icc5967c79f13e7b3fff7a8a0be92afefdb3030e2
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/303066
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Luis Oliveira <luis.oliveira@instructure.com>
QA-Review: Luis Oliveira <luis.oliveira@instructure.com>
Product-Review: Davis Hyer <dhyer@instructure.com>
2022-10-12 19:30:21 +00:00
Davis Hyer 51edbf424c support fetching "course" pace contexts
fixes LS-3516
flag=course_paces_redesign

test plan:
  - specs pass

qa risk: low

Change-Id: I185d93d48308b1f4100571fb79e4ee1f94972477
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/302972
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Eric Saupe <eric.saupe@instructure.com>
QA-Review: Eric Saupe <eric.saupe@instructure.com>
Product-Review: Davis Hyer <dhyer@instructure.com>
2022-10-11 18:43:09 +00:00
paulo.chaves 7be5f27609 Show the feedback in comments tray
flag=assignments_2_student
flag=visibility_feedback_student_grades_page
Closes EVAL-2401

Test plan:
  - Have an assignment
  - As the student submit
  - As the teacher leave comments on the submission
  - As the student load the grades page
  - The comments icons should be visible for the assignment
  - Clicking on the comments icon should open the tray
  - With tray open, clicking on the blue comments icon takes
    the student to the submissions detail

Change-Id: I4e78500d07fb34e103d62c35b82289244506e83b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/301354
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Kai Bjorkman <kbjorkman@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
Reviewed-by: Paulo Chaves <paulo.chaves@instructure.com>
QA-Review: Kai Bjorkman <kbjorkman@instructure.com>
Product-Review: Deborah Kwak <deborah.kwak@instructure.com>
2022-10-10 20:25:52 +00:00
paulo.chaves 89aa10da04 Set badge count for changes at assignment level
Badge Count increments whenever there's any change at the assignment level

Add rubrics info to the badge count in the grades menu

flag=assignments_2_student
flag=visibility_feedback_student_grades_page
Closes EVAL-2445
Closes EVAL-2541

Test plan:
  - Enable the "Assignment Enhancements - Student" feature flag
  - Enable the "Improve Feedback on Students Grade Page" feature flag
  - Have a course with at least two students
  - Have an assigment with peer review enabled
  - Assign students to peer review each other
  - As the student A submit the assignment
    - 1. As a teacher, grade the student's A submission
      - As the student A go the grades page
      - Badge count on Grades should show up
      - Now refresh the page. Badge count should be gone
    - 2. As a teacher, leave a comment on the student's A submission
      - As the student A go the grades page
      - Badge count on Grades menu should be visible
      - A blue dot on the comments icon shoud display
      - Refresh the page. Badge count and blue dot should still be visible
      - Click on the comments icon
      - Refresh the page. Badge count and blue dot should not display
    - 3. As a teacher, add a rubric assessment (with comment or points)
         to the students A submission through SpeedGrader
      - As the student A go the grades page
      - Badge count on Grades menu should be visible
      - A blue dot on the rubric icon shoud display
      - Click on the rubric icon
      - Refresh the page. Badge count and blue dot should not display
    - 4. As a teacher, via SpeedGrader, add a rubric assessement and
         leave a comment on the submission
      - As the student A go the grades page
      - Badge count on Grades menu should be visible
      - A blue dot on the rubric icon and comments icon shoud display
      - Click on the rubric icon
      - Refresh the page. Badge count should still be visible but the
        blue dot is now only on the comments icons

Change-Id: I966d8cb2470509536d7c8a7cc81abdbf17a35ae5
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/302162
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
Reviewed-by: Derek Williams <derek.williams@instructure.com>
QA-Review: Kai Bjorkman <kbjorkman@instructure.com>
Product-Review: Deborah Kwak <deborah.kwak@instructure.com>
2022-10-07 17:44:04 +00:00
Davis Hyer f0a8469d59 introduce student enrollment pace api
refs LS-3459
flag=course_paces_redesign

test plan:
  - specs pass

qa risk: low

Change-Id: I1647bac1c0e0970217a21cf9be1d73cfe4d6ac5f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/302054
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Eric Saupe <eric.saupe@instructure.com>
QA-Review: Eric Saupe <eric.saupe@instructure.com>
Product-Review: Davis Hyer <dhyer@instructure.com>
2022-09-29 18:31:01 +00:00
Davis Hyer 939745cd78 introduce sections pace api
refs LS-3459
flag=course_paces_redesign

This is the first pass introducing an api specific to each type of
course pace. The section specifics still have some work to be done,
namely permissions on the controller.

test plan:
  - tests pass

qa risk: low

Change-Id: I2ecbd21d5bb141e3e8e3c1227c14ec59f13b63f2
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/301584
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Eric Saupe <eric.saupe@instructure.com>
QA-Review: Eric Saupe <eric.saupe@instructure.com>
Product-Review: Davis Hyer <dhyer@instructure.com>
2022-09-26 19:18:49 +00:00
Jacob Burroughs 65f96f9dd4 Call update_score_statistics_in_singleton correctly
Turns out we changed the parameter in the couple years this pr sat around...

Change-Id: I1d481ec85bdacd0619a6f658d3ecd9619dcd0965
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/296794
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Keith Garner <kgarner@instructure.com>
QA-Review: Jacob Burroughs <jburroughs@instructure.com>
Product-Review: Jacob Burroughs <jburroughs@instructure.com>
2022-07-22 14:00:49 +00:00
Jacob Burroughs 75b82ebdd6 Improve score details and grade statistics
Adds median and quartile calculations, and uses them to generate a
proper box and whiskers plot.

fixes GH-1871
fixes GH-1139

flag = enhanced_grade_statistics

test plan:
- Grade an assignment for at least 5 students
- Verify the student view score details show median and quartile
  numbers
- Verify the box plot matches those numbers and looks reasonable

Change-Id: I6ce4b792a112eed72df095503a6f4e82da2912c1
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/242741
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
Reviewed-by: Aaron Shafovaloff <ashafovaloff@instructure.com>
QA-Review: Aaron Shafovaloff <ashafovaloff@instructure.com>
Product-Review: Jody Sailor
Migration-Review: Jeremy Stanley <jeremy@instructure.com>
2022-07-20 13:24:01 +00:00
Jonathan Guardado 51ba5ad6ba Use the correct permission for Direct Share
This PS changes the permission used for direct share, instead of
using read_as_admin now manage_content will be used, as it’s described
in the documentation

flag= none
closes LS-3222

Test Plan:
- Create a course with an assignment, announcement, discussion,
page, quiz and module

- Create a custom role based on the teacher role.

- Enroll a user to the course using the custom role you just created

- As the enrolled user go to the course and notice that the “Send To”
and “Copy To” options appear as usual for the course contents
you created in the step 1

- As Admin disable the “Course Content - add / edit / delete”
permission on the custom role you created.

- As the user with the custom role, go to the course and expect not
to see the “Send To” and “Copy To” options in any of the course
content

- Conclude the course.

As the user with the custom role, go to the course and expect
to see the “Send To” and “Copy To” options in all the course
contents

Change-Id: I6ad3fb9371a536d04f68fe08cfeb87168c56eb28
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/294557
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Jonathan Guardado <jonathan.guardado@instructure.com>
Reviewed-by: Luis Oliveira <luis.oliveira@instructure.com>
QA-Review: Luis Oliveira <luis.oliveira@instructure.com>
2022-06-27 21:58:13 +00:00
Jacob Burroughs 5dcd66d8c6 Some rails 7 tests passing
Change-Id: Iad400936d7e53a5f92644f260c95bfb5bf9e972f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/293144
QA-Review: Jacob Burroughs <jburroughs@instructure.com>
Product-Review: Jacob Burroughs <jburroughs@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: August Thornton <august@instructure.com>
Reviewed-by: Alex Slaughter <aslaughter@instructure.com>
Migration-Review: Alex Slaughter <aslaughter@instructure.com>
2022-06-06 14:23:03 +00:00
Ethan Knapp 947fc1b84a add 'extended' late_policy_status
flag=extended_submission_state
[fsc-max-nodes=15]
[fsc-timeout=45]

refs PFS-19811

Change-Id: Ia151a868913e6cd1d3998e0602595509b45b16d9
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/290850
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Petra Ashment <pashment@instructure.com>
Product-Review: Jody Sailor
Reviewed-by: Spencer Olson <solson@instructure.com>
Reviewed-by: Kai Bjorkman <kbjorkman@instructure.com>
2022-05-31 16:58:35 +00:00
paulo.chaves 0790fac9f3 Add region around icon and show blue dot
closes EVAL-2323, EVAL-2324
flag=visibility_feedback_student_grades_page

test plan:

- Have a graded assignment with comments and
  a rubric
- With the FF on:
  - Go to the students grade page
  - If there is any comment for an assignment
    - There should be a gray region around the
      comment icon and the number of comments
      right next to the icon
    - If any unread comment for an assignment
      the blue dot should show up in the
      top-right corner
  - If there is any rubric for an assignment
    - There should be a gray region around the
      rubric icon
    - If a comment is added and unread by
      a student the blue dot should show up
      in the top-right corner
- With the FF off:
  - Go to the students grade page
  - If any comment is present only the icon
    without the gray region surrounding it
    should appear
  - if any rubric is present only the icon
    without the gray region should appear

Change-Id: I5f3a303c1ab2e14796c75fceb0706476a11b77e2
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/289708
Reviewed-by: Eduardo Escobar <eduardo.escobar@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
QA-Review: Eduardo Escobar <eduardo.escobar@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Jody Sailor
2022-05-27 22:00:15 +00:00
Kai Bjorkman b5ba5809e5 revert score to quiz icon instead of 0
flag=none
closes EVAL-2365

For quizes that are still pending a final grade from the instructor
should revert back to the quiz icon instead 0 when trying "what-if"
scores.

Test Plan:
    - Create Quiz with at least one essay question
    - Take that quiz as a student
    - As that student, view the grades page
    - Ensure you see a quiz icon in place of the score for the quiz
      just taken
    - Try a "What if" score for the quiz and revert the score
    - Ensure the "what-if" score is replaced with the quiz icon
      along with the same tool tip message that was shown before the
      score was entered

Change-Id: I6ae19f06285f9925f8ca28fc65d4a9a928901f96
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/291619
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Paulo Chaves <paulo.chaves@instructure.com>
Reviewed-by: Aaron Shafovaloff <ashafovaloff@instructure.com>
QA-Review: Aaron Shafovaloff <ashafovaloff@instructure.com>
Product-Review: Jody Sailor
2022-05-16 17:48:31 +00:00
paulo.chaves abd5853d1f Show out of value with Score
closes EVAL-2322
flag=visibility_feedback_student_grades_page

test plan:

- Have some graded assignment
- With the FF on:
  - Go to the students grade page
  - There should not be a `Out of` column
  - The `Score` column should now show the
    score with the format `Score/Points possible`
- With the FF off:
  - Go to the students grade page
  - There should be a `Score` column
  - There should  be a `Out of` column

Change-Id: Ibde7fa54e1ba20ae46d50fcc0480ab9f8c9c9723
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288867
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
Reviewed-by: Eduardo Escobar <eduardo.escobar@instructure.com>
QA-Review: Eduardo Escobar <eduardo.escobar@instructure.com>
Product-Review: Jody Sailor
2022-04-19 14:55:10 +00:00
August Thornton f2b33f6ec1 add granular permissions for managing course content
closes FOO-129
flag = granular_permissions_manage_course_content
[ignore-stage-results=Flakey Spec Catcher]
[pin-commit-migration_tool=81b53ef64a966e3ba68e952dcef833cc51581ebf]

Test plan:
• Exercise (Smoke Test) the following areas of Canvas:
   • Announcements
   • Assignments
   • Assignments --> blackout dates
   • Calendars
   • Collaborations
   • Conferences
   • Content Imports
   • Content Migrations
   • Viewing and deleting allowable course content i.e.
      [
        all_discussion_topics assignment_groups assignments
        collaborations context_modules enrollments groups
        quizzes rubrics wiki_pages rubric_associations_with_deleted
      ]
   • Context Modules
   • Courses - updating
   • Courses - link validation
   • Courses - visibility (LTI / K5 Dashboard student sections)
   • Courses - ability to manage concluded courses
   • Course Paces
   • Course Tabs
   • Discussion Topics
   • Wiki Pages
• Enable "Granular permissions for managing course content" FF
  • Test the same areas of Canvas above, but mixing and matching
    different permissions for allowable roles i.e. add / edit / delete

Change-Id: I59956d453e523694e0cbc34292ad2e84529fb87d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/287576
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Ahmad Amireh <ahmad@instructure.com>
Migration-Review: Jacob Burroughs <jburroughs@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: August Thornton <august@instructure.com>
2022-04-11 20:53:27 +00:00
Ed Schiebel 4529300ee2 Compress course pace dates if projected end is after pace end
- we no longer require hard_end_dates to be part of the calculation.
- when a course ends at midnight, we end the pace at fancy midnight
  the day before

closes LS-3057
flag=course_pacing

test plan:
  - in a course with an end date
  - have a course pace
  - increase an assignment duration to push the last assignment's
    due date beyone the course end date
  > expect the dates to be compressed to fit
    - NOTE: it may be 1 day late, but that's coming from the api
  > expect the "weeks | days" to stop incrementing when we
    start compressing
  - switch to a student plan
  > expect the due dates to be the same (be sure to check with
    a compressed pace)
  - look at the last assignment in the pace
  > expect the due date for the course students to be the end of
    the day shown in the pace.

Change-Id: Ibb13e3f0d00b99da5d9dee5d0ebca52ad4e60ea7
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/288309
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Robin Kuss <rkuss@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2022-04-01 15:06:12 +00:00
Ed Schiebel 426a6e97d9 Update pace plans header for new design
- remove the Show Projections button
- show static text for dates
- move "x Assignments | y weeks" to its new location

refs LS-3008
flag=course_pacing

test plan:
  - in a course in the default term  with a pace plan
    (doesn't have to be the default term, but know that
     you can't have a specified term with missing start or
     end dates, so those tests have to be run for the course
     dates only)

  *** for the course plan ***
  - in settings, set participation to Term or Course but leave
    start and end dates empty
  > expect today as the start date
  > expect the last assignment's due date as the end date

  - give the course or term a start date
  > expect the course or term start to be the start date
  . expect the last assignment's due date as the end date

  - give the course a start and end date
  > expect the course or term start to be the start date
  > expet the term or course to be the end date

  - give the course a end date only
  > expect today as the start date
  > expect a Course or Term completion as the end date

  - switch to a student plan
  - redo the above
  > expect the start date to always be
    the student enrollment date
  > expect the end date to always be determined by
    course pacing

Change-Id: I11cbd8c460dffdda94d161c62d8e97c468db442e
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/287160
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Eric Saupe <eric.saupe@instructure.com>
QA-Review: Eric Saupe <eric.saupe@instructure.com>
Product-Review: Jody Sailor
2022-03-21 18:17:43 +00:00
Eric Saupe 6ba814bed7 Refactor PacePlan to CoursePace
fixes LS-2989, LS-2988
flag=pace_plans

test plan:
- Specs should pass
- Enable the course paces account feature flag
- Enable the course paces setting on a course
- All current pacing related features should work as expected

Change-Id: Ibd1d9f3295f624a3f2411c72ad5ace9410d965ca
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/286519
Migration-Review: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Eric Saupe <eric.saupe@instructure.com>
Reviewed-by: Robin Kuss <rkuss@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2022-03-15 19:10:16 +00:00
Spencer Olson 3af42f8ec7 fix viewing grades for deactivated students
closes EVAL-2180
closes EVAL-2176
flag=none

Test Plan 1 (no grading period):
1. Give a student a few grades, and then (still as a teacher) go to the
   individual grades page for that student
   (/courses/:course_id/grades/:student_id). Notice that you can see
   their grades
2. Deactivate the student
3. Still as the teacher, go back to the individual grades page for that
   student. Notice that you can still see their grades.

Test Plan 2 (grading periods):
1. In a course using grading periods, give a student a few grades, and
   then (still as a teacher) go to the individual grades page for that
   student (/courses/:course_id/grades/:student_id). Select a grading
   period from the dropdown on the page, and then click "Apply". Notice
   that you can see their grades
2. Deactivate the student
3. Still as the teacher, go back to the individual grades page for that
   student. Select a grading period from the dropdown on the page, and
   then click "Apply". Notice that you can see their grades

Edge case testing:
- Make sure you can still see grades at that page for active and
  concluded stuents
- Students themselves should be able to see grades at that page if
  they are active or concluded (but not if they are deactivated)

Change-Id: I62421aae369a9a1257c212359d94d4df35f75f4f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/282544
QA-Review: Eduardo Escobar <eduardo.escobar@instructure.com>
Product-Review: Jody Sailor
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Eduardo Escobar <eduardo.escobar@instructure.com>
Reviewed-by: Dustin Cowles <dustin.cowles@instructure.com>
2022-02-16 17:56:03 +00:00
Cody Cutrer c2cba46851 RuboCop: Style/StringLiterals, Style/StringLiteralsInInterpolation
[skip-stages=Flakey]

auto-corrected

Change-Id: I4a0145abfd50f126669b20f3deaeae8377bac24d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/279535
Tested-by: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
Migration-Review: Cody Cutrer <cody@instructure.com>
Reviewed-by: Jacob Burroughs <jburroughs@instructure.com>
2021-11-25 14:03:06 +00:00
Cody Cutrer e73cf9ddf4 RuboCop: Style/HashSyntax
[skip-stages=Flakey]

auto-corrected

Change-Id: I9371a61046aee6b148f89dd434114a8ba2b1188c
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/279533
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
Migration-Review: Cody Cutrer <cody@instructure.com>
Reviewed-by: Jacob Burroughs <jburroughs@instructure.com>
2021-11-25 14:02:35 +00:00
Cody Cutrer eaca556b81 RuboCop: Style/NumericLiterals
[skip-stages=Flakey]

auto-corrected

Change-Id: I88363d87d5a70be941aa81b4ffe5306ce7506b98
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/279207
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jacob Burroughs <jburroughs@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
Migration-Review: Cody Cutrer <cody@instructure.com>
2021-11-24 23:31:34 +00:00