rspec_expectation_count 0.0.2 → 0.0.3
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.
- checksums.yaml +4 -4
- data/.rubocop.yml +2 -0
- data/lib/rspec_expectation_count/expectation_debug.rb +29 -0
- data/lib/rspec_expectation_count/rspec_expectation_count.rb +9 -1
- data/lib/rspec_expectation_count/version.rb +1 -1
- data/readme.md +1 -0
- data/release_notes.md +9 -0
- data/rspec_expectation_count.gemspec +0 -1
- data/spec3/count_spec.rb +14 -0
- metadata +3 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a89daebe2c66a3015e00e647acd86d455ef57821
|
4
|
+
data.tar.gz: 2019f766fd468afb7969311b4670a17356f67ba0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d052f7fe7ebb99145ada3897724f32d5312d3fff0905801c2304ee245ca7df14f5d2f69e413deb6887eb3b48dae3bb649a5e47e61a31fb94f01de47bb6ced4de
|
7
|
+
data.tar.gz: 35c427d364bb558a928127d7a715fa6ee12ee40778027b3cc088767623bea9da94e844201514c73ab232d517b9896bdad124307fe6f5a991a17aa99b42c3d415
|
data/.rubocop.yml
CHANGED
@@ -0,0 +1,29 @@
|
|
1
|
+
unless ::RSpec::Expectations.expectation_debug.is_a?(Array)
|
2
|
+
module RSpec
|
3
|
+
module Expectations
|
4
|
+
class << self
|
5
|
+
def expectation_debug
|
6
|
+
@expectation_debug ||= []
|
7
|
+
end
|
8
|
+
|
9
|
+
attr_accessor :last_spec_hash
|
10
|
+
|
11
|
+
TracePoint.new do |trace|
|
12
|
+
file_path = trace.path
|
13
|
+
if file_path.end_with?('_spec.rb')
|
14
|
+
line_number = trace.lineno
|
15
|
+
line = IO.readlines(file_path)[line_number - 1]
|
16
|
+
if line.include?('expect') # expect() || expect { }
|
17
|
+
expect_hash = { file: file_path, line: line.strip, line_number: line_number }
|
18
|
+
::RSpec::Expectations.last_spec_hash = expect_hash
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end.enable
|
22
|
+
|
23
|
+
def update_expectation_debug
|
24
|
+
expectation_debug << last_spec_hash
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
@@ -3,7 +3,6 @@ require 'rspec'
|
|
3
3
|
require 'rspec/matchers'
|
4
4
|
require 'rspec/expectations/handler'
|
5
5
|
require 'rspec/core/formatters/base_text_formatter'
|
6
|
-
|
7
6
|
# https://github.com/rspec/rspec-core/issues/740
|
8
7
|
|
9
8
|
unless ::RSpec::Expectations.respond_to?(:expectation_count)
|
@@ -15,6 +14,12 @@ unless ::RSpec::Expectations.respond_to?(:expectation_count)
|
|
15
14
|
end
|
16
15
|
|
17
16
|
attr_writer :expectation_count
|
17
|
+
|
18
|
+
def update_expectation_debug
|
19
|
+
end
|
20
|
+
|
21
|
+
def expectation_debug
|
22
|
+
end
|
18
23
|
end
|
19
24
|
|
20
25
|
class PositiveExpectationHandler
|
@@ -22,6 +27,7 @@ unless ::RSpec::Expectations.respond_to?(:expectation_count)
|
|
22
27
|
alias_method :old_handle_matcher, :handle_matcher
|
23
28
|
|
24
29
|
def handle_matcher(*args)
|
30
|
+
::RSpec::Expectations.update_expectation_debug
|
25
31
|
::RSpec::Expectations.expectation_count += 1
|
26
32
|
old_handle_matcher(*args)
|
27
33
|
end
|
@@ -33,6 +39,7 @@ unless ::RSpec::Expectations.respond_to?(:expectation_count)
|
|
33
39
|
alias_method :old_handle_matcher, :handle_matcher
|
34
40
|
|
35
41
|
def handle_matcher(*args)
|
42
|
+
::RSpec::Expectations.update_expectation_debug
|
36
43
|
::RSpec::Expectations.expectation_count += 1
|
37
44
|
old_handle_matcher(*args)
|
38
45
|
end
|
@@ -53,6 +60,7 @@ unless ::RSpec::Expectations.respond_to?(:expectation_count)
|
|
53
60
|
count = ::RSpec::Expectations.expectation_count
|
54
61
|
plural = count == 1 ? '' : 's'
|
55
62
|
output.puts "#{count} expectation#{plural}"
|
63
|
+
output.puts ::RSpec::Expectations.expectation_debug
|
56
64
|
end
|
57
65
|
end
|
58
66
|
end
|
data/readme.md
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
# rspec_expectation_count
|
2
2
|
|
3
3
|
[](https://travis-ci.org/bootstraponline/rspec_expectation_count/builds)
|
4
|
+
[](https://rubygems.org/gems/rspec_expectation_count)
|
4
5
|
|
5
6
|
Count the number of expectations used in an RSpec test suite
|
data/release_notes.md
CHANGED
@@ -1,3 +1,12 @@
|
|
1
|
+
#### v0.0.3 2015-11-09
|
2
|
+
|
3
|
+
- [ba31882](https://github.com/bootstraponline/rspec_expectation_count/commit/ba3188209ee245ecc42f7eb2963ebc9d754cd134) Release 0.0.3
|
4
|
+
- [d92ce4d](https://github.com/bootstraponline/rspec_expectation_count/commit/d92ce4dbb40037cf075ee6bfd0cc8610820d9258) Fix rubocop
|
5
|
+
- [2284792](https://github.com/bootstraponline/rspec_expectation_count/commit/22847927b9eac5bb1e2081bbfdded40a37803ab9) Clean up code
|
6
|
+
- [61c5072](https://github.com/bootstraponline/rspec_expectation_count/commit/61c50723fb954ba180b821d33a312364ae679425) Add debug logging for expectation count
|
7
|
+
- [003cf27](https://github.com/bootstraponline/rspec_expectation_count/commit/003cf2753e549c0475951649eedeeda3f03186c8) Add gem badge
|
8
|
+
|
9
|
+
|
1
10
|
#### v0.0.2 2015-11-09
|
2
11
|
|
3
12
|
- [2125bc6](https://github.com/bootstraponline/rspec_expectation_count/commit/2125bc67ced2486f86c1eea07226d1e96333dd30) Release 0.0.2
|
data/spec3/count_spec.rb
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
require_relative '../lib/rspec_expectation_count'
|
2
|
+
require_relative '../lib/rspec_expectation_count/expectation_debug'
|
3
|
+
|
4
|
+
describe 'count' do
|
5
|
+
it 'tracks the amount of expects' do
|
6
|
+
# 1
|
7
|
+
# 2
|
8
|
+
# 3
|
9
|
+
expect(1).to eq(1)
|
10
|
+
# 4
|
11
|
+
expect(2).not_to eq(3)
|
12
|
+
# 5
|
13
|
+
end
|
14
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rspec_expectation_count
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- code@bootstraponline.com
|
@@ -94,12 +94,14 @@ files:
|
|
94
94
|
- LICENSE
|
95
95
|
- Thorfile
|
96
96
|
- lib/rspec_expectation_count.rb
|
97
|
+
- lib/rspec_expectation_count/expectation_debug.rb
|
97
98
|
- lib/rspec_expectation_count/rspec_expectation_count.rb
|
98
99
|
- lib/rspec_expectation_count/version.rb
|
99
100
|
- readme.md
|
100
101
|
- release_notes.md
|
101
102
|
- rspec_expectation_count.gemspec
|
102
103
|
- spec2/count_spec.rb
|
104
|
+
- spec3/count_spec.rb
|
103
105
|
homepage: https://github.com/bootstraponline/rspec_expectation_count
|
104
106
|
licenses:
|
105
107
|
- http://www.apache.org/licenses/LICENSE-2.0.txt
|