Commit Graph

109 Commits

Author SHA1 Message Date
Cody Cutrer 6d82a64c24 moar preloads
refs CORE-1541

Change-Id: I51967c0eebcd4dc6f9282dd9e8b3934dafb62aca
Reviewed-on: https://gerrit.instructure.com/160315
Reviewed-by: Rob Orton <rob@instructure.com>
Tested-by: Jenkins
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
2018-08-10 17:28:38 +00:00
James Williams f6c31682bb include blueprint_course_id in sis export
test plan:
* set up some blueprint courses with associated courses
 all with sis ids
* run a sis export report
* it should have the blueprint_course_id set
 on associated courses

closes #CORE-1678

Change-Id: I3ad184272ffa1c77968b36aca852fbafa1f20da6
Reviewed-on: https://gerrit.instructure.com/159355
Tested-by: Jenkins
Reviewed-by: Rob Orton <rob@instructure.com>
QA-Review: Rohan Cheeniyil <rcheeniyil@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
2018-08-09 20:13:06 +00:00
Cody Cutrer 7090d7675c rails 5.2: s/success/successful/g
Change-Id: I5d5c67cd659dfad035dfb5415549a8924b66fabc
Reviewed-on: https://gerrit.instructure.com/159211
Tested-by: Jenkins
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
2018-08-06 15:03:41 +00:00
James Williams 59257b8f33 limit user_observer csv reports run on sub-accounts
test plan:
* have a student and observer link set up
 (e.g. through sis csv or /profile/observees)
* create a sub-account
* from that sub-account, perform a sis provisioning report
 including "user observers"
* it should not include the user observer link unless
 the student is in a course in the sub-account

closes #CORE-1650

Change-Id: I0eae5cc725db5643ed19a238a597a0e4a3b4005a
Reviewed-on: https://gerrit.instructure.com/158133
Tested-by: Jenkins
Reviewed-by: Rob Orton <rob@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
2018-07-25 13:26:55 +00:00
Augusto Callejas 466088fc8a Use default ratings and points
closes OUT-2218

test plan:
  - in a new course, import the CSV file attached to the JIRA ticket
  - align the newly created outcome to an assignment
  - submit to the assignment
  - confirm that a score appears in the LMGB
  - confirm that a score appears in the sLMGB

Change-Id: I5d013b2e74369a23c9922059734c86d0328dea08
Reviewed-on: https://gerrit.instructure.com/155468
Reviewed-by: Frank Murphy <fmurphy@instructure.com>
Tested-by: Jenkins
QA-Review: Dariusz Dzien <ddzien@instructure.com>
Product-Review: Sidharth Oberoi <soberoi@instructure.com>
2018-07-05 21:04:54 +00:00
Jeremy Neander 46baf56c97 spec: change locale used in translation example
test plan:
 * Verify Jenkins passes

Change-Id: I0ad8ceda5c35183a4ad503b616e922cb735731f2
Reviewed-on: https://gerrit.instructure.com/153234
Reviewed-by: Nicholas Pitrak <npitrak@instructure.com>
Tested-by: Jenkins
Product-Review: Jeremy Neander <jneander@instructure.com>
QA-Review: Jeremy Neander <jneander@instructure.com>
2018-06-10 14:41:28 +00:00
Michael Brewer-Davis 834d967ee7 resolve outcome import/export errors
closes OUT-2219

Test plan:
- Verify that the CSV files included in the ticket
  import without error
- Verify that the account outcomes export correctly
  after the files included in the ticket have been
  imported
- Create a valid outcomes CSV file with only the following
  fields: vendor_guid, object_type, title
  and verify that it imports correctly
- Verify that account outcomes export correctly
  after the minimal file has been imported

Change-Id: I94d48be26bb12930c9355ebfc38f928860249ba9
Reviewed-on: https://gerrit.instructure.com/151822
Reviewed-by: Frank Murphy <fmurphy@instructure.com>
Reviewed-by: Matt Berns <mberns@instructure.com>
Tested-by: Jenkins
QA-Review: Augusto Callejas <acallejas@instructure.com>
Product-Review: Sidharth Oberoi <soberoi@instructure.com>
2018-06-05 13:30:48 +00:00
Frank Murphy 956ba180ad Hide points in outcomes reports when necessary
Fixes OUT-2135

Test Plan:
- Create a course level outcome.
- In the course, create an assignment with a rubric containing the
  outcome as a criterion.
- In the rails console, set the hide attributes on the
  rubric association:
  > RubricAssociation.last.update(hide_points: true,
    hide_outcome_results: true)
- As a student, submit to the assignment.
- As a teacher, grade the assignment in speedgrader, giving points to
  the outcome in the rubrics.
- In account settings, run the "Outcome Export" report.
- Verify that the "outcome score", "learning outcome points possible",
  "learning outcome mastery score", and "learning outcome rating points"
  fields are all blank for the assignment you took.
- In account settings, run the "Student Competency" report.
- Verify that the "outcome score", "learning outcome points possible",
  "learning outcome mastery score", and "learning outcome rating points"
  fields are all blank for the outcome you created.

Change-Id: I5859552795dcdfd3420b034638529fe6bf1130e1
Reviewed-on: https://gerrit.instructure.com/148318
Tested-by: Jenkins
Reviewed-by: Augusto Callejas <acallejas@instructure.com>
QA-Review: Andrew Porter <hporter-c@instructure.com>
Product-Review: Sidharth Oberoi <soberoi@instructure.com>
2018-05-02 21:54:48 +00:00
Rob Orton 09e5557450 use the cross listed course for enrollments
fixes CORE-1294

test plan
 - add enrollment to cross listed course
 - run sis export

Change-Id: I12de33df66272bd1bc8c28f63e24c20d7ed1fc64
Reviewed-on: https://gerrit.instructure.com/146837
Tested-by: Jenkins
Reviewed-by: James Williams  <jamesw@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2018-04-18 22:00:22 +00:00
Rob Orton 13a0f66420 make grade export report per enrollment
fixes CORE-1276

test plan
 - have a user with two pseudonyms
 - it should have one line in grade export report

Change-Id: I7e3dbb45905371f18f89ee1546830d41b56937fa
Reviewed-on: https://gerrit.instructure.com/146259
Tested-by: Jenkins
Reviewed-by: James Williams  <jamesw@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2018-04-09 19:14:17 +00:00
James Williams 35c3239432 make user observation links specific to root accounts
test plan:
* use the User Observees API to link and unlink
 students and observers - noting the additional
 optional 'root_account_id' argument
 and the returned 'observation_link_root_account_ids'
 value
* user observation links (user_observers) should
 behave similar to before (especially in the majority
 of cases where users and observers are associated
 with a single account), with the exception that
 only courses in linked root accounts will
 automatically add the observer

closes #CORE-1065 #CORE-1066

Change-Id: I056596c022b373cd93519ae2773f9bb1023613eb
Reviewed-on: https://gerrit.instructure.com/143124
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
2018-04-05 16:58:51 +00:00
Michael Jasper fd852dc1f4 Account Reports exported files go to inst-fs
closes RECNVS-372

test-plan
- enable account reports in account plugins
- navigate to account>settings>reports and select a report
- after the report is generated, verify that the download comes from
  inst-fs not canvas

Change-Id: I8d89fcf4889610bfd4a4ee10e7b09958553ab504
Reviewed-on: https://gerrit.instructure.com/145193
Reviewed-by: Jonathan Featherstone <jfeatherstone@instructure.com>
Tested-by: Jenkins
QA-Review: Collin Parrish <cparrish@instructure.com>
Product-Review: Michael Jasper <mjasper@instructure.com>
2018-04-05 03:33:54 +00:00
Rob Orton e1b9a42062 create parallel report runners
fixes CORE-1240

test plan
 - run account report using parallel runner
 - it should work

Change-Id: Ib0e8480e53d65b7e5b7f4d3c3f2f36c7d283fb52
Reviewed-on: https://gerrit.instructure.com/145605
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
2018-04-04 19:16:44 +00:00
Frank Murphy 2233d6f347 Remove canvas_id from export, use vendor_guid on import
Fixes OUT-2052

Test Plan:
- Create an outcomes tree under an account, with nested outcomes.
- Export the account outcomes.
- Create a new course under the prior account.
- Import outcomes into that account.
- The outcome tree should be fully imported.

Change-Id: Ifbf886a65a307b4c45f9c28ca92c19f0bcb16c06
Reviewed-on: https://gerrit.instructure.com/145408
Tested-by: Jenkins
Reviewed-by: Matt Berns <mberns@instructure.com>
Reviewed-by: Augusto Callejas <acallejas@instructure.com>
Reviewed-by: Michael Brewer-Davis <mbd@instructure.com>
QA-Review: Leo Abner <rabner@instructure.com>
Product-Review: Sidharth Oberoi <soberoi@instructure.com>
2018-04-02 15:33:34 +00:00
Augusto Callejas 2eef78084c Display numbers using account locale
closes OUT-2063

test plan:
  - in canvas, create an account outcome that has
    large values with a decimal value for mastery
    points and highest rating, like 1000.2 and
    1000000.3, respectively
  - in account settings, select "Svenska" as the
    "Default Language"
  - run an outcome export (under setttings, select
    the "Rapporter" tab, then its the "Utkomst-export"
    report)
  - download and open the csv file
  - confirm that points appear with locale-specific
    separator and delimiter, like "1 000,2"

Change-Id: Ib418c8788daf4d0bb75424dd613e2d94d2f63a68
Reviewed-on: https://gerrit.instructure.com/144745
Reviewed-by: Neil Gupta <ngupta@instructure.com>
Tested-by: Jenkins
Reviewed-by: Michael Brewer-Davis <mbd@instructure.com>
QA-Review: Andrew Porter <hporter-c@instructure.com>
Product-Review: Sidharth Oberoi <soberoi@instructure.com>
2018-03-26 21:43:07 +00:00
Rob Orton 837a42d36b actually set start_at for account_reports
fixes CORE-1194

test plan
 - run any account report
 - the start_at should be populated

Change-Id: I6c2635a3106b753da1f20e93518748aa8dc4c181
Reviewed-on: https://gerrit.instructure.com/144546
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
Tested-by: Jenkins
2018-03-22 22:36:12 +00:00
James Williams 2b0f57c560 rename user_observer/observee classes/associations
for my sanity because it's too confusing to actually refactor

closes #CORE-1140

Change-Id: I445e0edeb3fde76ffd02a467180ee7a83d916067
Reviewed-on: https://gerrit.instructure.com/143538
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
QA-Review: James Williams  <jamesw@instructure.com>
2018-03-14 19:51:49 +00:00
Tucker McKnight 13104f8028 spec: Change some variable names for readability
Change-Id: Iebb7330024e147c8341c1c7026cbb90eaf1b6d58
Reviewed-on: https://gerrit.instructure.com/140741
Tested-by: Jenkins
Reviewed-by: Mysti Sadler <mysti@instructure.com>
Product-Review: Tucker McKnight <tmcknight@instructure.com>
QA-Review: Tucker McKnight <tmcknight@instructure.com>
2018-03-03 02:10:37 +00:00
Adrian Packel eadda8c12a return empty hash for missing score in MGP report
In the MGP report, when a Score object for a given enrollment/grading
period does not exist, return an empty hash instead of an array to avoid
an error.

fixes GRADE-869

Test plan:
- Set up a course with multiple grading periods and enroll some students.
- Identify a student in the course.
- In the Rails console, manually delete one of that student's Score
  objects associated a grading period in the course, using an approach
  such as:

    > course = Course.find_by(name: <your course name>)
    > gp = GradingPeriod.find_by(title: <your grading period name>)
    > student = User.find_by(name: <your student name>)
    > enrollment = Enrollment.find_by(course: course, user: student)
    > Score.find_by(enrollment: enrollment, grading_period: gp).destroy!

- Run the MGP report for that course and make sure it completes
  without incident.
  (If you ran the report without applying this patchset, you would
  see a "no implicit conversion of Symbol into Integer" error in the
  delayed job logs and the report would not complete.)
- In the output, locate the row for the relevant user and course.
  The values grade/score values for the relevant grading period should
  be empty.

(When you're done, you can call "undestroy" on the Score object above to
restore it to its previous state and avoid any potential weirdness.)

Change-Id: Ic163428a19a052e3f5540e040a290247c66b8380
Reviewed-on: https://gerrit.instructure.com/141748
Tested-by: Jenkins
Reviewed-by: Keith T. Garner <kgarner@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
QA-Review: Anju Reddy <areddy@instructure.com>
Product-Review: Keith T. Garner <kgarner@instructure.com>
2018-02-28 16:43:52 +00:00
Michael Brewer-Davis b861e06122 add outcomes export
closes OUT-1837

Basic test plan:
- Create account outcomes in an account
- From the Account Settings/Reports tab, export
  outcomes
- Verify the exported CSV matches expectations

Variations:
- nested outcome groups
- outcomes in multiple outcome groups
- global outcomes in account groups
- exporting outcomes from subaccount
- including account outcomes in subaccount
  and exporting subaccount

Change-Id: I03c6e4b7b69e91a4e1c68f4242a596719ac12858
Reviewed-on: https://gerrit.instructure.com/140209
Tested-by: Jenkins
Reviewed-by: Augusto Callejas <acallejas@instructure.com>
QA-Review: Andrew Porter <hporter-c@instructure.com>
Product-Review: Sidharth Oberoi <soberoi@instructure.com>
2018-02-15 21:19:38 +00:00
Tucker McKnight 36466d282e spec: Formatting on CSV tests
Change-Id: I6fa750b466553f3948934cee1cadb90bbd381220
Reviewed-on: https://gerrit.instructure.com/140705
Tested-by: Jenkins
Reviewed-by: Robert Lamb <rlamb@instructure.com>
Product-Review: Robert Lamb <rlamb@instructure.com>
QA-Review: Robert Lamb <rlamb@instructure.com>
2018-02-15 00:04:32 +00:00
Tucker McKnight be9e7dc741 spec: add tests for viewing zero activity report for a term
Change-Id: Id3ce44744d0a3d2acccc15893883a10430fcc705
Reviewed-on: https://gerrit.instructure.com/139962
Tested-by: Jenkins
Reviewed-by: Robert Lamb <rlamb@instructure.com>
Product-Review: Robert Lamb <rlamb@instructure.com>
QA-Review: Robert Lamb <rlamb@instructure.com>
2018-02-09 23:59:01 +00:00
Michael Brewer-Davis dd7b7d71be add fields to outcomes reports
closes OUT-1573

adds
- section name/id/sis id
- assignment url
- outcome friendly name/points possible/mastery score/mastered
- account id/name
to Student Competency report and Outcome Results report

Test plan:
Create assignments in courses
and verify that the generated report is correct, order is correct,
and the report includes the values above.

In particular, test
- assignments with aligned rubrics
- quizzes with aligned question banks (each question should appear
  on the results report; nothing will appear in the competency report)
- assignments that have not been submitted (should appear on competency
  report, but not on results report)
- assignments aligned to multiple outcomes
- students in multiple sections
- students with multiple logins
- courses in multiple accounts (records should appear for
  courses in an account and its subaccounts)

Change-Id: I6bbbe9f9d6d02b305079ea143c302e0fd8dfd359
Reviewed-on: https://gerrit.instructure.com/138578
Reviewed-by: Matt Berns <mberns@instructure.com>
QA-Review: Augusto Callejas <acallejas@instructure.com>
Tested-by: Jenkins
QA-Review: Andrew Porter <hporter-c@instructure.com>
Product-Review: Sidharth Oberoi <soberoi@instructure.com>
2018-02-09 18:13:02 +00:00
James Williams 6b2e8cca6d use last_activity_at for zero activity report
not aseetuseraccesses, which are inconsistently created
for api calls

test plan:
* the zero activity account report should take
 course-level api calls into account (i.e. those
 from mobile access)

closes #CORE-917

Change-Id: I65f468710698dda937c3ac8dcea55e26d8102958
Reviewed-on: https://gerrit.instructure.com/139412
Reviewed-by: Rob Orton <rob@instructure.com>
Tested-by: Jenkins
Product-Review: Robert Lamb <rlamb@instructure.com>
QA-Review: Robert Lamb <rlamb@instructure.com>
2018-02-05 23:40:48 +00:00
Tucker McKnight fcff3ab3e1 spec: test that checks for account_id header in report csv
Change-Id: I3e4b45ad7e17756a66b9628251bb89c72f656a67
Reviewed-on: https://gerrit.instructure.com/139533
Tested-by: Jenkins
Reviewed-by: Rob Orton <rob@instructure.com>
Product-Review: Tucker McKnight <tmcknight@instructure.com>
QA-Review: Tucker McKnight <tmcknight@instructure.com>
2018-02-02 23:19:36 +00:00
Rob Orton b54baffad7 spec: ensure headers are correct on sis export
refs CORE-911

test plan
 - specs should pass

Change-Id: Ib59a29742db5cb299cab9609ab8ed41ecd983806
Reviewed-on: https://gerrit.instructure.com/139234
Tested-by: Jenkins
Reviewed-by: Tucker McKnight <tmcknight@instructure.com>
QA-Review: Tucker McKnight <tmcknight@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2018-01-26 20:17:35 +00:00
Rob Orton 237a3dc708 include course_id on group_category exports
fixes CORE-911

test plan
 - group category export should include course_id

Change-Id: I05e786d2bcf6f79cd90a8e009066dafe2a27d3f9
Reviewed-on: https://gerrit.instructure.com/139008
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Tucker McKnight <tmcknight@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2018-01-25 23:30:02 +00:00
Rob Orton 971082f7dc include course groups in group export
fixes CORE-910

test plan
 - group export should work

Change-Id: Ib1e2854d0bbe53650081108132032f3d00c36386
Reviewed-on: https://gerrit.instructure.com/139001
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
QA-Review: Tucker McKnight <tmcknight@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2018-01-25 21:34:13 +00:00
Rob Orton 083fc9e8c8 add group_categories to sis export report
also add columns to provisioning report

fixes CORE-656

test plan
 - run sis export report with group categories

Change-Id: I745aa0e712f67b1be6628852b74abb3b3f90fb73
Reviewed-on: https://gerrit.instructure.com/137887
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2018-01-19 23:40:39 +00:00
Rob Orton 6c9866a59f add group_categories to groups reports
fixes CORE-657

test plan
 - run sis export report with groups

Change-Id: I78a9aa53e9b7e75528c2d0e808e4843fb43a210e
Reviewed-on: https://gerrit.instructure.com/137888
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2018-01-18 22:23:49 +00:00
Michael Brewer-Davis 601ca9aa4b restrict outcome results report to subaccounts
also refactors report in anticipation of further tickets

closes OUT-1629

Test plan:
- Create an account with two subaccounts
- Create an account-level outcome and import
  into both subaccounts
- Create an account-level rubric which
  includes the outcome
- Create courses in the account and subaccounts
- Create assignments in each course
- Attach the rubric to each assignment
- As a student, submit each assignment
- In SpeedGrader, assess each assignment using the
  rubric
- In the root account, go to the Settings/Reports
  tab and run the Outcomes Report
- Verify that all three assessments are included
- In a subaccount, go to the Settings/Reports
  tab and run the Outcomes Report
- Verify that only the result in that subaccount
  is included
- Repeat the reporting steps with the Student Competency
  Report

Change-Id: I9db0fca47197227468946ee7a716d90fdd6ac1a7
Reviewed-on: https://gerrit.instructure.com/137897
Tested-by: Jenkins
Reviewed-by: Augusto Callejas <acallejas@instructure.com>
Reviewed-by: Frank Murphy <fmurphy@instructure.com>
QA-Review: Andrew Porter <hporter-c@instructure.com>
Product-Review: Sidharth Oberoi <soberoi@instructure.com>
2018-01-18 04:03:51 +00:00
Adrian Packel 69b6e99870 include unposted scores in admin grade export CSV
In the Grade Export and MGP Grade Export reports, add two columns at the
end of each row to represent a student's unposted current and final
scores. In the MGP report, add the columns for each grading period
alongside the existing current and final scores.

closes GRADE-115

Test plan:

Gradebook Export:
- Set up a course with a section and make sure it is part of an
  enrollment term.
- Add at least one student (the student must have a pseudonym to be
  included in the output).
- Add three assignments to the course:
  - A published and graded assignment (#1)
  - A published, graded and *muted* assignment (#2)
  - A published assignment with no grade (#3)
- Run the report (Admin -> Settings -> Report -> Grade Export). For all
  students graded as specified above, the following should hold:
  - "current score" should take into account #1
  - "final score" should score #1 and treat #2/#3 as zero points
  - "unposted current score" should take into account #1/#2
  - "unposted final score" should take into account all three and treat
    #3 as zero points

MGP Gradebook Export:
- Create a course with multiple grading periods and a mix of
  graded/ungraded and muted/unmuted assignments as described above.
- Run the MGP Gradebook Export report; in the output, check that
  each individual grading period now has columns for unposted
  current/final scores and that they obey the above rules.
- Also make sure that, as with the above report, columns for the
  unposted scores (over all grading periods) now appear at the end.
- Finally, delete one of the grading periods you created and check
  that the deleted period is *not* included in the report or factored
  into the total values.

Change-Id: Iefc7fcd7036442057af22abc63a870552e159764
Reviewed-on: https://gerrit.instructure.com/137903
Reviewed-by: Shahbaz Javeed <sjaveed@instructure.com>
Tested-by: Jenkins
Reviewed-by: Spencer Olson <solson@instructure.com>
QA-Review: Spencer Olson <solson@instructure.com>
Product-Review: Matt Goodwin <mattg@instructure.com>
2018-01-17 16:13:45 +00:00
Rob Orton aca718826d add sis_pseudonym_id to enrollment object
fixes CORE-667
fixes GRADE-250
fixes GRADE-251

test plan
 - have a user with multiple sis pseudonyms
 - enroll user into courses through sis import
   using both sis_ids for different enrollments
 - each enrollment should return the correct
   pseudonym in grade export, Enrollment API,
   Section API, Submission API

Change-Id: I2693851b6b65fe8266b3a4e6e8cefc30e3d6f214
Reviewed-on: https://gerrit.instructure.com/136804
Tested-by: Jenkins
QA-Review: Anju Reddy <areddy@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2018-01-04 00:58:37 +00:00
Tucker McKnight d400c7a5cd Add root_account_id to group categories
fixes CORE-648

test plan:
- specs should pass

Change-Id: I7c50c1f808975b8048ec4fdaf1d616d2bea48d90
Reviewed-on: https://gerrit.instructure.com/134315
Reviewed-by: Rob Orton <rob@instructure.com>
Tested-by: Jenkins
Product-Review: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
2017-12-20 22:46:47 +00:00
Cody Cutrer 6a94d11936 cross-shard user observer support
closes CORE-42

test plan:
 * have two root accounts on different shards that trust each other,
   both using canvas auth
 * have a student in account A, enrolled in a course
 * on account B's login page, click the link, and set up a new user
   linked to the student
 * upon login, you should see the student's course(s)

Change-Id: I2bb8feb948862ce419450ffdc79ca52385f3e473
Reviewed-on: https://gerrit.instructure.com/130332
Reviewed-by: Rob Orton <rob@instructure.com>
Tested-by: Jenkins
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
2017-11-09 21:51:30 +00:00
Rob Orton 2593c83f51 add sub_account destroy to accounts api
fixes CNVS-40021
fixes gh-1128

test plan
 - should allow deleting sub_accounts through api

Change-Id: I2e86598f24b1343395637d1d266539ab8eccbb3e
Reviewed-on: https://gerrit.instructure.com/128613
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2017-10-19 20:48:57 +00:00
Rob Orton 88be65e883 add enrollment_id to provisioning report
refs PFS-8557

test plan
 - run enrollments export
 - it should have canvas_enrollment_id

Change-Id: Iba25f0bb585948f9cc2939d36a63fae50dc956ca
Reviewed-on: https://gerrit.instructure.com/125712
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Tucker McKnight <tmcknight@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2017-09-18 19:46:05 +00:00
Cody Cutrer de29fe9e31 eliminate duplicate rows in provisioning reports due to pseudonyms
fixes CNVS-38846

this also fixes the group memberships report for multi-shard users

test plan:
 * add multiple pseudonyms to a user
 * enroll that user in a course
 * do a provisioning report
 * that user should only have one row per enrollment

Change-Id: Iba2077e52a86182cf79ab83e918125ba7e08fc42
Reviewed-on: https://gerrit.instructure.com/124086
Tested-by: Jenkins
Reviewed-by: Rob Orton <rob@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2017-09-08 21:40:46 +00:00
Rob Orton 9451113a71 add user name to admin export report
fixes CNVS-38986

test plan
 - should have names on provisioning report

Change-Id: I1346acb25658e3214076f4253c4c2f95ad7825b4
Reviewed-on: https://gerrit.instructure.com/124767
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
2017-09-01 20:38:28 +00:00
Rob Orton a9fa9fb8f7 create admin sis export and provisioning reports
closes CNVS-38267

test plan 
 - report should run
 - it should be formatted correctly

Change-Id: I9d3bed54e9bd9f06ffce28c59cfe46518c95bdc2
Reviewed-on: https://gerrit.instructure.com/119413
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Tucker McKnight <tmcknight@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2017-08-22 22:22:44 +00:00
Rob Orton b8ed33e735 should run provisioning report for cross shard data
fixes CNVS-38695

test plan
 - provisioning report should run

Change-Id: Ibb2e3b82aaa4b9da922eb850d4001a65cb42f232
Reviewed-on: https://gerrit.instructure.com/122953
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
Tested-by: Rob Orton <rob@instructure.com>
2017-08-17 00:02:29 +00:00
James Williams 45147e0911 bypass the wiki model as much as possible for wiki_pages
Change-Id: I60ec3b519219fcb5256a132c05f63538600df73f
Reviewed-on: https://gerrit.instructure.com/121760
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
QA-Review: James Williams  <jamesw@instructure.com>
2017-08-09 16:09:06 +00:00
James Williams ff054c45b9 add course_format to sis export
test plan:
* have a course with a course format
("On-Campus", "Online", etc)
* perform a sis export
* the courses.csv file should list the format

closes #CNVS-37731

Change-Id: I5f3e3ae8eabad2b6d53d8cdc4c3c86c08a0ac00b
Reviewed-on: https://gerrit.instructure.com/116624
Reviewed-by: Dan Minkevitch <dan@instructure.com>
Tested-by: Jenkins
QA-Review: Heath Hales <hhales@instructure.com>
Product-Review: James Williams  <jamesw@instructure.com>
2017-08-04 00:05:20 +00:00
Cody Cutrer f03eaf3939 spec: mocha => rspec-mocks for plugins
Change-Id: Icc0d1d279544cb811c919ff593795e39ba67b16b
Reviewed-on: https://gerrit.instructure.com/119985
Tested-by: Jenkins
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
2017-07-25 17:55:42 +00:00
Rob Orton 7375de8139 spec: use match_array for report results for better specs
Change-Id: I488d2378b2cdcea8753a569a4bcab427f0606db6
Reviewed-on: https://gerrit.instructure.com/118538
Reviewed-by: Jacob Fugal <jacob@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
Tested-by: Jenkins
2017-07-11 20:05:58 +00:00
Rob Orton b50a504d77 return enrollments for cross shard users
fixes CNVS-35730

test plan
 - setup account trust across shards
 - add enrollment in cross shard course
 - enrollment should show up in courses’
   accounts’ provisioning report

Change-Id: I7727a8a61d4b8978eba1a497095619d87441f38a
Reviewed-on: https://gerrit.instructure.com/115580
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Tucker McKnight <tmcknight@instructure.com>
Tested-by: Jenkins
Product-Review: Rob Orton <rob@instructure.com>
2017-06-28 17:54:02 +00:00
Rob Orton 86131bd047 show enrollments in deleted courses as deleted
refs CNVS-36193

test plan
 - have a non sis enrollment in a course
 - delete the course with a sis import by marking
   it deleted (don’t delete with batch mode, cause
   that is done in a different way)
 - run sis export and include deleted
 - all enrollments in the course should be marked
   as deleted
 - provisioning report should also have all the
   enrollments in the course as deleted

Change-Id: I23b3d736092d7082e5b75a645228602102d4b1ac
Reviewed-on: https://gerrit.instructure.com/112470
Tested-by: Jenkins
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2017-06-07 21:21:30 +00:00
James Williams 46b6e8d777 allow updating text fields on assessed outcomes via api
test plan:
* create a learning outcome
* assess the learning outcome for a student
* before, this would have meant that no changes could be made
 to the outcome through the update api, but now changes
 should be allowed as long as they only affect text fields:

 - title
 - display_name
 - description
 - ratings[][description]

* any other changes should cause an error message

closes #CNVS-36951

Change-Id: I043af8fb0bfc427970a0723db9741a5fa93c5617
Reviewed-on: https://gerrit.instructure.com/112594
Tested-by: Jenkins
Reviewed-by: Michael Brewer-Davis <mbd@instructure.com>
Reviewed-by: Matt Berns <mberns@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: McCall Smith <mcsmith@instructure.com>
2017-05-30 16:19:17 +00:00
Rob Orton 009b152e82 include inactive enrollments in grade export
fixes CNVS-36938

test plan
 - mark enrollment as inactive
 - run grade export with include deleted objects option
 - it should include the enrollment

Change-Id: I931cc107727148a7fcdd0a8213699db238521057
Reviewed-on: https://gerrit.instructure.com/112042
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2017-05-19 21:22:02 +00:00
Rob Orton e4b1b60525 include course group_membership data in sub accounts
fixes CNVS-36926

test plan
 - add a group membership in a course
 - run provisioning report on a sub account for course
 - it should include the membership

Change-Id: I97840acbe72863a0ef0544e36395e9da63478588
Reviewed-on: https://gerrit.instructure.com/112051
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
2017-05-19 17:22:04 +00:00