slather 2.8.6 → 2.8.7
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/CHANGELOG.md +6 -0
- data/lib/slather/project.rb +1 -4
- data/lib/slather/version.rb +1 -1
- data/spec/slather/project_spec.rb +25 -0
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: ca4e8b83423e7a0670664bc121452d3954b5a50eed6395e9df3b09eff82ea7a0
|
|
4
|
+
data.tar.gz: 4b1663cd54b9dbcc08e32334bd4f994f1934d44c3b290e271a79d15567428719
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: d1984c8e3bd02944363e7f84806fd2118c98138fa0f1d017b0dafddf0e4300741f3ae66d0fece7a4f6a585e04646829c50e1e93100236eb032cb7190b4c44eef
|
|
7
|
+
data.tar.gz: 2c3b9d016a6eff481d824df68d7c0f05ecb5d34096829eceee4105d4847a5c02df6d69206458f1f8f54a092a453ea4d38265e6f1d72f6c1a66252f64dce4ad39
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# CHANGELOG
|
|
2
2
|
|
|
3
|
+
## v2.8.7
|
|
4
|
+
|
|
5
|
+
* Restore scheme coverage directory lookup in profdata_coverage_dir
|
|
6
|
+
[MirekNalepa](https://github.com/MirekNalepa)
|
|
7
|
+
[#587](https://github.com/SlatherOrg/slather/pull/587)
|
|
8
|
+
|
|
3
9
|
## v2.8.6
|
|
4
10
|
|
|
5
11
|
* Apply dedupe to profdata coverage as well
|
data/lib/slather/project.rb
CHANGED
|
@@ -231,10 +231,7 @@ module Slather
|
|
|
231
231
|
raise StandardError, "The specified build directory (#{self.build_directory}) does not exist" unless File.exist?(self.build_directory)
|
|
232
232
|
dir = nil
|
|
233
233
|
if self.scheme
|
|
234
|
-
|
|
235
|
-
if !product_name.empty?
|
|
236
|
-
dir = Dir[File.join(build_directory,"/**/#{product_name}")].first
|
|
237
|
-
end.first
|
|
234
|
+
dir = Dir[File.join(build_directory,"/**/CodeCoverage/#{self.scheme}")].first
|
|
238
235
|
else
|
|
239
236
|
dir = Dir[File.join(build_directory,"/**/#{first_product_name}")].first
|
|
240
237
|
end
|
data/lib/slather/version.rb
CHANGED
|
@@ -188,6 +188,31 @@ describe Slather::Project do
|
|
|
188
188
|
end
|
|
189
189
|
end
|
|
190
190
|
|
|
191
|
+
describe "#profdata_coverage_dir" do
|
|
192
|
+
before(:each) do
|
|
193
|
+
fixtures_project.build_directory = "/some/build"
|
|
194
|
+
fixtures_project.scheme = "fixtures"
|
|
195
|
+
allow(File).to receive(:exist?).and_call_original
|
|
196
|
+
allow(File).to receive(:exist?).with("/some/build").and_return(true)
|
|
197
|
+
allow(Dir).to receive(:[]).and_call_original
|
|
198
|
+
end
|
|
199
|
+
|
|
200
|
+
it "should return the CodeCoverage scheme directory when a scheme is set" do
|
|
201
|
+
allow(Dir).to receive(:[]).with("/some/build/**/CodeCoverage/fixtures").and_return(["/some/build/Build/Intermediates/CodeCoverage/fixtures"])
|
|
202
|
+
expect(fixtures_project.profdata_coverage_dir).to eq("/some/build/Build/Intermediates/CodeCoverage/fixtures")
|
|
203
|
+
end
|
|
204
|
+
|
|
205
|
+
it "should fall back to the ProfileData directory when a scheme is set on Xcode 9 and later" do
|
|
206
|
+
allow(Slather).to receive(:xcode_version).and_return([16, 0])
|
|
207
|
+
allow(Dir).to receive(:[]).with("/some/build/**/CodeCoverage/fixtures").and_return([])
|
|
208
|
+
allow(Dir).to receive(:[]).with("/some/build/**/codecov").and_return([])
|
|
209
|
+
allow(Dir).to receive(:[]).with("/some/build/**/CodeCoverage").and_return([])
|
|
210
|
+
allow(Dir).to receive(:[]).with("/some/build/**/ProfileData/*/Coverage.profdata").and_return(["/some/build/ProfileData/ABC/Coverage.profdata"])
|
|
211
|
+
expect(Dir).not_to receive(:[]).with("/some/build/**/fixtures")
|
|
212
|
+
expect(fixtures_project.profdata_coverage_dir).to eq(Pathname.new("/some/build/ProfileData/ABC"))
|
|
213
|
+
end
|
|
214
|
+
end
|
|
215
|
+
|
|
191
216
|
describe "#invalid_characters" do
|
|
192
217
|
it "should correctly encode invalid characters" do
|
|
193
218
|
allow(fixtures_project).to receive(:input_format).and_return("profdata")
|