Skip to content

Commit cb4950d

Browse files
committed
Removes codecov usage (#4745)
1 parent e2a0eee commit cb4950d

File tree

7 files changed

+43
-61
lines changed

7 files changed

+43
-61
lines changed

.circleci/config.yml

Lines changed: 36 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -195,6 +195,32 @@ commands:
195195
when: on_fail
196196
command: |
197197
curl -X POST -H 'Content-type: application/json' --data '{"text": ":x: '"$SLACK_MENTION_SLUG"' <'"$CIRCLE_BUILD_URL"' | '"$CIRCLE_JOB"'> job from snapshot pipeline failed.", "link_names" : 1}' $SLACK_WEBHOOK
198+
199+
generate-coverage-report:
200+
parameters:
201+
module_name:
202+
type: string
203+
steps:
204+
- run:
205+
name: Install lcov
206+
command: brew install lcov
207+
- run:
208+
name: Generate code coverage report
209+
command: |
210+
xcrun llvm-cov export -arch $(uname -m) -format="lcov" \
211+
-instr-profile=$(find "${HOME}/Library/Developer/Xcode/DerivedData" -name '*.profdata' | head -n 1) \
212+
$(find "${HOME}/Library/Developer/Xcode/DerivedData" \( -iname "<<parameters.module_name>>.o" -o -ipath "*<<parameters.module_name>>.framework/<<parameters.module_name>>" \)) > coverage.lcov
213+
- run:
214+
name: Generate html report
215+
command: |
216+
lcov --extract coverage.lcov '*/<<parameters.module_name>>/*' -o filtered_coverage.lcov
217+
genhtml filtered_coverage.lcov --output-directory coverage
218+
- store_artifacts:
219+
path: coverage
220+
destination: coverage-report
221+
- store_test_results:
222+
path: test-results
223+
when: always
198224

199225

200226
step-library:
@@ -406,7 +432,7 @@ jobs:
406432
xcode: << parameters.xcode >>
407433
- run:
408434
name: MapboxCoreNavigation
409-
command: xcodebuild -sdk iphonesimulator -destination 'platform=iOS Simulator,OS=<< parameters.iOS >>,name=<< parameters.device >>' -project MapboxNavigation.xcodeproj -scheme << parameters.scheme >> -configuration << parameters.configuration >> <<# parameters.clean_build >>clean build <</ parameters.clean_build >><<# parameters.test >>test <</ parameters.test >> <<# parameters.codecoverage >>-enableCodeCoverage YES<</ parameters.codecoverage >> ENABLE_TESTABILITY=YES CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED="NO"
435+
command: xcodebuild -sdk iphonesimulator -destination 'platform=iOS Simulator,OS=<< parameters.iOS >>,name=<< parameters.device >>' -project MapboxNavigation.xcodeproj -scheme << parameters.scheme >> -configuration << parameters.configuration >> <<# parameters.clean_build >>clean build <</ parameters.clean_build >><<# parameters.test >>test <</ parameters.test >> ENABLE_TESTABILITY=YES CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED="NO" <<# parameters.codecoverage >>-enableCodeCoverage YES | xcpretty --report junit --output test-results/junit.xml<</ parameters.codecoverage >>
410436
- when:
411437
condition: << parameters.spm >>
412438
steps:
@@ -418,25 +444,13 @@ jobs:
418444
command: xcodebuild -resolvePackageDependencies
419445
- run:
420446
name: MapboxNavigation-Package
421-
command: xcodebuild -sdk iphonesimulator -destination 'platform=iOS Simulator,OS=<< parameters.iOS >>,name=<< parameters.device >>' -scheme MapboxNavigation-Package -configuration << parameters.configuration >> build <<# parameters.test >>test <</ parameters.test >> <<# parameters.codecoverage >>-enableCodeCoverage YES<</ parameters.codecoverage >> ENABLE_TESTABILITY=YES CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED="NO"
447+
command: xcodebuild -sdk iphonesimulator -destination 'platform=iOS Simulator,OS=<< parameters.iOS >>,name=<< parameters.device >>' -scheme MapboxNavigation-Package -configuration << parameters.configuration >> build <<# parameters.test >>test <</ parameters.test >> ENABLE_TESTABILITY=YES CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED="NO" <<# parameters.codecoverage >>-enableCodeCoverage YES | xcpretty --report junit --output test-results/junit.xml<</ parameters.codecoverage >>
422448
# FIXME: SPM test host is currently disabled, but we should run tests on the SPM test host job. When it is reenabled, delete this section that generates the code coverage report.
423449
- when:
424450
condition: << parameters.codecoverage >>
425451
steps:
426-
- run:
427-
name: Generate code coverage report
428-
command: |
429-
xcrun llvm-cov export -arch $(uname -m) -format="lcov" \
430-
-instr-profile=$(find "${HOME}/Library/Developer/Xcode/DerivedData" -name '*.profdata' | head -n 1) \
431-
$(find "${HOME}/Library/Developer/Xcode/DerivedData" -name "MapboxNavigation.o") > coverage.lcov
432-
- run:
433-
name: Send code coverage
434-
command: |
435-
curl -Os https://uploader.codecov.io/latest/macos/codecov
436-
chmod +x codecov
437-
./codecov
438-
- store_artifacts:
439-
path: coverage.lcov
452+
- generate-coverage-report:
453+
module_name: << parameters.scheme >>
440454
- notify-build-finished
441455

442456
build-example:
@@ -537,24 +551,12 @@ jobs:
537551
- *add-github-to-known-hosts
538552
- run:
539553
name: Build test host application and execute tests
540-
command: xcodebuild -project MapboxNavigation-SPM.xcodeproj -scheme MapboxNavigationTestHost -sdk iphonesimulator -configuration Release -destination "platform=iOS Simulator,OS=<< parameters.iOS >>,name=<< parameters.device >>" clean build test <<# parameters.codecoverage >>-enableCodeCoverage YES<</ parameters.codecoverage >> ENABLE_TESTABILITY=YES
554+
command: xcodebuild -project MapboxNavigation-SPM.xcodeproj -scheme MapboxNavigationTestHost -sdk iphonesimulator -configuration Release -destination "platform=iOS Simulator,OS=<< parameters.iOS >>,name=<< parameters.device >>" clean build test ENABLE_TESTABILITY=YES <<# parameters.codecoverage >>-enableCodeCoverage YES | xcpretty --report junit --output test-results/junit.xml<</ parameters.codecoverage >>
541555
- when:
542556
condition: << parameters.codecoverage >>
543557
steps:
544-
- run:
545-
name: Generate code coverage report
546-
command: |
547-
xcrun llvm-cov export -arch $(uname -m) -format="lcov" \
548-
-instr-profile=$(find "${HOME}/Library/Developer/Xcode/DerivedData" -name '*.profdata' | head -n 1) \
549-
$(find build -name "MapboxNavigation.o") > coverage.lcov
550-
- run:
551-
name: Send code coverage
552-
command: |
553-
curl -Os https://uploader.codecov.io/latest/macos/codecov
554-
chmod +x codecov
555-
./codecov
556-
- store_artifacts:
557-
path: coverage.lcov
558+
- generate-coverage-report:
559+
module_name: MapboxNavigation
558560
- notify-build-finished
559561

560562
get-api-log-job:
@@ -864,7 +866,7 @@ workflows:
864866
xcode: "14.3.1"
865867
iOS: "16.4"
866868
device: "iPhone 14 Pro Max"
867-
codecoverage: false
869+
codecoverage: true
868870
context: Slack Orb
869871
- build-job:
870872
name: "Xcode_15.2_iOS_17.2_SPM_Debug"
@@ -874,6 +876,7 @@ workflows:
874876
spm: true
875877
codecoverage: true
876878
context: Slack Orb
879+
scheme: "MapboxNavigation"
877880
- build-job:
878881
name: "Xcode_14.1_iOS_16.1_SPM_Debug"
879882
xcode: "14.1"
@@ -882,6 +885,7 @@ workflows:
882885
spm: true
883886
codecoverage: true
884887
context: Slack Orb
888+
scheme: "MapboxNavigation"
885889
- build-job:
886890
name: "Xcode_14.1.0_iOS_16.1_Release"
887891
xcode: "14.1.0"

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,9 @@ Carthage/Checkouts
1818
/build
1919
.build
2020

21+
coverage
22+
coverage.lcov
23+
junit.xml
2124

2225
Examples/Swift/Navigation_Example.mobileprovision
2326

Gemfile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,4 @@ gem 'fastlane'
33
gem 'snapshot'
44
gem 'cocoapods', '~> 1.14'
55
gem 'jazzy', '~> 0.14'
6+
gem 'xcpretty'

Gemfile.lock

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -319,6 +319,7 @@ DEPENDENCIES
319319
fastlane
320320
jazzy (~> 0.14)
321321
snapshot
322+
xcpretty
322323

323324
BUNDLED WITH
324325
2.1.4

Package.resolved

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

README.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
# [Mapbox Navigation SDK for iOS](https://docs.mapbox.com/ios/navigation/)
22

33
[![CircleCI](https://circleci.com/gh/mapbox/mapbox-navigation-ios.svg?style=svg)](https://circleci.com/gh/mapbox/mapbox-navigation-ios)
4-
[![codecov](https://codecov.io/gh/mapbox/mapbox-navigation-ios/branch/main/graph/badge.svg)](https://codecov.io/gh/mapbox/mapbox-navigation-ios)
54
[![SPM compatible](https://img.shields.io/badge/SPM-compatible-4BC51D.svg?style=flat)](https://swift.org/package-manager/)
65
[![CocoaPods](https://img.shields.io/cocoapods/v/MapboxNavigation.svg)](https://cocoapods.org/pods/MapboxNavigation/)
76

codecov.yml

Lines changed: 0 additions & 26 deletions
This file was deleted.

0 commit comments

Comments
 (0)