redis_query_matcher 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. checksums.yaml +7 -0
  2. data/lib/redis_query_matcher.rb +31 -0
  3. metadata +71 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 649b9042f7c46601cf6bee15612a2d4b6d502e6e09ec4e1c76fa92fabe49ad25
4
+ data.tar.gz: f8561fb875de7b30d28d3807e8dfd966a7a6521ff5eb1b222c1f977580499785
5
+ SHA512:
6
+ metadata.gz: 0d9ac3d94794e1fb6da741ef8de5cceb15fc55836e5f3a288a9a2c6f6b909c432e4ccb89eb12bfa8dec11ad857674238a2ba314b9b79195e07adaf1c6f34e372
7
+ data.tar.gz: d98f69a33f175339b114d73f9f700133907498166e930d2ce394a2052bacf1384409eaa9183f7ba1b47cc80664271f6fd18f03bf022eddde7f62946588cad6ed
@@ -0,0 +1,31 @@
1
+ require "redis_commands_recorder"
2
+
3
+ RSpec::Matchers.define :make_redis_queries do |num_of_expected_queries|
4
+ supports_block_expectations
5
+
6
+ actual_queries = []
7
+
8
+ match do |actual_block|
9
+ RedisCommandsRecorder.clear
10
+
11
+ actual_block.call
12
+
13
+ actual_queries = RedisCommandsRecorder.redis_commands
14
+
15
+ @actual_num_of_queries = actual_queries.size
16
+ @expected_num_of_queries = num_of_expected_queries
17
+
18
+ expect(@actual_num_of_queries).to eq(@expected_num_of_queries)
19
+ end
20
+
21
+ failure_message do
22
+ <<~HEREDOC
23
+ Mismtach in number of redis queries!!!
24
+ Expected numbere of redis queries: #{@expected_num_of_queries}
25
+ Actual number of redis queries: #{@actual_num_of_queries}
26
+
27
+ Here are the #{@actual_num_of_queries} actual redis queries:
28
+ #{actual_queries.map(&:to_s).join(",\n ") },
29
+ HEREDOC
30
+ end
31
+ end
metadata ADDED
@@ -0,0 +1,71 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: redis_query_matcher
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Ted Yang
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2022-12-14 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rspec
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '3.9'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '3.9'
27
+ - !ruby/object:Gem::Dependency
28
+ name: pry
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '0.13'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '0.13'
41
+ description: This gem provides a RSpec matcher make_redis_queries.
42
+ email: ted.yang@procore.com
43
+ executables: []
44
+ extensions: []
45
+ extra_rdoc_files: []
46
+ files:
47
+ - lib/redis_query_matcher.rb
48
+ homepage: https://github.com/tedyangx/redis-query-matcher
49
+ licenses:
50
+ - MIT
51
+ metadata: {}
52
+ post_install_message:
53
+ rdoc_options: []
54
+ require_paths:
55
+ - lib
56
+ required_ruby_version: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: '0'
61
+ required_rubygems_version: !ruby/object:Gem::Requirement
62
+ requirements:
63
+ - - ">="
64
+ - !ruby/object:Gem::Version
65
+ version: '0'
66
+ requirements: []
67
+ rubygems_version: 3.1.6
68
+ signing_key:
69
+ specification_version: 4
70
+ summary: Redis Query Matcher
71
+ test_files: []