From cc6d0937c37d2dc7e97a903f5fbf4fa40404e767 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A9ctor=20Ramos?= Date: Tue, 13 Feb 2018 08:08:18 -0800 Subject: [PATCH] Add disabled tests to CircleCI config Summary: These tests have not run for one reason or another since the migration from Travis. They are not passing, and are commented out to avoid flagging new PRs as breaking. These tests need to be fixed and re-enabled ASAP. Closes https://github.com/facebook/react-native/pull/17959 Differential Revision: D6976781 Pulled By: hramos fbshipit-source-id: 712a09877d0597c12cafa741779b471680b7d2db --- .circleci/config.yml | 87 ++++++++++++++++++++++++++++++++++++-------- 1 file changed, 72 insertions(+), 15 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 99fac87a3977c0..dc428d3a0b75af 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -205,13 +205,21 @@ aliases: command: | mkdir -p ~/react-native/reports/junit/ - - &run-objc_ios-tests - name: Objective-C iOS Test Suite + - &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 + command: ./scripts/objc-test-tvos.sh test - &run-objc-ios-e2e-tests name: Objective-C iOS End-to-End Test Suite @@ -245,7 +253,7 @@ android_defaults: &android_defaults macos_defaults: &macos_defaults <<: *defaults macos: - xcode: "9.0" + xcode: "9.2.0" version: 2 jobs: @@ -317,29 +325,53 @@ 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 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 - - 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 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 +388,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 +402,7 @@ jobs: # Checks podspec test_podspec: - <<: *defaults - macos: - xcode: "9.0" + <<: *macos_defaults steps: - attach_workspace: at: ~/react-native @@ -537,7 +567,7 @@ jobs: workflows: version: 2 - test: + tests: jobs: # Checkout repo and run Yarn @@ -566,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 @@ -606,3 +636,30 @@ workflows: - publish_npm_package: requires: - 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