Skip to content

Commit

Permalink
ci: drop testing against rails 4.2
Browse files Browse the repository at this point in the history
  • Loading branch information
grzuy committed Oct 19, 2023
1 parent 8d77a5b commit cfca126
Show file tree
Hide file tree
Showing 4 changed files with 25 additions and 53 deletions.
9 changes: 0 additions & 9 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@ jobs:
- rails_6_1
- rails_6_0
- rails_5_2
- rails_4_2
- dalli3
- dalli2
- redis_5
Expand All @@ -46,30 +45,22 @@ jobs:
ruby: 3.2.2
- gemfile: rails_5_2
ruby: 3.2.2
- gemfile: rails_4_2
ruby: 3.2.2
- gemfile: dalli2
ruby: 3.2.2
- gemfile: rack_1
ruby: 3.1.4
- gemfile: rails_5_2
ruby: 3.1.4
- gemfile: rails_4_2
ruby: 3.1.4
- gemfile: dalli2
ruby: 3.1.4
- gemfile: rack_1
ruby: 3.0.6
- gemfile: rails_5_2
ruby: 3.0.6
- gemfile: rails_4_2
ruby: 3.0.6
- gemfile: dalli2
ruby: 3.0.6
- gemfile: rack_1
ruby: 2.7.8
- gemfile: rails_4_2
ruby: 2.7.8
- gemfile: rails_7_0
ruby: 2.6.10
- gemfile: rails_7_0
Expand Down
8 changes: 0 additions & 8 deletions Appraisals
Original file line number Diff line number Diff line change
Expand Up @@ -41,14 +41,6 @@ appraise 'rails_5-2' do
gem 'railties', '~> 5.2.0'
end

appraise 'rails_4-2' do
gem 'railties', '~> 4.2.0'

# Override rack-test version constraint by making it more loose
# so it's compatible with actionpack 4.2.x
gem "rack-test", ">= 0.6"
end

appraise 'dalli2' do
gem 'dalli', '~> 2.0'
end
Expand Down
8 changes: 0 additions & 8 deletions gemfiles/rails_4_2.gemfile

This file was deleted.

53 changes: 25 additions & 28 deletions spec/rack_attack_instrumentation_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,41 +3,38 @@
require_relative "spec_helper"
require 'active_support'

# ActiveSupport::Subscribers added in ~> 4.0.2.0
if ActiveSupport::VERSION::MAJOR > 3
require_relative 'spec_helper'
require 'active_support/subscriber'
class CustomSubscriber < ActiveSupport::Subscriber
@notification_count = 0
require_relative 'spec_helper'
require 'active_support/subscriber'
class CustomSubscriber < ActiveSupport::Subscriber
@notification_count = 0

class << self
attr_accessor :notification_count
end
class << self
attr_accessor :notification_count
end

def throttle(_event)
self.class.notification_count += 1
end
def throttle(_event)
self.class.notification_count += 1
end
end

describe 'Rack::Attack.instrument' do
before do
@period = 60 # Use a long period; failures due to cache key rotation less likely
Rack::Attack.cache.store = ActiveSupport::Cache::MemoryStore.new
Rack::Attack.throttle('ip/sec', limit: 1, period: @period) { |req| req.ip }
end
describe 'Rack::Attack.instrument' do
before do
@period = 60 # Use a long period; failures due to cache key rotation less likely
Rack::Attack.cache.store = ActiveSupport::Cache::MemoryStore.new
Rack::Attack.throttle('ip/sec', limit: 1, period: @period) { |req| req.ip }
end

describe "with throttling" do
before do
ActiveSupport::Notifications.stub(:notifier, ActiveSupport::Notifications::Fanout.new) do
CustomSubscriber.attach_to("rack_attack")
2.times { get '/', {}, 'REMOTE_ADDR' => '1.2.3.4' }
end
describe "with throttling" do
before do
ActiveSupport::Notifications.stub(:notifier, ActiveSupport::Notifications::Fanout.new) do
CustomSubscriber.attach_to("rack_attack")
2.times { get '/', {}, 'REMOTE_ADDR' => '1.2.3.4' }
end
end

it 'should instrument without error' do
_(last_response.status).must_equal 429
assert_equal 1, CustomSubscriber.notification_count
end
it 'should instrument without error' do
_(last_response.status).must_equal 429
assert_equal 1, CustomSubscriber.notification_count
end
end
end

0 comments on commit cfca126

Please sign in to comment.