closes: OUT-1062, OUT-1110
Test plan:
Assignments:
Verify that i18n has been completed on assignments
related pages, including but not limited to:
Assignment list page (teacher and student)
Assignment show page (teacher and student)
Assignment edit page
CYOE:
Test alongside g/103353
Test plan:
Test that all numbers are properly internationalized
within:
Teacher pages:
- mastery paths edit page
- assignment list page (mastery path ranges)
- assignment view page (mastery path breakdown)
Student pages;
- choose mastery path page (accessed from modules for OR
assignments)
Change-Id: I226c27dca870dde4801b5e09ab9f6ee5b000bbb0
Reviewed-on: https://gerrit.instructure.com/103354
Tested-by: Jenkins
Reviewed-by: Augusto Callejas <acallejas@instructure.com>
QA-Review: Cemal Aktas <caktas@instructure.com>
Product-Review: Michael Brewer-Davis <mbd@instructure.com>
just do it the right way, since the shim doesn't seem to work in rails 5
this is just a massive find/replace (repeated, due to chained assignment)
refs CNVS-34867
Change-Id: I267a16bed05a116e463cf9301645270e79a2d80e
Reviewed-on: https://gerrit.instructure.com/104193
Reviewed-by: Simon Williams <simon@instructure.com>
Tested-by: Jenkins
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Find/fix/prevent weird stuff we are doing (or not doing) with `expect`.
Chapter I:
"I have been bent and broken, but - I hope - into a better shape."
Disallow `expect`s in a `before`. `before` is by definition before the
test, so it's not the place to be asserting anything. You can of course
still set up mocks there.
Chapter II:
"Take nothing on its looks; take everything on evidence. There's no
better rule."
Ensure every `expect` actually runs. i.e. it needs `to` or `not_to` in
order to actually do anything.
Chapter III:
"Ask no questions, and you'll be told no lies."
In selenium land, ensure every spec has at least one expecation. In
regular rspec land we just warn to stderr, but we may get more strict
in the future.
Test Plan: Specs
Change-Id: I5fc353ee8171e5191853d45f42ae42478f9220b4
Reviewed-on: https://gerrit.instructure.com/101224
Tested-by: Jenkins
Reviewed-by: Rob Orton <rob@instructure.com>
Reviewed-by: Landon Wilkins <lwilkins@instructure.com>
Product-Review: Jon Jensen <jon@instructure.com>
QA-Review: Jon Jensen <jon@instructure.com>
test plan:
- the X icon on dashboard todo items should have screenreader
text that describes what it does (e.g., "Ignore Some Assignment
until new submission" instead of just "Ignore")
fixes CNVS-34338
Change-Id: I392bd8bf58bf30952fc42ce1e0b6978bdeeff2c3
Reviewed-on: https://gerrit.instructure.com/99725
Tested-by: Jenkins
Reviewed-by: Dan Minkevitch <dan@instructure.com>
QA-Review: Nathan Rogowski <nathan@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
closes OUT-426
Test Plan
1. Prepare an assignment accepting submissions.
2. As teacher and admin, ensure todo list on course home page appears
correctly for the assignment.
a. When a submission is made, it should appear "needs grading"
b. When more submissions are made, it should appear only once and
show count of pending submissions.
c. When a submission is graded, the count should decrement until
there are no pending submissions remaining.
d. When a user with a pending submission unenrolls, the count should
decrement. When the user is reenrolled, their submission should
reappear.
3. As a TA with limited visibility to a section, ensure todo list
appears correctly and only counts submissions that should be visible.
4. Ensure graded quizzes have the same behavior.
Change-Id: I5eca4d0d9d008b2ce1ae39660f29709c509bed22
Reviewed-on: https://gerrit.instructure.com/96241
Reviewed-by: Augusto Callejas <acallejas@instructure.com>
QA-Review: Alex Ortiz-Rosado <aortiz@instructure.com>
Tested-by: Jenkins
Reviewed-by: Rob Orton <rob@instructure.com>
Product-Review: Christian Prescott <cprescott@instructure.com>
- add muted and grading_complete fields to live events
refs: OUT-577
Test alongside g/97097
Test plan:
- Partially graded items
1. Create a quiz with some automated and some manually graded
content. Apply mastery paths rules to trigger other assignments.
2. As student, take the quiz, such that your score on the
automatically graded content would trigger a mastery path rule
3. Verify that no content is released
4. As teacher, grade the remaining questions of the quiz such that
master paths content should be released.
5. Verify that the appropriate content is released to the student.
- Muted items
1. Create an assignment with mastery paths rules
2. As student, submit the assignment
3. As teacher, mute the assignment
4. Grade the submissions such that master paths content should be
released
5. As student, verify that no content has been released
6. As teacher, unmute the assignment
7. As student, verify that the appopriate content has been released.
Change-Id: I312aba018ca262a907c6a23a938af739842e28ae
Reviewed-on: https://gerrit.instructure.com/97098
Reviewed-by: Matt Berns <mberns@instructure.com>
Reviewed-by: Augusto Callejas <acallejas@instructure.com>
QA-Review: Cemal Aktas <caktas@instructure.com>
Tested-by: Jenkins
Product-Review: Michael Brewer-Davis <mbd@instructure.com>
Fixes: CNVS-33935
Test plan:
- Words in the To-Do, Coming Up, and Recent Feedback
lists should no longer break awkwardly
- Long words and links in the right sidebar To-Do,
Coming Up, and Recent Feedback lists should now
be handled by hiding the overflow and fading them
out with a white gradient:
http://www.screencast.com/t/b19RGB4F7v
- The spacing and line-height of the To-Do, Coming
Up, and Recent Feedback lists should look better.
Change-Id: I96486077c57c24d18a991394c0747c6cf4f98c7d
Reviewed-on: https://gerrit.instructure.com/99234
Tested-by: Jenkins
Reviewed-by: Pam Hiett <phiett@instructure.com>
QA-Review: Dan Sasaki
Product-Review: Kyle Follett <kfollett@instructure.com>
closes CNVS-32229
closes CNVS-32232
test plan:
* Create a course with MGP enabled and two grading periods in
the default term
* Create two assignments for this course, one in a closed GP and
one in an open GP
* To test overrides, create the following as well:
* For one of the students, make the open assignment due in the
closed grading period
* For another student, make the closed assignment due in the
open grading period
* Ensure the following steps work for all assignment/student
combos due in a closed grading period.
** CNVS-32229 **
* Login as a teacher
* Go to speedgrader for the assignment in the closed GP
* Notice that the grade input is locked down
* Right click on the locked-down input and select 'Inspect'
* Remove the 'ui-state-disabled' class and remove
readonly="readonly" from the input field's HTML
* Notice the input is no longer grayed out and you can enter
a grade
* Enter a grade and tab out of the input
* You should see an error message that says something went wrong
and notice in the Network tab of your dev tools that the AJAX
post failed, meaning the submission was not gradeable
* Refresh the page and notice the grade is not there.
* Verify it isn't there in Gradebook either
* Login as an admin
* Go to speedgrader for the assignment in the closed GP
* Notice that the grade input is *not* locked down
* Enter a grade and tab out of the input
* You should *not* see an error message that says something went
wrong meaning the submission was graded successfully
* Refresh the page and notice the grade is there.
* Verify it is also present in Gradebook
** CNVS-32232 **
* Login as a teacher
* Go into a gradebook that has an assignment that is
locked down because it is in a closed grading period
* Notice that the grade cells for the assignment are locked
down (because the submissions fall in a closed grading period)
* Right-click on one of the locked-down cells and select 'Inspect'
* Remove the 'grayed-out' and 'cannot_edit_in_closed_grading_period'
classes
* Notice the cell is no longer grayed out and you can enter a grade.
* Enter a grade
* Click on another cell.
* You should see an error message that says something went wrong
and in the Network tab of your dev tools verify the AJAX post
failed, meaning the submission was not gradeable
* Refresh the page and notice the grade is not there
* Login as an admin
* Login as a teacher
* Go into a gradebook that has an assignment that is
in a closed grading period
* Enter a grade in a cell that should be due in a closed grading
period
* Click on another cell
* You should *not* see an error message that says something went
wrong meaning the submission was graded successfully
* Refresh the page and notice the grade is there.
* Verify it is also present in Gradebook
Change-Id: Ia80e4de626616309c5e9dffb78ed0f9671ad1076
Reviewed-on: https://gerrit.instructure.com/95687
Reviewed-by: Jeremy Neander <jneander@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
Tested-by: Jenkins
QA-Review: Anju Reddy <areddy@instructure.com>
Product-Review: Keith T. Garner <kgarner@instructure.com>
also prevent session stubbing in before(:once) blocks and remove lots
of unnecessary stubbing
note that while session stubbing is also unnecessary in controller/api
specs (just need @user to be set), delaying removal of thay to another
commit (we might want tweak it to actually use session stubbing or
something otherwise explicit and less magical than @user)
Change-Id: Iea1792c960ad32090bc4644febc87e1d3651f550
Reviewed-on: https://gerrit.instructure.com/96791
Reviewed-by: Landon Wilkins <lwilkins@instructure.com>
Tested-by: Jenkins
Product-Review: Jon Jensen <jon@instructure.com>
QA-Review: Jon Jensen <jon@instructure.com>
refs OUT-430
Test Plan
1. Prepare an (assignment|quiz|graded discussion) and set its due date
within a week so it appears in the "Coming Up" section on course home.
Ensure the assignment and its due date appear to teacher and student.
2. Add an Assign To override to the assignment, with a different due date.
Ensure the teacher sees "Multiple Due Dates" but the student sees their
applied due date.
3. Edit the course to set the override as the _only_ due date. (Remove the
Everyone Else override, or any others) Ensure the teacher sees the
override's due date. Ensure only students for whom the assignment is
overridden see the override's due date.
4. Ensure the "Multiple"/applied date visibility behavior is the same as
above on the index pages for assignment, quiz, discussion, and maybe
modules.
Change-Id: I276f34a7b439fe0e0f6f6883534e9fea698ae586
Reviewed-on: https://gerrit.instructure.com/93538
Tested-by: Jenkins
Reviewed-by: Matt Berns <mberns@instructure.com>
QA-Review: Cemal Aktas <caktas@instructure.com>
Product-Review: McCall Smith <mcsmith@instructure.com>
This makes it so that course short names appear on the dashboard's
right side lists (todo, recent events, recent feedback, coming soon)
It will show course nicknames, if they are nicknamed
closes CNVS-30985
Test Plan:
- Make an event or something that will appear in the right sidebar
- Look at the event in the right side bar, it should show the courses
short name
- If the course has a nickname, it should show it instead.
Change-Id: Iadfc357cbfed10845f27cd0c2773139e0927059f
Reviewed-on: https://gerrit.instructure.com/87998
Tested-by: Jenkins
Reviewed-by: James Williams <jamesw@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Christi Wruck
anonymous grading was not working for moderated assignments.
this commit adds graded_anonymously to the provisional grade
model to address the issue.
fixes CNVS-29261
test plan:
- create a Course with a Teacher, Student and TA
- on the Course Settings page in the Feature Options tab,
turn on Anonymous Grading
- create and publish an assignment with the Moderated Grading
checkbox enabled
- masquerade as the TA and grade the assignment in Speedgrader
- note the student's name is 'Student 1'
- masquerade as the Teacher and from the Assignment page, click
the Moderate button
- click the Post button to push the moderated grades to the
gradebook
- masquerade as the Student and open the Assignment page
- in the Submission Details box on the right, the
'Graded Anonymously' field should read 'Yes'
Change-Id: I2e87635020cebb0bc81853d8eead228bbb5f1e6d
Reviewed-on: https://gerrit.instructure.com/83503
Reviewed-by: Spencer Olson <solson@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
Reviewed-by: Neil Gupta <ngupta@instructure.com>
Tested-by: Jenkins
QA-Review: Amber Taniuchi <amber@instructure.com>
Product-Review: Christi Wruck
Fixes CNVS-29511
Sometimes when posting a comment, the incorrect grade was being
applied. This commit decouples the 2 features and DRY's up the code to
address this issue.
Test plan:
* As a teacher, setup an assignment with a letter grade scheme.
* As a student, submit an assignment.
* As a teacher, go to the submission detail view.
* Start typing a comment but don't submit it.
* Enter a grade of 95. The grade should submit and display as "A", but
the comment should not be submitted. Refresh page to confirm.
* Post a comment. It should post but the grade should still be 95.
Refresh the page to confirm.
Change-Id: I1eb7478e0c693ee28a58578e45dd7369b24baa05
Reviewed-on: https://gerrit.instructure.com/81568
Reviewed-by: Keith T. Garner <kgarner@instructure.com>
Tested-by: Jenkins
QA-Review: KC Naegle <knaegle@instructure.com>
Product-Review: Christi Wruck
Test Plan
1. Visit course settings page. Ensure "Conditional Release" button does
not appear on the right, under "Validate Links in Content" or
anywhere else for that matter.
2. Turn conditional release flag on. Repeat step 1.
Change-Id: I83d117cacf23ccec0f569321bc747d28f6ab439e
Reviewed-on: https://gerrit.instructure.com/80524
Tested-by: Jenkins
Reviewed-by: Jahnavi Yetukuri <jyetukuri@instructure.com>
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
Product-Review: Christian Prescott <cprescott@instructure.com>
Fixes: CNVS-27591
note: this drastically changes the new ui view and
subtly changes old ui
test plan:
- as a user that is enrolled in multiple courses
- within new ui: navigate to courses link and within sub-nav
click "all courses" updated view should be similar
to product design comp http://screencast.com/t/h4Z10zuLgWG
- ensure old ui still looks good
Change-Id: I54b943bf6184e0399b5f1e2d76e1418b29d5f2d4
Reviewed-on: https://gerrit.instructure.com/73641
Tested-by: Jenkins
Reviewed-by: Chris Hart <chart@instructure.com>
Product-Review: Chris Hart <chart@instructure.com>
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
test plan:
* basic regression test of assignment overrides
closes #CNVS-27549
Change-Id: Ie463848b3831087efb3f9ec762dca6264055ee76
Reviewed-on: https://gerrit.instructure.com/73139
Tested-by: Jenkins
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
Reviewed-by: Mike Nomitch <mnomitch@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
Fixes CNVS-27413
Test plan:
- Create an assignment
- Create more than 10 users
- Submit the assignment as each user
- As a teacher, verify that the actual number of assignments that
were submitted shows up next to the assignment in the to-do list
Change-Id: I3720ac1e24abbc78bf56f384dfd19400f51f1409
Reviewed-on: https://gerrit.instructure.com/72990
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jenkins
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
Product-Review: Allison Weiss <allison@instructure.com>
initially, the feature flag only toggles a button on the course
settings sidebar.
test plan:
- enroll as a teacher
- check there is no conditional release button on course
settings right sidebar
- enable conditional release feature
- check there is a conditional release button
- revoke "manage all other content" permission for teachers
- check there is no longer a conditional release button
fixes: CYOE-44
Change-Id: Ic8299ba179bf6331ce9a2da5d40e60ac0bc88ee6
Reviewed-on: https://gerrit.instructure.com/72474
Reviewed-by: Dan Minkevitch <dan@instructure.com>
Product-Review: Jon Willesen <jonw@instructure.com>
QA-Review: Jon Willesen <jonw@instructure.com>
Tested-by: Jenkins
test plan:
* create a course with a future term date
* restrict students from accessing the course before start date
in the course settings
* enroll a student in the course and add them to a group
* as the student, the courses index ("/courses") should
not list the group (or the course)
closes #CNVS-26623
Change-Id: Iedddd118f40024480bae8c7b5a42315dc41af335
Reviewed-on: https://gerrit.instructure.com/71382
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
Product-Review: Matt Fairbourn <mfairbourn@instructure.com>
fixes CNVS-26308
test plan:
- create 2 quizzes, with questions
- take them both
- delete 1 of them
- go to the course stats page
- only the non-deleted quiz should count
(for quizzes, questions, and submissions)
Change-Id: Ib6155e1036fce43c81c2ad346b7252e818831114
Reviewed-on: https://gerrit.instructure.com/70822
Tested-by: Jenkins
Reviewed-by: Ryan Taylor <rtaylor@instructure.com>
QA-Review: Michael Hargiss <mhargiss@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
Fixes CNVS-25877
Test plan:
- Create a user with:
- an assignment that needs to be submitted
- an assignment that needs to be graded
- an assignment whose grades the user needs to moderate
- an assignment that they need to peer review
- a calendar event that they can see
- Go to the user's home page
- Ensure all of the assignments show up in the to-do list
- Ensure they show up in Coming Up as well
- Ensure that the calendar event shows up under Coming Up
- Go to the courses where you created the assignments
- Ensure that each assignment shows up on its respective course to-do
list
- Submit an assignment
- As a teacher, ensure that the assignment shows up as needing
grading, and that the number in the badge to the left is 1
- Ensure that screenreaders read the badge as "1 submission
needs grading"
- Make another submission as a different user
- Clear the cache by running `Rails.cache.clear` at a Rails console
- As the teacher, ensure that the badge is now 2
- Ensure that screenreaders read the badge as "2 submissions
need grading"
- Repeat 8 more times as different users, so that there are now
10 submissions
- Clear the cache again
- Ensure that the badge now says "9+"
- Ensure that screenreaders read the badge as "More than 9
submissions need grading"
- As the user who submitted the assignment, ensure that the grade
shows up on the To-Do list, Coming Up, and Recent Feedback
- As a teacher, leave a submission comment
- As the user who submitted the assignment, ensure that the comment
shows up under Recent Feedback
- Create a public course
- You can make a course public by going to its settings page
and checking "Make this course publicly visible"
- Log out
- Visit /courses/<id>, where <id> is the id of the course
- Ensure that the course shows as expected, and that nothing
shows up on the to-do list
- Automated tests should cover everything else
Change-Id: I18673995db94d896bf2c39515258e61065b48319
Reviewed-on: https://gerrit.instructure.com/69474
Reviewed-by: Andrew Butterfield <abutterfield@instructure.com>
QA-Review: Heath Hales <hhales@instructure.com>
Tested-by: Jenkins
Product-Review: Allison Weiss <allison@instructure.com>
fixes CNVS-24128
test plan:
- with users that both can and cannot publish sis grades, visit the
course settings page.
- the appropriate controls should be present/absent and work correctly.
Change-Id: I45ded2726a64b3a7457e76e67e681e3d3274b000
Reviewed-on: https://gerrit.instructure.com/65454
Tested-by: Jenkins
Reviewed-by: James Williams <jamesw@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
Support passing a class for an icon for styling goodness.
added support for `canvas_icon_class` allowing use od css classes from canvas
style guide which can make it look better and maintain our styling
standards.
Fixes PLAT-1222
Test Plan:
prereq's
- "LOR External Tools" feature flag enabled
- (notice the lack of lti example tool, you dont need it)
A new commons icon has been added so you should probably run the
following
`bundle exec rake brand_configs:clean canvas:compile_assets`
Add a new LTI tool to the account using [this xml](https://gist.github.com/defektive/dbd182cb04500e236bde)
check placements to make sure they show a fancy new icon instead of a
crappy star. course_home_sub_navigation should show up as the commons icon
placements to look at
:assignment_menu - cog on an assignment
:course_home_sub_navigation - right side of page
:course_settings_sub_navigation
:discussion_topic_menu
:file_menu (no icon)
:global_navigation (no icon)
:module_menu
:quiz_menu
:wiki_page_menu
Change-Id: Ib462e928a5a3811df490f9bf2441b755db2882a9
Reviewed-on: https://gerrit.instructure.com/62492
Tested-by: Jenkins
Reviewed-by: Nathan Mills <nathanm@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Brad Horrocks <bhorrocks@instructure.com>
closes CNVS-17635
closes gh-97
Test Plan:
- Create a course that is unpublished
- Add a student to the class
- Add the student to a group
- Login as the student
- Go to the courses index page (/courses)
- The group should not be shown
- Publish the course
- The group should now be shown with a link to it
Change-Id: I3588cbd323cd065a33898c91021f475507101dee
Reviewed-on: https://gerrit.instructure.com/46266
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Clay Diffrient <cdiffrient@instructure.com>
refactor everything that used to use strings for roles
to use actual role_ids
the apis should be backwards compatible so we don't need
to update (most of) the UI's right away in this commit
test plan:
* regression tests for permissions, role overrides,
alerts (for account roles), enrolling users,
adding account admins, etc.
refs #CNVS-15481
Change-Id: Id57fd3104c5c518b6fbf180609950dcddcdd474d
Reviewed-on: https://gerrit.instructure.com/41208
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Steven Shepherd <sshepherd@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
change the course settings form so it's
always a form (similar to the account settings form)
so that way the labels always have referenced elements
test plan:
* using a screenreader, the labels should always reference
the proper input items (rather than labelling nothing
until the "edit" button is clicked)
closes #CNVS-16234
Change-Id: I66d64c5000c6e43291c34536452518ba1dee0945
Reviewed-on: https://gerrit.instructure.com/43091
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Nathan Rogowski <nathan@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Cosme Salazar <cosme@instructure.com>
Multiple groups with the same name are now better identified with their
context names (and term names if they are courses).
Test Plan:
* Create two courses, with one of them in the Default Term
* Create course groups in those courses
* Add a student to both course groups
* As the student, go to /courses
* Make sure the course name appears under the group name
* Make sure the term name appears (unless it's in the Default Term)
* Do the same for /groups
test plan:
* add an external tool configured for the extensions
going to be used by LOR (:course_settings_sub_navigation,
:course_home_sub_navigation, :migration_selection)
* confirm that it is not shown to a user unless either
the account-level feature flag is enabled or the
user-level flag is enabled
closes #CNVS-14626
Change-Id: I06e189fc1f2d745613353ea1b3f98b4f4b2c87b6
Reviewed-on: https://gerrit.instructure.com/39111
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Bracken Mosbacker <bracken@instructure.com>
fixes RD-76
test plan:
- as a teacher, navigate to a course settings page. the right
sidebar should look normal.
- modify an lti app's xml to include the
course_settings_sub_navigation extension
- configure an lti app via modified xml.
- navigate to a course settings page, where you should see a
button for the configured tool at the top of the right
sidebar.
- clicking on the button should launch the tool.
Change-Id: Iec9e3337437295865bab66a499fe8fc096ad0ba5
Reviewed-on: https://gerrit.instructure.com/36471
Reviewed-by: Brad Humphrey <brad@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Nathan Rogowski <nathan@instructure.com>
Product-Review: Jon Willesen <jonw@instructure.com>
test plan:
* create a subaccount (the "parent" subaccount)
* create more children subaccounts within that parent subaccount
* create an account admin user for the parent subaccount
* create a course beloning to one of the children subaccounts
* as the account admin user, confirm that you can visit
the course settings page and use the drop-down box to
change the courses' account to any child account that
belongs to the parent subaccount
* also confirm that the drop-down box does not show accounts
outside the parent subaccount (even if they're on the same root
account)
fixes #CNVS-10501
Change-Id: I1d7cae8a19b926cabb3473ba950d29ab08ad25ce
Reviewed-on: https://gerrit.instructure.com/34009
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Nathan Rogowski <nathan@instructure.com>
Product-Review: Hilary Scharton <hilary@instructure.com>
fixes: CNVS-12565
test plan:
- as a student take a quiz
- verify that:
- background submissions are working
- end of time / date submissions are working
- manual submsissons are working
- verify various question types are graded correctly
- verify outcomes work as previously defined
Change-Id: Ia85141559e8026993c0e270267947128a5a0466b
Reviewed-on: https://gerrit.instructure.com/33669
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Josh Simpson <jsimpson@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Jason Madsen <jmadsen@instructure.com>
it's for the best, since role_select_options had a XSS vulnerability...
s.html_safe != html_escape(s)
test plan:
n/a, specs should pass
Change-Id: I46b180193b0669934007272033bb64b50eea3e7b
Reviewed-on: https://gerrit.instructure.com/29233
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Brian Palmer <brianp@instructure.com>
Product-Review: Marc LeGendre <marc@instructure.com>
QA-Review: Marc LeGendre <marc@instructure.com>
refs CNVS-4782
test plan:
- BEFORE applying database migrations, create two account
roles, one that enables "Manage account level settings",
and one that disables it.
- ... apply database migrations ...
- an account setting "Manage storage quotas" should appear
and should be enabled for roles that have "Manage account
level settings", and disabled otherwise
- ensure the following values cannot be changed
(are not editable on the web forms) if
"Manage storage quotas" permission is revoked:
in Account Settings:
- Default Course File Quota
- Default User File Quota
in Course Settings:
- File Storage
- also ensure that a user lacking this permission
cannot set a course quota via the courses API
(creating or updating a course). the value should
be ignored if the user does not have permission
to set it.
NOTE: This permission applies to accounts and courses.
There are also quotas for entire sites (for users,
course files, and media files), but these are managed
by a plugin and are not affected by this commit.
Change-Id: I4a3b0b332a5a4e74596f167360db37e2653eab70
Reviewed-on: https://gerrit.instructure.com/18887
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
QA-Review: Adam Phillipps <adam@instructure.com>
Product-Review: Bracken Mosbacker <bracken@instructure.com>
fixes #CNVS-3711
test plan:
- go to a course settings page
- you should not see the contents of the Reset Course Content
dialog underneath the Reset Course Content button
(see screenshot attached to ticket)
Change-Id: I98c3f0d833f3e2dc7d0be1c86ddb62ea44b291db
Reviewed-on: https://gerrit.instructure.com/17542
Reviewed-by: Brian Palmer <brianp@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Adam Phillipps <adam@instructure.com>
You can add enrollments with the custom roles and see who
has the roles.
Test Plan:
* Create custom roles for each enrollment type
* Test all the settings page's functionality like adding/deleting users with custom roles
* Make custom observers observe students in various combinations of custom roliness
- verify that the new observer role has the custom role
* Make sure the section limited check box shows up for custom tas/teachers by selecting those options in the new user select box
closes #cnvs-1166
Change-Id: I5f133bf1b5b1438d7f8e34297b450ff561d401d0
Reviewed-on: https://gerrit.instructure.com/16272
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Jeremy Stanley <jeremy@instructure.com>
prevent active enrollments from being added for concluded courses
and causing authorization problems
(revision: took jeremy's advice and moved tests from
selenium to views)
(revision #2: took more of jeremy's advice and added checks
in controller and api, rather than just removing the button)
(also, I forgot to add files to the commit.. durr)
test plan:
* Conclude a course
* Try to add a user
closes#9691#11552
Change-Id: Ibb267f5d714b43fa033d40dad93511e443b17790
Reviewed-on: https://gerrit.instructure.com/14865
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Instead of "hard concluding", or setting the workflow
state to 'concluded', courses will now set the end date
and be soft concluded.
This is to allow easier unconcluding in the future so that
all enrollments are still active.
Test Plan:
* Publish a course
* conclude the course
* notice that the end_at date for the course is set to when you concluded it
* notice that the "Users can only participate in the course between these dates" checkbox is checked
closes#11387#11386
Change-Id: I568539723b7f0f4471761d742ff3a8bb821a7605
Reviewed-on: https://gerrit.instructure.com/14748
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Reviewed-by: James Williams <jamesw@instructure.com>
fixes#9872
on the course settings page, the 'end this course' button should not
display for courses whose terms have already ended.
test plan:
* create a course inside of a term whose end_at date has already
passed;
* visit the course settings page and verify that the 'end this course'
button is not visible in the sidebar.
Change-Id: I8f8ddc1cd495a3488fda6989de28d45abd67b6cd
Reviewed-on: https://gerrit.instructure.com/12893
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
fixes#7537
on the course settings page, users should not see the 'end
this course' button if the course has already soft-concluded
(e.g. a course whose end date has passed).
this commit also moves the settings sidebar into a partial.
test plan:
* create a course with an end date that is in the past;
* visit the course settings page and verify that the end
course button is not visible in the sidebar;
* remove the end at date or set it to the future and verify
that the end course button appears.
Change-Id: I0eb8fb79c6f59748d0ef3c63ec6ffcb81106520b
Reviewed-on: https://gerrit.instructure.com/12709
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Mark Ericksen <marke@instructure.com>
other changes:
- makes it possible to add a student to multiple sections in the course
- pagination of the user lists
- converted user tab js to coffee and backbone
test plan:
- as a teacher go to /courses/*/settings#tab-users
- verify that multiple students can be linked/unlinked to an observer
- verify that users can be added to and removed from multiple sections
- verify that 'Resend Invitation' and 'Remove from course' work
Change-Id: I0f64f72f1937348817990b6f13b6310185b68a73
Reviewed-on: https://gerrit.instructure.com/10865
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Joe Tanner <joe@instructure.com>
test plan:
* create a public course, publish it, create an assignment
* go to the course without logging in
* it should not give a page error
Change-Id: I075acf19e196ef5de9eebdc1218c6d1b82c9ba5d
Reviewed-on: https://gerrit.instructure.com/9219
Reviewed-by: Zach Pendleton <zachp@instructure.com>
Tested-by: Hudson <hudson@instructure.com>
submitted assignments weren't having their status consistently
updated because the partial depended on the @current_user_submissions
variable that wasn't being set in every view.
fixed this by adding an extra conditional to the view (eek!). also
included a fix to ensure that the correct context is always used
when checking permissions (the page context isn't always the context
of the 'Coming Up' item).
test plan:
* create a course with an assignment due tomorrow;
* as student of that course, log in and submit the assignment;
* verify that the assignment shows as submitted on both the user
dashboard and the course home page.
* click around the app and ensure that the sidebar works as
expected.
Change-Id: If1b955cd4e49c3c83cae9c92a0f3c515e8d3c2d3
Reviewed-on: https://gerrit.instructure.com/8633
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Ryan Florence <ryanf@instructure.com>
test plan:
* Create a quiz due tomorrow. In the gradebook set it to muted.
* As a student, take the quiz.
* As the teacher, grade the quiz.
* As the student, go to your dashboard and find the quiz in "Coming Up"
on the right. Hover over the quiz name and verify that the tooltip
does not contain your score.
* As teacher, unmute the assignment in the gradebook.
* As the student, verify that the toolip will now contain your score.
Change-Id: Ia8f68299c776388a0e483d61e282b6dfa5788616
Reviewed-on: https://gerrit.instructure.com/7423
Reviewed-by: Brian Palmer <brianp@instructure.com>
Tested-by: Hudson <hudson@instructure.com>
test plan:
* set up an account with a course
* start netcat in listening mode
* enable the grade export plugin for the course to post to your netcat
instance
* visit the course as a teacher and set up some assignments with grades
* publish the grades
Change-Id: I7f5b6b264b70ffe06c38f29ad52ee1d4694e5a8d
Reviewed-on: https://gerrit.instructure.com/7279
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>