-
Notifications
You must be signed in to change notification settings - Fork 227
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
Tweaked Confirmation Prompt and Added Test #2253
base: master
Are you sure you want to change the base?
Changes from 4 commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
require 'rails_helper' | ||
|
||
RSpec.describe "handin_form", type: :view do | ||
let(:assessment) { create(:assessment) } | ||
let(:aud) { create(:assessment_user_datum, assessment: assessment, past_due_at: true) } | ||
let(:grace_late_info) { "using 1 late day" } | ||
|
||
before do | ||
assign(:aud, aud) | ||
allow(view).to receive(:grace_late_info).and_return(grace_late_info) | ||
render partial: "assessments/handin_form", locals: { f: ActionView::Helpers::FormBuilder.new(nil, nil, self, {}) } | ||
end | ||
|
||
it "renders the Submit Late button with a confirmation prompt" do | ||
expect(rendered).to have_selector("input[type='submit'][id='fake-submit']") | ||
expect(rendered).to have_selector("input[data-confirm='You are #{grace_late_info}. Are you sure you want to continue?']") | ||
end | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🛠️ Refactor suggestion Enhance test coverage for late submission scenarios. The current test only verifies the basic presence of the confirmation prompt. Consider adding test cases for:
Would you like me to help generate additional test cases? 🧰 Tools🪛 rubocop (1.68.0)[convention] 16-16: Line is too long. [125/100] (Layout/LineLength) |
||
end | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Codebase verification
Based on the findings, I can now provide the final response:
Add ARIA attributes to confirmation dialogs for better accessibility
The codebase uses Rails' default
data-confirm
attribute for confirmation dialogs, which relies onjquery_ujs
(found in application.js). These default dialogs lack proper accessibility attributes. To improve accessibility:role="dialog"
andaria-modal="true"
to the confirmation dialogaria-labelledby
attribute referencing a dialog title🔗 Analysis chain
Verify accessibility of confirmation dialogs.
Ensure that the confirmation dialogs are accessible to screen readers and keyboard navigation.
Also applies to: 60-60
Let me check the confirmation dialog implementation further to provide a comprehensive verification.
Let me try one more search to check for any JavaScript confirmation handling in the application.
Let me check the handin.js and application.js files since they might contain confirmation dialog implementations.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
Length of output: 137
Script:
Length of output: 222
Script:
Length of output: 2611
Script:
Length of output: 6316