Skip to content

[Bugfix:Testing] rainbow_grading checkbox stability#12976

Merged
bmcutler merged 10 commits into
mainfrom
fix-rg-spec
Jul 5, 2026
Merged

[Bugfix:Testing] rainbow_grading checkbox stability#12976
bmcutler merged 10 commits into
mainfrom
fix-rg-spec

Conversation

@roye2

@roye2 roye2 commented Jul 1, 2026

Copy link
Copy Markdown
Contributor

Why is this Change Important & Necessary?

The rainbow_grading spec was testing the UI by checking and unchecking / interacting with all the elements on the Grades Configuration page. However it did not verify that the boxes were actually checked before moving on to the next one, which led to some flaky / inconsistent behavior.

Additionally, the reset function was not properly clearing the page back to it's original state, meaning subsequent runs of the spec would have different behavior than expected.

I also renamed the spec to grades_configuration.spec.js and moved it to Cypress-Feature since that seemed more appropriate.

What is the New Behavior?

The checkbox interaction and the reset function have been updated to have more stable behavior. I used cy.get with timeouts to ensure that the checkboxes are clicked.

Additionally, I added some small verification in the 'Test Web-Based Rainbow Grades Customization' to make sure that the page is correctly updating when the ui is interacted with.

What steps should a reviewer take to reproduce or test the bug or new feature?

Run rainbow_grading.spec.js locally and ensure it passes.
Also, observe that it passes on the github CI.

Automated Testing & Documentation

Other information

Why isn't this called grades_configuration.spec.js? That is the actual page / functionality that is being tested.

@codecov

codecov Bot commented Jul 1, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 21.41%. Comparing base (149a3a4) to head (25b2350).

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff            @@
##               main   #12976   +/-   ##
=========================================
  Coverage     21.41%   21.41%           
  Complexity    10002    10002           
=========================================
  Files           277      277           
  Lines         37418    37418           
  Branches        512      512           
=========================================
  Hits           8013     8013           
  Misses        28904    28904           
  Partials        501      501           
Flag Coverage Δ
autograder 21.16% <ø> (ø)
js 1.98% <ø> (ø)
migrator 100.00% <ø> (ø)
php 20.37% <ø> (ø)
python_submitty_utils 80.08% <ø> (ø)
submitty_daemon_jobs 91.13% <ø> (ø)
vue 100.00% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@roye2 roye2 changed the title fix upload manual customization race cond [Bugfix:Testing] rainbowgrades upload manual customization Jul 1, 2026
@roye2 roye2 changed the title [Bugfix:Testing] rainbowgrades upload manual customization [Bugfix:Testing] rainbowgrades upload manual customizaton Jul 1, 2026
@roye2
roye2 marked this pull request as ready for review July 2, 2026 13:50
@roye2 roye2 changed the title [Bugfix:Testing] rainbowgrades upload manual customizaton [Bugfix:Testing] rainbow_grading checkbox stability Jul 2, 2026

@dagemcn dagemcn left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I tested the spec on main and was able to observe the instability that you mentioned in the description. After testing on the branch, I was able to run the test multiple times with no failures outside of one regarding the textbox, it would contain text from the previous run through.

@github-project-automation github-project-automation Bot moved this from Seeking Reviewer to Work in Progress in Submitty Development Jul 3, 2026

@dagemcn dagemcn left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, the previous error I observed is fixed. The title and folder change on the spec are also good changes to be more in line with what the spec actually does.

@github-project-automation github-project-automation Bot moved this from Work in Progress to Awaiting Maintainer Review in Submitty Development Jul 3, 2026
@bmcutler
bmcutler merged commit 0da49a3 into main Jul 5, 2026
28 of 29 checks passed
@bmcutler
bmcutler deleted the fix-rg-spec branch July 5, 2026 12:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

3 participants