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>
test plan:
* import the package referenced in the ticket
* the questions in the quiz mentioned in the ticket should
be brought over as numerical answer questions
closes #ADMIN-1288
Change-Id: I57142575feb92cce2b5bc3cff9078afcd10d89be
Reviewed-on: https://gerrit.instructure.com/159047
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jenkins
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
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>
test plan:
* create a question with question text with
an equation identical to the one referenced
in the ticket
* copy the course
* the copied question should have a working equation image
closes #CORE-1510
Change-Id: I3bf1d1be5b21b38f0698b49695d44cd24bf41706
Reviewed-on: https://gerrit.instructure.com/156260
Tested-by: Jenkins
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
QA-Review: Rohan Cheeniyil <rcheeniyil@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
test plan
- repeat https://gerrit.instructure.com/#/c/145605/
Change-Id: Ife7642ca63c9338215a0d8835e3d16d35adefc65
Reviewed-on: https://gerrit.instructure.com/157362
Tested-by: Jenkins
Reviewed-by: Rob Orton <rob@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
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>
closes #CORE-1579
Change-Id: Ib745e72dc431e444216057d3bb1c5fb9bcbe6713
Reviewed-on: https://gerrit.instructure.com/155585
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
test plan:
- import the blackboard package attached to the ticket
- delete the question bank
- re-import it
- all the questions should be there
fixes ADMIN-1117
Change-Id: Ic1d864b9f22a2ad7e39a2846a672beb9842730c3
Reviewed-on: https://gerrit.instructure.com/155182
Tested-by: Jenkins
Reviewed-by: James Williams <jamesw@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
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>
test plan:
* create a numberic answer quiz question with
"answer with precision"
* use an answer with more digits than the precision value
e.g. answer 100 and precision 2
* copy the course
* it should remain an "answer with precision"
closes #ADMIN-1100
Change-Id: I016894d3dd705677d192c69ffc269cd8551f2db9
Reviewed-on: https://gerrit.instructure.com/152172
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Luke Kingsley <lkingsley@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
test plan:
* import the packages from the course referenced in the ticket
* should import the matching questions successfully
closes #ADMIN-1050
Change-Id: I9416403be5435c03ff6b3d1fc134677a94fd213d
Reviewed-on: https://gerrit.instructure.com/150446
Tested-by: Jenkins
Reviewed-by: Carl Kibler <ckibler@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
test plan: the moodle backup zip file attached to the ticket
should import without failing
(note: this package references nonexistent objects; we are
simply skipping these instead of failing the import.)
fixes ADMIN-1027
Change-Id: I012c8b268af9a5e71267e1802ce363b83f6cf4ee
Reviewed-on: https://gerrit.instructure.com/149975
Reviewed-by: James Williams <jamesw@instructure.com>
Reviewed-by: Carl Kibler <ckibler@instructure.com>
Tested-by: Jenkins
QA-Review: Mysti Sadler <mysti@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
Prevents a race condition in parallel reports
where a job completes before total_lines is set
which causes a nil error when updating progress
test plan:
- run account report using parallel runner
- it should work
refs PFS-10491
Change-Id: I4e128896df8d91c52760b14b272494f7791539db
Reviewed-on: https://gerrit.instructure.com/150298
Tested-by: Jenkins
Reviewed-by: Sean Mikkelsen <smikkelsen@instructure.com>
Reviewed-by: Rob Orton <rob@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
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>
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>
refs CORE-1240
test plan
- specs should pass
Change-Id: I34c80fb28c0ee3091c12069ae73ee011b92635e1
Reviewed-on: https://gerrit.instructure.com/146455
Reviewed-by: Sean Mikkelsen <smikkelsen@instructure.com>
Tested-by: Jenkins
Product-Review: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
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>
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>
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>
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>
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>
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>
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
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>
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>
test plan:
* import the package attached to the ticket
* the quiz titled "Numeric Question Test" should
have a question with a range answer
* copy the course
* the copied quiz question should also
have a range answer (and not be changed to exact)
closes #ADMIN-714
Change-Id: I4e3871ab9875fd1a469dd463183a3e306edf9fb5
Reviewed-on: https://gerrit.instructure.com/139255
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jenkins
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
Change-Id: I043519f49be79a28bdf9ca9114afcfb87bc1ce08
Reviewed-on: https://gerrit.instructure.com/136716
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
Change-Id: I5389c36cb4b3444bc8b9ea83860dc5623beb6e56
Reviewed-on: https://gerrit.instructure.com/136684
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
Product-Review: Simon Williams <simon@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>