simplecov 0.14.0 → 0.14.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8e97e7dcf1f3c003a18fe662722aa6afb4c22a4f
4
- data.tar.gz: 53416d84e2f00e0d4b9da2a9ffd8f92f01eaf084
3
+ metadata.gz: bda7293a0b718da578a1e9b6897393d21d955fbf
4
+ data.tar.gz: d81ac2993a335e716a47a19dd648fe635cc4a635
5
5
  SHA512:
6
- metadata.gz: 5553c580dc83af525bde5a86cba9648a0bb61a5340d5047f17aaf0c933375a4594b5b0094321374e3215d2dd617717e9d5aa0b8c27fe9a2937b06cf2eb757700
7
- data.tar.gz: 290a8fd21178bbb5cf125a8b06d3ac844cc886c56bda739bb3056166b760afef308c1504cdde5277cc7ebfb877abbb505353b71bf0f9be3b9b2dfc9977cce580
6
+ metadata.gz: 6e25b2151aec02177f9a6dd1f14366d44ad1ab2158d8502c65bbf2db4e2672a1926eaba1107580f4a642ad99d79f57d421d54759bed341099ec4a1a4cb9a3a04
7
+ data.tar.gz: 34fe7bc261f7e105b230652e5b8ceed4e4b179bf7f36e5424c51cf7767e14ae91173a01b9da2e89707bd147ab212f85367e28791cfa1bbfcac3d055660e2ca43
@@ -1,3 +1,10 @@
1
+ 0.14.1 2017-03-18 ([changes](https://github.com/colszowka/simplecov/compare/v0.14.0...v0.14.1))
2
+ ========
3
+
4
+ ## Bugfixes
5
+
6
+ * Files that were skipped as a whole/had no relevant coverage could lead to Float errors. See [#564](https://github.com/colszowka/simplecov/pull/564) (thanks to @stevehanson for the report in [#563](https://github.com/colszowka/simplecov/issues/563))
7
+
1
8
  0.14.0 2017-03-15 ([changes](https://github.com/colszowka/simplecov/compare/v0.13.0...v0.14.0))
2
9
  ==========
3
10
 
@@ -125,13 +125,13 @@ module SimpleCov
125
125
  end
126
126
 
127
127
  def covered_strength
128
- return 0.0 if no_lines?
128
+ return 0.0 if relevant_lines.zero?
129
129
 
130
130
  round_float(lines_strength / relevant_lines.to_f, 1)
131
131
  end
132
132
 
133
133
  def no_lines?
134
- lines.length.zero? || lines.length == never_lines.size
134
+ lines.length.zero? || (lines.length == never_lines.size)
135
135
  end
136
136
 
137
137
  def lines_strength
@@ -1,5 +1,5 @@
1
1
  module SimpleCov
2
- version = "0.14.0"
2
+ version = "0.14.1"
3
3
 
4
4
  def version.to_a
5
5
  split(".").map(&:to_i)
@@ -0,0 +1,2 @@
1
+ # This class is purely some
2
+ # comments
@@ -0,0 +1,4 @@
1
+ # Not relevant
2
+ # :nocov:
3
+ # Hash.new
4
+ # :nocov:
@@ -0,0 +1,8 @@
1
+ # So much skippping
2
+ # :nocov:
3
+ class Foo
4
+ def bar
5
+ 0
6
+ end
7
+ end
8
+ #:nocov:
@@ -73,5 +73,69 @@ if SimpleCov.usable?
73
73
  expect(captured_output).to match(/^Warning: coverage data provided/)
74
74
  end
75
75
  end
76
+
77
+ context "a file that is never relevant" do
78
+ COVERAGE_FOR_NEVER_RB = [nil, nil].freeze
79
+
80
+ subject do
81
+ SimpleCov::SourceFile.new(source_fixture("never.rb"), COVERAGE_FOR_NEVER_RB)
82
+ end
83
+
84
+ it "has 0.0 covered_strength" do
85
+ expect(subject.covered_strength).to eq 0.0
86
+ end
87
+
88
+ it "has 0.0 covered_percent" do
89
+ expect(subject.covered_percent).to eq 100.0
90
+ end
91
+ end
92
+
93
+ context "a file where nothing is ever executed mixed with skipping #563" do
94
+ COVERAGE_FOR_SKIPPED_RB = [nil, nil, nil, nil].freeze
95
+
96
+ subject do
97
+ SimpleCov::SourceFile.new(source_fixture("skipped.rb"), COVERAGE_FOR_SKIPPED_RB)
98
+ end
99
+
100
+ it "has 0.0 covered_strength" do
101
+ expect(subject.covered_strength).to eq 0.0
102
+ end
103
+
104
+ it "has 0.0 covered_percent" do
105
+ expect(subject.covered_percent).to eq 0.0
106
+ end
107
+ end
108
+
109
+ context "a file where everything is skipped and missed #563" do
110
+ COVERAGE_FOR_SKIPPED_RB_2 = [nil, nil, 0, nil].freeze
111
+
112
+ subject do
113
+ SimpleCov::SourceFile.new(source_fixture("skipped.rb"), COVERAGE_FOR_SKIPPED_RB_2)
114
+ end
115
+
116
+ it "has 0.0 covered_strength" do
117
+ expect(subject.covered_strength).to eq 0.0
118
+ end
119
+
120
+ it "has 0.0 covered_percent" do
121
+ expect(subject.covered_percent).to eq 0.0
122
+ end
123
+ end
124
+
125
+ context "a file where everything is skipped/irrelevamt but executed #563" do
126
+ COVERAGE_FOR_SKIPPED_AND_EXECUTED_RB = [nil, nil, 1, 1, 0, nil, nil, nil].freeze
127
+
128
+ subject do
129
+ SimpleCov::SourceFile.new(source_fixture("skipped_and_executed.rb"), COVERAGE_FOR_SKIPPED_AND_EXECUTED_RB)
130
+ end
131
+
132
+ it "has 0.0 covered_strength" do
133
+ expect(subject.covered_strength).to eq 0.0
134
+ end
135
+
136
+ it "has 0.0 covered_percent" do
137
+ expect(subject.covered_percent).to eq 0.0
138
+ end
139
+ end
76
140
  end
77
141
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: simplecov
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.14.0
4
+ version: 0.14.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Christoph Olszowka
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-03-15 00:00:00.000000000 Z
11
+ date: 2017-03-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
@@ -187,9 +187,12 @@ files:
187
187
  - spec/fixtures/frameworks/testunit_bad.rb
188
188
  - spec/fixtures/frameworks/testunit_good.rb
189
189
  - spec/fixtures/iso-8859.rb
190
+ - spec/fixtures/never.rb
190
191
  - spec/fixtures/resultset1.rb
191
192
  - spec/fixtures/resultset2.rb
192
193
  - spec/fixtures/sample.rb
194
+ - spec/fixtures/skipped.rb
195
+ - spec/fixtures/skipped_and_executed.rb
193
196
  - spec/fixtures/utf-8.rb
194
197
  - spec/helper.rb
195
198
  - spec/last_run_spec.rb