Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Autotester Token Generation Time #7127

Merged
merged 16 commits into from
Jul 25, 2024

Conversation

umututku03
Copy link
Contributor

@umututku03 umututku03 commented Jun 28, 2024

Proposed Changes

(Describe your changes here. Also describe the motivation for your changes: what problem do they solve, or how do they improve the application or codebase? If this pull request fixes an open issue, use a keyword to link this pull request to the issue.)

This enhancement aims to help students know exactly when they can expect the next token to be available, providing clarity and better planning for their test runs. Currently, the system shows - tokens available on, tokens regenerate after and token available. The goal is to calculate and display the exact future time when the next token will be generated based on the current token regeneration period and the last token generation time. We refactored the AutomatedTestsController to improve error handling and robustly calculate the next_token_generation_time, added new I18n keys for better user messaging, and ensured all keys are used correctly to avoid non-normalized keys. The frontend interface was updated to display these messages clearly, informing students about next token generation time.

Resolves #7071.

Screenshots of your changes (if applicable) Screenshot 2024-07-12 at 6 53 23 PM
Associated documentation repository pull request (if applicable)

Type of Change

(Write an X or a brief description next to the type or types that best describe your changes.)

Type Applies?
🚨 Breaking change (fix or feature that would cause existing functionality to change) X
New feature (non-breaking change that adds functionality) X
🐛 Bug fix (non-breaking change that fixes an issue)
🎨 User interface change (change to user interface; provide screenshots) X
♻️ Refactoring (internal change to codebase, without changing functionality)
🚦 Test update (change that only adds or modifies tests)
📦 Dependency update (change that updates a dependency)
🔧 Internal (change that only affects developers or continuous integration)

Checklist

(Complete each of the following items for your pull request. Indicate that you have completed an item by changing the [ ] into a [x] in the raw text, or by clicking on the checkbox in the rendered description on GitHub.)

Before opening your pull request:

  • I have performed a self-review of my changes.
    • Check that all changed files included in this pull request are intentional changes.
    • Check that all changes are relevant to the purpose of this pull request, as described above.
  • I have added tests for my changes, if applicable.
    • This is required for all bug fixes and new features.
  • I have updated the project documentation, if applicable.
    • This is required for new features.
  • If this is my first contribution, I have added myself to the list of contributors.

After opening your pull request:

  • I have updated the project Changelog (this is required for all changes).
  • I have verified that the pre-commit.ci checks have passed.
  • I have verified that the CI tests have passed.
  • I have reviewed the test coverage changes reported by Coveralls.
  • I have requested a review from a project maintainer.

Questions and Comments

(Include any questions or comments you have regarding your changes.)

@umututku03 umututku03 changed the title Autotester time Autotester Token Generation Time Jun 28, 2024
@umututku03 umututku03 marked this pull request as draft June 29, 2024 03:18
@umututku03 umututku03 marked this pull request as ready for review June 29, 2024 03:19
Copy link
Contributor

@david-yz-liu david-yz-liu left a comment

Choose a reason for hiding this comment

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

@umututku03 in addition to my inline comments, you should redo the pull request description, as you have removed parts under the "description" section and have some formatting errors in the checklist. Note that since this is a user-facing change screenshots should be included.

Also, there is a failing test.

app/models/assignment.rb Outdated Show resolved Hide resolved
app/controllers/automated_tests_controller.rb Outdated Show resolved Hide resolved
app/controllers/automated_tests_controller.rb Outdated Show resolved Hide resolved
app/controllers/automated_tests_controller.rb Outdated Show resolved Hide resolved
app/views/automated_tests/student_interface.html.erb Outdated Show resolved Hide resolved
spec/controllers/automated_tests_controller_spec.rb Outdated Show resolved Hide resolved
spec/controllers/automated_tests_controller_spec.rb Outdated Show resolved Hide resolved
spec/controllers/automated_tests_controller_spec.rb Outdated Show resolved Hide resolved
@coveralls
Copy link
Collaborator

coveralls commented Jul 12, 2024

Pull Request Test Coverage Report for Build 10086959334

Warning: This coverage report may be inaccurate.

This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

Details

  • 51 of 51 (100.0%) changed or added relevant lines in 2 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage increased (+0.03%) to 91.439%

Totals Coverage Status
Change from base Build 10009701680: 0.03%
Covered Lines: 40204
Relevant Lines: 43295

💛 - Coveralls

app/views/automated_tests/student_interface.html.erb Outdated Show resolved Hide resolved
app/controllers/automated_tests_controller.rb Outdated Show resolved Hide resolved
app/controllers/automated_tests_controller.rb Outdated Show resolved Hide resolved
app/controllers/automated_tests_controller.rb Outdated Show resolved Hide resolved
@umututku03 umututku03 marked this pull request as draft July 19, 2024 04:20
@umututku03 umututku03 marked this pull request as ready for review July 19, 2024 04:50
Copy link
Contributor

@david-yz-liu david-yz-liu left a comment

Choose a reason for hiding this comment

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

@umututku03 looking good: the logic has been simplified and my previous comments addressed. I left a more detailed review, including UI-related items. After addressing these, please update the screenshot in the PR description as well. 👍

app/controllers/automated_tests_controller.rb Outdated Show resolved Hide resolved
app/controllers/automated_tests_controller.rb Outdated Show resolved Hide resolved
app/views/automated_tests/student_interface.html.erb Outdated Show resolved Hide resolved
config/locales/en.yml Outdated Show resolved Hide resolved
spec/controllers/automated_tests_controller_spec.rb Outdated Show resolved Hide resolved
spec/controllers/automated_tests_controller_spec.rb Outdated Show resolved Hide resolved
spec/controllers/automated_tests_controller_spec.rb Outdated Show resolved Hide resolved
@umututku03 umututku03 marked this pull request as draft July 21, 2024 19:12
@umututku03 umututku03 marked this pull request as ready for review July 21, 2024 20:25
Copy link
Contributor

@david-yz-liu david-yz-liu left a comment

Choose a reason for hiding this comment

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

@umututku03 great work on this! 🎉

@david-yz-liu david-yz-liu merged commit 067b17f into MarkUsProject:master Jul 25, 2024
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Display when the next "Student-Run Tests" token generation happens
3 participants