8000 Get rid of db-query-matchers gem · activeadmin/activeadmin@f7cdccc · GitHub
[go: up one dir, main page]

Skip to content

Commit f7cdccc

Browse files
Get rid of db-query-matchers gem
1 parent 74825da co
10000
mmit f7cdccc

File tree

13 files changed

+36
-52
lines changed

13 files changed

+36
-52
lines changed

Gemfile

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ group :test do
2424
gem "cuprite"
2525
gem "capybara"
2626
gem "webrick"
27-
gem "db-query-matchers"
2827

2928
gem "simplecov", require: false # Test coverage generator. Go to /coverage/ after running tests
3029
gem "cucumber-rails", require: false

Gemfile.lock

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -158,9 +158,6 @@ GEM
158158
activerecord (>= 5.a)
159159
database_cleaner-core (~> 2.0.0)
160160
database_cleaner-core (2.0.1)
161-
db-query-matchers (0.10.0)
162-
activesupport (>= 4.0, < 7)
163-
rspec (~> 3.0)
164161
devise (4.8.1)
165162
bcrypt (~> 3.0)
166163
orm_adapter (~> 0.1)
@@ -374,10 +371,6 @@ GEM
374371
actionpack (>= 5.0)
375372
railties (>= 5.0)
376373
rexml (3.2.5)
377-
rspec (3.10.0)
378-
rspec-core (~> 3.10.0)
379-
rspec-expectations (~> 3.10.0)
380-
rspec-mocks (~> 3.10.0)
381374
rspec-core (3.10.1)
382375
rspec-support (~> 3.10.0)
383376
rspec-expectations (3.10.1)
@@ -483,7 +476,6 @@ DEPENDENCIES
483476
cucumber-rails
484477
cuprite
485478
database_cleaner
486-
db-query-matchers
487479
devise
488480
draper
489481
i18n-spec

gemfiles/rails_52/Gemfile

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ group :test do
2424
gem "cuprite"
2525
gem "capybara"
2626
gem "webrick"
27-
gem "db-query-matchers"
2827

2928
gem "simplecov", require: false # Test coverage generator. Go to /coverage/ after running tests
3029
gem "cucumber-rails", require: false

gemfiles/rails_52/Gemfile.lock

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -136,9 +136,6 @@ GEM
136136
activerecord (>= 5.a)
137137
database_cleaner-core (~> 2.0.0)
138138
database_cleaner-core (2.0.1)
139-
db-query-matchers (0.10.0)
140-
activesupport (>= 4.0, < 7)
141-
rspec (~> 3.0)
142139
devise (4.8.1)
143140
bcrypt (~> 3.0)
144141
orm_adapter (~> 0.1)
@@ -289,10 +286,6 @@ GEM
289286
actionpack (>= 5.0)
290287
railties (>= 5.0)
291288
rexml (3.2.5)
292-
rspec (3.10.0)
293-
rspec-core (~> 3.10.0)
294-
rspec-expectations (~> 3.10.0)
295-
rspec-mocks (~> 3.10.0)
296289
rspec-core (3.10.1)
297290
rspec-support (~> 3.10.0)
298291
rspec-expectations (3.10.1)
@@ -368,7 +361,6 @@ DEPENDENCIES
368361
cucumber-rails
369362
cuprite
370363
database_cleaner
371-
db-query-matchers
372364
devise
373365
draper
374366
jasmine

gemfiles/rails_60/Gemfile

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ group :test do
2424
gem "cuprite"
2525
gem "capybara"
2626
gem "webrick"
27-
gem "db-query-matchers"
2827

2928
gem "simplecov", require: false # Test coverage generator. Go to /coverage/ after running tests
3029
gem "cucumber-rails", require: false

gemfiles/rails_60/Gemfile.lock

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -149,9 +149,6 @@ GEM
149149
activerecord (>= 5.a)
150150
database_cleaner-core (~> 2.0.0)
151151
database_cleaner-core (2.0.1)
152-
db-query-matchers (0.10.0)
153-
activesupport (>= 4.0, < 7)
154-
rspec (~> 3.0)
155152
devise (4.8.1)
156153
bcrypt (~> 3.0)
157154
orm_adapter (~> 0.1)
@@ -304,10 +301,6 @@ GEM
304301
actionpack (>= 5.0)
305302
railties (>= 5.0)
306303
rexml (3.2.5)
307-
rspec (3.10.0)
308-
rspec-core (~> 3.10.0)
309-
rspec-expectations (~> 3.10.0)
310-
rspec-mocks (~> 3.10.0)
311304
rspec-core (3.10.1)
312305
rspec-support (~> 3.10.0)
313306
rspec-expectations (3.10.1)
@@ -384,7 +377,6 @@ DEPENDENCIES
384377
cucumber-rails
385378
cuprite
386379
database_cleaner
387-
db-query-matchers
388380
devise
389381
draper
390382
jasmine

gemfiles/rails_61_turbolinks/Gemfile

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ group :test do
2626
gem "cuprite"
2727
gem "capybara"
2828
gem "webrick"
29-
gem "db-query-matchers"
3029

3130
gem "simplecov", require: false # Test coverage generator. Go to /coverage/ after running tests
3231
gem "cucumber-rails", require: false

gemfiles/rails_61_turbolinks/Gemfile.lock

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -153,9 +153,6 @@ GEM
153153
activerecord (>= 5.a)
154154
database_cleaner-core (~> 2.0.0)
155155
database_cleaner-core (2.0.1)
156-
db-query-matchers (0.10.0)
157-
activesupport (>= 4.0, < 7)
158-
rspec (~> 3.0)
159156
devise (4.8.1)
160157
bcrypt (~> 3.0)
161158
orm_adapter (~> 0.1)
@@ -308,10 +305,6 @@ GEM
308305
actionpack (>= 5.0)
309306
railties (>= 5.0)
310307
rexml (3.2.5)
311-
rspec (3.10.0)
312-
rspec-core (~> 3.10.0)
313-
rspec-expectations (~> 3.10.0)
314-
rspec-mocks (~> 3.10.0)
315308
rspec-core (3.10.1)
316309
rspec-support (~> 3.10.0)
317310
rspec-expectations (3.10.1)
@@ -389,7 +382,6 @@ DEPENDENCIES
389382
cucumber-rails
390383
cuprite
391384
database_cleaner
392-
db-query-matchers
393385
devise
394386
draper
395387
jasmine

gemfiles/rails_61_webpacker/Gemfile

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ group :test do
2323
gem "cuprite"
2424
gem "capybara"
2525
gem "webrick"
26-
gem "db-query-matchers"
2726

2827
gem "simplecov", require: false # Test coverage generator. Go to /coverage/ after running tests
2928
gem "cucumber-rails", require: false

gemfiles/rails_61_webpacker/Gemfile.lock

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -153,9 +153,6 @@ GEM
153153
activerecord (>= 5.a)
154154
database_cleaner-core (~> 2.0.0)
155155
database_cleaner-core (2.0.1)
156-
db-query-matchers (0.10.0)
157-
activesupport (>= 4.0, < 7)
158-
rspec (~> 3.0)
159156
devise (4.8.1)
160157
bcrypt (~> 3.0)
161158
orm_adapter (~> 0.1)
@@ -310,10 +307,6 @@ GEM
310307
actionpack (>= 5.0)
311308
railties (>= 5.0)
312309
rexml (3.2.5)
313-
rspec (3.10.0)
314-
rspec-core (~> 3.10.0)
315-
rspec-expectations (~> 3.10.0)
316-
rspec-mocks (~> 3.10.0)
317310
rspec-core (3.10.1)
318311
rspec-support (~> 3.10.0)
319312
rspec-expectations (3.10.1)
@@ -385,7 +378,6 @@ DEPENDENCIES
385378
cucumber-rails
386379
cuprite
387380
database_cleaner
388-
db-query-matchers
389381
devise
390382
draper
391383
jasmine

spec/spec_helper.rb

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
# frozen_string_literal: true
22
require "simplecov" if ENV["COVERAGE"] == "true"
33

4+
Dir[File.expand_path("#{File.dirname(__FILE__)}/support/matchers/*.rb")].each { |file| require file }
5+
46
RSpec.configure do |config|
57
config.disable_monkey_patching!
68
config.filter_run focus: true
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# frozen_string_literal: true
2+
3+
RSpec::Matchers.define :perform_database_query do |query|
4+
match do |block|
5+
@match = nil
6+
7+
callback = lambda do |_name, _started, _finished, _unique_id, payload|
8+
@match = Regexp.new(Regexp.escape(query)).match?(payload[:sql])
9+
end
10+
11+
ActiveSupport::Notifications.subscribed(callback, "sql.active_record", &block)
12+
13+
@match
14+
end
15+
16+
failure_message do |_|
17+
"Expected queries like \"#{query}\" but none were made"
18+
end
19+
20+
failure_message_when_negated do |_|
21+
"Expected no queries like \"#{query}\" but at least one were made"
22+
end
23+
24+
supports_block_expectations
25+
end

spec/unit/views/components/paginated_collection_spec.rb

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -229,26 +229,28 @@ def paginated_collection(*args)
229229
end
230230

231231
it "makes no expensive COUNT queries when pagination_total is false" do
232-
require "db-query-matchers"
233-
234232
undecorated_collection = Post.all.page(1).per(30)
235233

236234
expect { paginated_collection(undecorated_collection, pagination_total: false) }
237-
.not_to make_database_queries(matching: "SELECT COUNT(*) FROM \"posts\"")
235+
.not_to perform_database_query("SELECT COUNT(*) FROM \"posts\"")
236+
237+
paginated_collection(undecorated_collection, pagination_total: false)
238238

239239
decorated_collection = controller_with_decorator("index", PostDecorator).apply_collection_decorator(undecorated_collection)
240240

241241
expect { paginated_collection(decorated_collection, pagination_total: false) }
242-
.not_to make_database_queries(matching: "SELECT COUNT(*) FROM \"posts\"")
242+
.not_to perform_database_query("SELECT COUNT(*) FROM \"posts\"")
243+
244+
paginated_collection(decorated_collection, pagination_total: false)
243245
end
244246

245247
it "makes no COUNT queries to figure out the last element of each page" do
246-
require "db-query-matchers"
247-
248248
undecorated_collection = Post.all.page(1).per(30)
249249

250250
expect { paginated_collection(undecorated_collection) }
251-
.not_to make_database_queries(matching: "SELECT COUNT(*) FROM (SELECT")
251+
.not_to perform_database_query("SELECT COUNT(*) FROM (SELECT")
252+
253+
paginated_collection(undecorated_collection)
252254
end
253255

254256
context "when specifying per_page: array option" do

0 commit comments

Comments
 (0)
0