From b4278316e9e47dad2688f32819c0fc36581bc94c Mon Sep 17 00:00:00 2001 From: Hector Ramos Date: Mon, 12 Feb 2018 15:54:46 -0800 Subject: [PATCH 1/6] Run iOS integration tests --- .circleci/config.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 4f169608b7f8aa..c05e325cfd8d2b 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -207,11 +207,11 @@ aliases: - &run-objc_ios-tests name: Objective-C iOS Test Suite - command: ./scripts/objc-test-ios.sh + command: ./scripts/objc-test-ios.sh test - &run-objc-tvos-tests name: Objective-C tvOS Test Suite - command: ./scripts/objc-test-tvos.sh + command: ./scripts/objc-test-tvos.sh test - &run-objc-ios-e2e-tests name: Objective-C iOS End-to-End Test Suite From dc5ff0a31e6227222032d25b05a3d2a876af1ede Mon Sep 17 00:00:00 2001 From: Hector Ramos Date: Mon, 12 Feb 2018 16:52:12 -0800 Subject: [PATCH 2/6] Reenable podspecs, bump Xcode/SDK versions --- .circleci/config.yml | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index c05e325cfd8d2b..fe9eeff10aa9e8 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -245,7 +245,7 @@ android_defaults: &android_defaults macos_defaults: &macos_defaults <<: *defaults macos: - xcode: "9.0" + xcode: "9.2" version: 2 jobs: @@ -322,7 +322,7 @@ jobs: <<: *macos_defaults dependencies: pre: - - xcrun instruments -w "iPhone 5s (10.3.1)" || true + - xcrun instruments -w "iPhone 5s (11.1)" || true steps: - attach_workspace: at: ~/react-native @@ -339,7 +339,7 @@ jobs: <<: *macos_defaults dependencies: pre: - - xcrun instruments -w "Apple TV 1080p (10.0)" || true + - xcrun instruments -w "Apple TV 1080p (11.1)" || true steps: - attach_workspace: at: ~/react-native @@ -356,7 +356,7 @@ jobs: <<: *macos_defaults dependencies: pre: - - xcrun instruments -w "iPhone 5s (10.3.1)" || true + - xcrun instruments -w "iPhone 5s (11.1)" || true steps: - attach_workspace: at: ~/react-native @@ -370,9 +370,7 @@ jobs: # Checks podspec test_podspec: - <<: *defaults - macos: - xcode: "9.0" + <<: *macos_defaults steps: - attach_workspace: at: ~/react-native @@ -582,6 +580,12 @@ workflows: requires: - checkout_code + # CocoaPods + - test_podspec: + filters: *filter-ignore-gh-pages + requires: + - checkout_code + # Only runs on PRs analyze: jobs: From 7371ffff7a0658d0f1025ca8293223e81292effd Mon Sep 17 00:00:00 2001 From: Hector Ramos Date: Mon, 12 Feb 2018 16:59:25 -0800 Subject: [PATCH 3/6] s/9.2/9.2.0 --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index fe9eeff10aa9e8..1c7939abae7c13 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -245,7 +245,7 @@ android_defaults: &android_defaults macos_defaults: &macos_defaults <<: *defaults macos: - xcode: "9.2" + xcode: "9.2.0" version: 2 jobs: From 94e6173e06cbabda44cf117cf69d963d5241f0d0 Mon Sep 17 00:00:00 2001 From: Hector Ramos Date: Mon, 12 Feb 2018 22:34:09 -0800 Subject: [PATCH 4/6] Circle was only testing that RNTester built. Move failing iOS/tvOS tests to disabled workflow --- .circleci/config.yml | 68 ++++++++++++++++++++++++++++++++++++++------ 1 file changed, 60 insertions(+), 8 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 1c7939abae7c13..f0f3895102d620 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -205,10 +205,18 @@ aliases: command: | mkdir -p ~/react-native/reports/junit/ - - &run-objc_ios-tests + - &build-objc-ios-test-app + name: Build Objective-C iOS Test App + command: ./scripts/objc-test-ios.sh + + - &run-objc-ios-tests name: Objective-C iOS Test Suite command: ./scripts/objc-test-ios.sh test + - &build-objc-tvos-test-app + name: Build Objective-C tvOS Test App + command: ./scripts/objc-test-tvos.sh + - &run-objc-tvos-tests name: Objective-C tvOS Test Suite command: ./scripts/objc-test-tvos.sh test @@ -317,6 +325,18 @@ jobs: - store_artifacts: path: ~/react-native/reports/junit + # Builds iOS test app + build_objc_ios_test_app: + <<: *macos_defaults + dependencies: + pre: + - xcrun instruments -w "iPhone 5s (11.1)" || true + steps: + - attach_workspace: + at: ~/react-native + + - run: *build-objc-ios-test-app + # Runs unit tests on iOS devices test_objc_ios: <<: *macos_defaults @@ -327,13 +347,25 @@ jobs: - attach_workspace: at: ~/react-native - - run: *run-objc_ios-tests + - run: *run-objc-ios-tests - store_test_results: path: ~/react-native/reports/junit - store_artifacts: path: ~/react-native/reports/junit + # Builds tvOS test app + build_objc_tvos_test_app: + <<: *macos_defaults + dependencies: + pre: + - xcrun instruments -w "Apple TV 1080p (11.1)" || true + steps: + - attach_workspace: + at: ~/react-native + + - run: *build-objc-tvos-test-app + # Runs unit tests on tvOS devices test_objc_tvos: <<: *macos_defaults @@ -564,12 +596,12 @@ workflows: requires: - checkout_code - # Test iOS & tvOS - - test_objc_ios: + # Build iOS & tvOS test apps + - build_objc_ios_test_app: filters: *filter-ignore-gh-pages requires: - checkout_code - - test_objc_tvos: + - build_objc_tvos_test_app: filters: *filter-ignore-gh-pages requires: - checkout_code @@ -580,11 +612,31 @@ workflows: requires: - checkout_code + # These tests are flaky or are yet to be fixed. They are placed on their own + # workflow to avoid marking benign PRs as broken. + disabled_tests: + jobs: + # Checkout repo and run Yarn + - checkout_code: + filters: *filter-ignore-gh-pages + + # Test iOS & tvOS + - test_objc_ios: + filters: *filter-ignore-gh-pages + requires: + - checkout_code + + - test_objc_tvos: + filters: *filter-ignore-gh-pages + requires: + - checkout_code + # CocoaPods - test_podspec: - filters: *filter-ignore-gh-pages - requires: - - checkout_code + filters: *filter-ignore-gh-pages + requires: + - checkout_code + # Only runs on PRs analyze: From 022892d81c32d4568e647db0827616d2e708ff9a Mon Sep 17 00:00:00 2001 From: Hector Ramos Date: Mon, 12 Feb 2018 22:36:06 -0800 Subject: [PATCH 5/6] fix indent --- .circleci/config.yml | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index f0f3895102d620..e4ae83bf04929f 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -614,28 +614,29 @@ workflows: # These tests are flaky or are yet to be fixed. They are placed on their own # workflow to avoid marking benign PRs as broken. + # TODO: Only run on branches? Master? Avoid PRs? disabled_tests: jobs: # Checkout repo and run Yarn - checkout_code: - filters: *filter-ignore-gh-pages + filters: *filter-ignore-gh-pages # Test iOS & tvOS - test_objc_ios: - filters: *filter-ignore-gh-pages - requires: - - checkout_code + filters: *filter-ignore-gh-pages + requires: + - checkout_code - test_objc_tvos: - filters: *filter-ignore-gh-pages - requires: - - checkout_code + filters: *filter-ignore-gh-pages + requires: + - checkout_code # CocoaPods - test_podspec: - filters: *filter-ignore-gh-pages - requires: - - checkout_code + filters: *filter-ignore-gh-pages + requires: + - checkout_code # Only runs on PRs From 453e3800fb314bbb814f39ff9b600311a1f3a441 Mon Sep 17 00:00:00 2001 From: Hector Ramos Date: Mon, 12 Feb 2018 22:59:42 -0800 Subject: [PATCH 6/6] Comment out disabled tests --- .circleci/config.yml | 56 ++++++++++++++++++++++---------------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index e4ae83bf04929f..a5aa1d45f1e902 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -567,7 +567,7 @@ jobs: workflows: version: 2 - test: + tests: jobs: # Checkout repo and run Yarn @@ -612,33 +612,6 @@ workflows: requires: - checkout_code - # These tests are flaky or are yet to be fixed. They are placed on their own - # workflow to avoid marking benign PRs as broken. - # TODO: Only run on branches? Master? Avoid PRs? - disabled_tests: - jobs: - # Checkout repo and run Yarn - - checkout_code: - filters: *filter-ignore-gh-pages - - # Test iOS & tvOS - - test_objc_ios: - filters: *filter-ignore-gh-pages - requires: - - checkout_code - - - test_objc_tvos: - filters: *filter-ignore-gh-pages - requires: - - checkout_code - - # CocoaPods - - test_podspec: - filters: *filter-ignore-gh-pages - requires: - - checkout_code - - # Only runs on PRs analyze: jobs: @@ -667,3 +640,30 @@ workflows: requires: - checkout_code - approve_publish_npm_package + + # These tests are flaky or are yet to be fixed. They are placed on their own + # workflow to avoid marking benign PRs as broken. + # To run them, uncomment the entire block and open a PR (do not merge). + # Once a test is fixed, move the test definition to the 'tests' workflow. + # disabled_tests: + # jobs: + # # Checkout repo and run Yarn (pre-req, should succeed) + # - checkout_code: + # filters: *filter-ignore-gh-pages + + # # The following were DISABLED because they have not run since + # # the migration from Travis, and they have broken since then, + # # Test iOS & tvOS + # - test_objc_ios: + # filters: *filter-ignore-gh-pages + # requires: + # - checkout_code + # - test_objc_tvos: + # filters: *filter-ignore-gh-pages + # requires: + # - checkout_code + # # CocoaPods + # - test_podspec: + # filters: *filter-ignore-gh-pages + # requires: + # - checkout_code