Skip to content
157 changes: 3 additions & 154 deletions .rubocop_todo.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# This configuration was generated by
# `rubocop --auto-gen-config --auto-gen-only-exclude --no-exclude-limit`
# on 2026-07-28 13:24:16 UTC using RuboCop version 1.88.2.
# on 2026-07-28 13:33:16 UTC using RuboCop version 1.88.2.
# The point is for the user to remove these configuration records
# one by one as the offenses are removed from the code base.
# Note that changes in the inspected code, or installation of new
Expand All @@ -18,14 +18,12 @@ Capybara/RSpec/VisibilityMatcher:
Exclude:
- 'spec/components/chapters_sidebar_component_spec.rb'

# Offense count: 10
# Offense count: 5
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: AllowedMethods, AllowedPatterns.
Lint/AmbiguousBlockAssociation:
Exclude:
- 'spec/controllers/admin/member_notes_controller_spec.rb'
- 'spec/controllers/admin/workshops_controller_spec.rb'
- 'spec/models/feedback_spec.rb'
- 'spec/services/three_month_email_service_spec.rb'

# Offense count: 2
Expand Down Expand Up @@ -261,52 +259,7 @@ RSpec/AnyInstance:
- 'spec/controllers/member/details_controller_spec.rb'
- 'spec/support/helpers/login_helpers.rb'

# Offense count: 25
# This cop supports unsafe autocorrection (--autocorrect-all).
RSpec/BeEq:
Exclude:
- 'spec/controllers/member/details_controller_spec.rb'
- 'spec/lib/tasks/feedback_rake_spec.rb'
- 'spec/lib/tasks/mailing_list_rake_spec.rb'
- 'spec/models/invitation_spec.rb'
- 'spec/models/meeting_spec.rb'
- 'spec/presenters/how_you_found_us_presenter_spec.rb'
- 'spec/presenters/virtual_workshop_presenter_spec.rb'
- 'spec/presenters/workshop_presenter_capacity_spec.rb'
- 'spec/presenters/workshop_presenter_spec.rb'
- 'spec/support/shared_examples/behaves_like_an_invitation_route.rb'

# Offense count: 67
# This cop supports safe autocorrection (--autocorrect).
RSpec/ContextMethod:
Exclude:
- 'spec/features/accepting_invitation_spec.rb'
- 'spec/features/admin/chapters_spec.rb'
- 'spec/features/admin/groups_spec.rb'
- 'spec/features/admin/manage_workshop_attendances_spec.rb'
- 'spec/features/admin/workshops_spec.rb'
- 'spec/features/coach_accepting_invitation_spec.rb'
- 'spec/features/managing_workshop_attendance_spec.rb'
- 'spec/features/member_portal_spec.rb'
- 'spec/features/viewing_a_workshop_invitation_spec.rb'
- 'spec/lib/services/flodesk_spec.rb'
- 'spec/lib/services/mailing_list_spec.rb'
- 'spec/models/ban_spec.rb'
- 'spec/models/event_spec.rb'
- 'spec/models/feedback_spec.rb'
- 'spec/models/meeting_spec.rb'
- 'spec/models/sponsor_spec.rb'
- 'spec/models/workshop_invitation_spec.rb'
- 'spec/models/workshop_spec.rb'
- 'spec/presenters/contact_presenter_spec.rb'
- 'spec/presenters/invitation_presenter_spec.rb'
- 'spec/presenters/sponsor_presenter_spec.rb'
- 'spec/presenters/virtual_workshop_presenter_spec.rb'
- 'spec/support/shared_examples/behaves_like_date_time_concerns.rb'
- 'spec/support/shared_examples/behaves_like_invitable.rb'
- 'spec/support/shared_examples/behaves_like_managing_workshop_attendance.rb'

# Offense count: 212
# Offense count: 144
# Configuration parameters: Prefixes, AllowedPatterns.
# Prefixes: when, with, without
RSpec/ContextWording:
Expand All @@ -319,7 +272,6 @@ RSpec/ContextWording:
- 'spec/features/admin/accessing_portal_spec.rb'
- 'spec/features/admin/chapters_spec.rb'
- 'spec/features/admin/feedback_spec.rb'
- 'spec/features/admin/groups_spec.rb'
- 'spec/features/admin/manage_sponsor_spec.rb'
- 'spec/features/admin/manage_workshop_attendances_spec.rb'
- 'spec/features/admin/managing_organisers_spec.rb'
Expand All @@ -328,11 +280,9 @@ RSpec/ContextWording:
- 'spec/features/admin/sponsor_spec.rb'
- 'spec/features/admin/workshops_spec.rb'
- 'spec/features/chapter_spec.rb'
- 'spec/features/coach_accepting_invitation_spec.rb'
- 'spec/features/internationalization_spec.rb'
- 'spec/features/listing_events_spec.rb'
- 'spec/features/manage_contact_preferences_spec.rb'
- 'spec/features/managing_workshop_attendance_spec.rb'
- 'spec/features/member_feedback_spec.rb'
- 'spec/features/member_portal_spec.rb'
- 'spec/features/sponsors_spec.rb'
Expand All @@ -343,8 +293,6 @@ RSpec/ContextWording:
- 'spec/features/viewing_a_workshop_invitation_spec.rb'
- 'spec/features/viewing_a_workshop_spec.rb'
- 'spec/features/visiting_homepage_spec.rb'
- 'spec/lib/services/flodesk_spec.rb'
- 'spec/lib/services/mailing_list_spec.rb'
- 'spec/mailers/feedback_request_mailer_spec.rb'
- 'spec/models/ban_spec.rb'
- 'spec/models/chapter_spec.rb'
Expand All @@ -364,15 +312,9 @@ RSpec/ContextWording:
- 'spec/models/workshop_invitation_spec.rb'
- 'spec/models/workshop_spec.rb'
- 'spec/models/workshop_sponsor_spec.rb'
- 'spec/presenters/contact_presenter_spec.rb'
- 'spec/presenters/invitation_presenter_spec.rb'
- 'spec/presenters/sponsor_presenter_spec.rb'
- 'spec/presenters/virtual_workshop_presenter_spec.rb'
- 'spec/presenters/workshop_presenter_spec.rb'
- 'spec/serializers/workshop_calendar_spec.rb'
- 'spec/support/shared_examples/behaves_like_an_invitation_route.rb'
- 'spec/support/shared_examples/behaves_like_date_time_concerns.rb'
- 'spec/support/shared_examples/behaves_like_invitable.rb'
- 'spec/support/shared_examples/behaves_like_managing_workshop_attendance.rb'

# Offense count: 57
Expand Down Expand Up @@ -411,62 +353,6 @@ RSpec/ExampleLength:
- 'spec/support/shared_examples/behaves_like_an_invitation_route.rb'
- 'spec/support/shared_examples/behaves_like_sending_workshop_emails.rb'

# Offense count: 16
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: CustomTransform, IgnoredWords, DisallowedExamples.
# DisallowedExamples: works
RSpec/ExampleWording:
Exclude:
- 'spec/controllers/admin/workshops_controller_spec.rb'
- 'spec/lib/tasks/mailing_list_rake_spec.rb'
- 'spec/models/event_spec.rb'
- 'spec/presenters/sponsor_presenter_spec.rb'
- 'spec/presenters/virtual_workshop_presenter_spec.rb'
- 'spec/support/shared_examples/behaves_like_managing_workshop_attendance.rb'

# Offense count: 4
# This cop supports safe autocorrection (--autocorrect).
RSpec/ExcessiveDocstringSpacing:
Exclude:
- 'spec/features/accepting_invitation_spec.rb'
- 'spec/features/admin/manage_workshop_attendances_spec.rb'
- 'spec/models/feedback_spec.rb'
- 'spec/presenters/contact_presenter_spec.rb'

# Offense count: 8
# This cop supports unsafe autocorrection (--autocorrect-all).
# Configuration parameters: EnforcedStyle, NegatedMatcher.
# SupportedStyles: method_call, block
RSpec/ExpectChange:
Exclude:
- 'spec/controllers/admin/workshops_controller_spec.rb'
- 'spec/features/member/login_spec.rb'
- 'spec/models/feedback_spec.rb'

# Offense count: 10
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle.
# SupportedStyles: implicit, each, example
RSpec/HookArgument:
Exclude:
- 'spec/features/admin/filtering_sponsors_list_spec.rb'
- 'spec/features/admin/sponsor_spec.rb'
- 'spec/features/coach_accepting_invitation_spec.rb'
- 'spec/features/internationalization_spec.rb'
- 'spec/features/viewing_a_meeting_spec.rb'
- 'spec/presenters/sponsor_presenter_spec.rb'
- 'spec/spec_helper.rb'

# Offense count: 9
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle.
# SupportedStyles: is_expected, should
RSpec/ImplicitExpect:
Exclude:
- 'spec/models/feedback_request_spec.rb'
- 'spec/models/meeting_spec.rb'
- 'spec/models/tutorial_spec.rb'

# Offense count: 3
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle.
Expand Down Expand Up @@ -538,21 +424,6 @@ RSpec/MessageSpies:
- 'spec/support/shared_examples/behaves_like_an_invitation.rb'
- 'spec/support/shared_examples/behaves_like_sending_workshop_emails.rb'

# Offense count: 9
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle.
# SupportedStyles: hash, symbol
RSpec/MetadataStyle:
Exclude:
- 'spec/features/admin/add_user_to_workshop_spec.rb'
- 'spec/features/admin/manage_workshop_attendances_spec.rb'
- 'spec/features/admin/members_spec.rb'
- 'spec/features/admin/sponsor_spec.rb'
- 'spec/features/member_feedback_spec.rb'
- 'spec/features/viewing_a_workshop_invitation_spec.rb'
- 'spec/features/viewing_pages_spec.rb'
- 'spec/spec_helper.rb'

# Offense count: 136
# Configuration parameters: Max.
RSpec/MultipleExpectations:
Expand Down Expand Up @@ -656,22 +527,6 @@ RSpec/NamedSubject:
- 'spec/policies/testimonial_policy_spec.rb'
- 'spec/policies/workshop_policy_spec.rb'

# Offense count: 21
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle.
# SupportedStyles: not_to, to_not
RSpec/NotToNot:
Exclude:
- 'spec/lib/tasks/mailing_list_rake_spec.rb'
- 'spec/models/ban_spec.rb'
- 'spec/models/event_spec.rb'
- 'spec/models/feedback_request_spec.rb'
- 'spec/models/feedback_spec.rb'
- 'spec/models/sponsor_spec.rb'
- 'spec/models/tutorial_spec.rb'
- 'spec/support/shared_examples/behaves_like_an_invitation_route.rb'
- 'spec/support/shared_examples/behaves_like_invitable.rb'

# Offense count: 4
RSpec/RepeatedExample:
Exclude:
Expand Down Expand Up @@ -709,12 +564,6 @@ RSpec/SubjectStub:
- 'spec/models/workshop_invitation_spec.rb'
- 'spec/models/workshop_spec.rb'

# Offense count: 2
# This cop supports unsafe autocorrection (--autocorrect-all).
RSpec/VerifiedDoubleReference:
Exclude:
- 'spec/controllers/admin/member_search_controller_spec.rb'

# Offense count: 38
# Configuration parameters: IgnoreNameless, IgnoreSymbolicNames.
RSpec/VerifiedDoubles:
Expand Down
4 changes: 2 additions & 2 deletions spec/controllers/admin/member_search_controller_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@
end

context 'when user is an admin' do
let(:fake_relation) { instance_double('ActiveRecord::Relation') }
let(:fake_juliet) { instance_double('Member', id: 1, name: 'Juliet', surname: 'Montague') }
let(:fake_relation) { instance_double(ActiveRecord::Relation) }
let(:fake_juliet) { instance_double(Member, id: 1, name: 'Juliet', surname: 'Montague') }

before do
login_as_admin(member)
Expand Down
24 changes: 12 additions & 12 deletions spec/controllers/admin/workshops_controller_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -30,32 +30,32 @@
end

context "workshop deletion tried within specific time frame since it's creation" do
it 'should not delete the workshop' do
it 'does not delete the workshop' do
expect do
delete :destroy, params: { id: workshop.id }
end.not_to change { Workshop.count }
end.not_to change(Workshop, :count)
end

it "should display workshop can't be deleted related flash message" do
it "displays workshop can't be deleted related flash message" do
delete :destroy, params: { id: workshop.id }

expect(flash[:notice]).to eq(I18n.t('admin.workshop.destroy.failure'))
end
end

context "workshop deletion tried outside specific time frame since it's creation" do
it 'should not delete the workshop' do
it 'does not delete the workshop' do
new_current_time = 1.day + Admin::WorkshopsController::
WORKSHOP_DELETION_TIME_FRAME_SINCE_CREATION

travel new_current_time do
expect do
delete :destroy, params: { id: workshop.id }
end.not_to change { Workshop.count }
end.not_to change(Workshop, :count)
end
end

it "should display workshop can't be deleted related flash message" do
it "displays workshop can't be deleted related flash message" do
new_current_time = 1.day + Admin::WorkshopsController::
WORKSHOP_DELETION_TIME_FRAME_SINCE_CREATION

Expand All @@ -70,32 +70,32 @@

context "workshop invitations haven't been sent" do
context "workshop deletion tried within specific time frame since it's creation" do
it 'should successfully delete the workshop' do
it 'successfully deletes the workshop' do
expect do
delete :destroy, params: { id: workshop.id }
end.to change { Workshop.count }.by(-1)
end.to change(Workshop, :count).by(-1)
end

it 'should display workshop deleted successfully related flash message' do
it 'displays workshop deleted successfully related flash message' do
delete :destroy, params: { id: workshop.id }

expect(flash[:notice]).to eq(I18n.t('admin.workshop.destroy.success'))
end
end

context "workshop deletion tried outside specific time frame since it's creation" do
it 'should not delete the workshop' do
it 'does not delete the workshop' do
new_current_time = 1.day + Admin::WorkshopsController::
WORKSHOP_DELETION_TIME_FRAME_SINCE_CREATION

travel new_current_time do
expect do
delete :destroy, params: { id: workshop.id }
end.not_to change { Workshop.count }
end.not_to change(Workshop, :count)
end
end

it "should display workshop can't be deleted related flash message" do
it "displays workshop can't be deleted related flash message" do
new_current_time = 1.day + Admin::WorkshopsController::
WORKSHOP_DELETION_TIME_FRAME_SINCE_CREATION

Expand Down
2 changes: 1 addition & 1 deletion spec/controllers/member/details_controller_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@

member.reload
expect(I18n.t("member.details.edit.how_you_found_us_options.#{member.how_you_found_us}")).to eq('Social media')
expect(member.how_you_found_us_other_reason).to eq(nil)
expect(member.how_you_found_us_other_reason).to be_nil
expect(response).to redirect_to(step2_member_path)
end

Expand Down
4 changes: 2 additions & 2 deletions spec/features/accepting_invitation_spec.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
RSpec.feature 'Accepting a workshop invitation', type: :feature do
context '#workshop' do
describe '#workshop' do
let(:member) { Fabricate(:member) }
let(:invitation) { Fabricate(:workshop_invitation, member: member, tutorial: tutorial.title) }
let(:invitation_route) { invitation_path(invitation) }
Expand Down Expand Up @@ -48,7 +48,7 @@

context 'amend invitation details' do
context 'a student' do
scenario 'cannot accept an invitation without a tutorial' do
scenario 'cannot accept an invitation without a tutorial' do
invitation.update(attending: nil, tutorial: nil)
visit invitation_route

Expand Down
2 changes: 1 addition & 1 deletion spec/features/admin/add_user_to_workshop_spec.rb
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
RSpec.describe 'Add a user to an existing workshop', js: true, type: :feature do
RSpec.describe 'Add a user to an existing workshop', :js, type: :feature do
let(:member) { Fabricate(:member) }

let!(:juliet) { Fabricate(:member, name: 'Juliet', surname: 'Capulet') }
Expand Down
4 changes: 2 additions & 2 deletions spec/features/admin/chapters_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
end
end

context '#creating a new chapter' do
describe '#creating a new chapter' do
before do
login_as_admin(member)
end
Expand All @@ -30,7 +30,7 @@
end
end

context '#editing a chapter' do
describe '#editing a chapter' do
let(:chapter) { Fabricate(:chapter_with_organiser) }

context 'organiser editing their chapter' do
Expand Down
2 changes: 1 addition & 1 deletion spec/features/admin/filtering_sponsors_list_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
describe 'when visiting the sponsors page' do
let!(:sponsors) { Fabricate.times(2, :sponsor) }

before(:each) do
before do
visit admin_sponsors_path
end

Expand Down
Loading