From 5dc6475d2cd4b3922b88b4f0ec6a0e37a63b8c5e Mon Sep 17 00:00:00 2001 From: Gaston Thea Date: Thu, 7 Nov 2024 14:56:40 -0300 Subject: [PATCH] Workflows refactor --- .github/workflows/base_build.yaml | 39 +++++++++++ .../{test_ios_ut_3.yaml => base_ut.yaml} | 31 ++++----- .github/workflows/build_macos.yaml | 28 ++------ .github/workflows/build_tvos.yaml | 28 ++------ .github/workflows/build_watchos.yaml | 28 ++------ .github/workflows/test_all.yaml | 41 ++++++++++++ .github/workflows/test_ios_integration.yaml | 39 ----------- .github/workflows/test_ios_integration_1.yaml | 39 ----------- .github/workflows/test_ios_streaming.yaml | 39 ----------- .github/workflows/test_ios_streaming_1.yaml | 39 ----------- .github/workflows/test_ios_streaming_2.yaml | 39 ----------- .github/workflows/test_ios_ut.yaml | 65 ------------------- .github/workflows/test_ios_ut_1.yaml | 65 ------------------- .github/workflows/test_ios_ut_2.yaml | 65 ------------------- .github/workflows/test_ios_ut_4.yaml | 65 ------------------- .github/workflows/test_semver.yaml | 39 ----------- .github/workflows/test_ut_push_manager.yaml | 65 ------------------- .github/workflows/test_ut_streaming.yaml | 65 ------------------- CHANGES.txt | 3 - SplitiOSUnit_4.xctestplan | 25 +++++++ 20 files changed, 133 insertions(+), 714 deletions(-) create mode 100644 .github/workflows/base_build.yaml rename .github/workflows/{test_ios_ut_3.yaml => base_ut.yaml} (76%) create mode 100644 .github/workflows/test_all.yaml delete mode 100644 .github/workflows/test_ios_integration.yaml delete mode 100644 .github/workflows/test_ios_integration_1.yaml delete mode 100644 .github/workflows/test_ios_streaming.yaml delete mode 100644 .github/workflows/test_ios_streaming_1.yaml delete mode 100644 .github/workflows/test_ios_streaming_2.yaml delete mode 100644 .github/workflows/test_ios_ut.yaml delete mode 100644 .github/workflows/test_ios_ut_1.yaml delete mode 100644 .github/workflows/test_ios_ut_2.yaml delete mode 100644 .github/workflows/test_ios_ut_4.yaml delete mode 100644 .github/workflows/test_semver.yaml delete mode 100644 .github/workflows/test_ut_push_manager.yaml delete mode 100644 .github/workflows/test_ut_streaming.yaml diff --git a/.github/workflows/base_build.yaml b/.github/workflows/base_build.yaml new file mode 100644 index 00000000..3ac7a9da --- /dev/null +++ b/.github/workflows/base_build.yaml @@ -0,0 +1,39 @@ +name: Build + +on: + workflow_call: + inputs: + destination: + description: Destination + required: true + type: string + scheme: + description: Scheme to use + required: true + type: string + +jobs: + build: + runs-on: [macos-14] + + steps: + - name: Select Xcode + uses: maxim-lobanov/setup-xcode@v1 + with: + xcode-version: 15.4.0 + + - name: Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Build + uses: sersoft-gmbh/xcodebuild-action@v3 + with: + action: build + build-settings: ONLY_ACTIVE_ARCH=NO TEST_AFTER_BUILD=NO + configuration: Debug + derived-data-path: "${{ github.workspace }}/SplitApp" + destination: ${{ inputs.destination }} + project: Split.xcodeproj + scheme: ${{ inputs.scheme }} diff --git a/.github/workflows/test_ios_ut_3.yaml b/.github/workflows/base_ut.yaml similarity index 76% rename from .github/workflows/test_ios_ut_3.yaml rename to .github/workflows/base_ut.yaml index d57ded99..460ea296 100644 --- a/.github/workflows/test_ios_ut_3.yaml +++ b/.github/workflows/base_ut.yaml @@ -1,16 +1,18 @@ -name: Build and Test iOS UT (3) +name: Build and Test iOS UT on: - push: - branches: - - master - pull_request: - branches: - - master - - development + workflow_call: + inputs: + test-plan: + description: The test plan to run + required: true + type: string + destination: + required: true + type: string jobs: - build: + test: runs-on: [macos-14] steps: @@ -20,23 +22,22 @@ jobs: xcode-version: 15.4.0 - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v4 with: fetch-depth: 0 - name: Build iOS and Test uses: sersoft-gmbh/xcodebuild-action@v3 with: - action: build test - build-settings: ONLY_ACTIVE_ARCH=NO TEST_AFTER_BUILD=YES + action: test + build-settings: ONLY_ACTIVE_ARCH=NO configuration: Debug derived-data-path: "${{github.workspace}}/SplitApp" - destination: 'platform=iOS Simulator,OS=17.2,name=iPhone 15' + destination: ${{ inputs.destination }} project: Split.xcodeproj scheme: Split sdk: 'iphonesimulator' - test-plan: 'SplitiOSUnit_3' - use-xcpretty: true + test-plan: ${{ inputs.test-plan }} # - name: Install java 11 # uses: actions/setup-java@v3 diff --git a/.github/workflows/build_macos.yaml b/.github/workflows/build_macos.yaml index f6fed85b..91b3c126 100644 --- a/.github/workflows/build_macos.yaml +++ b/.github/workflows/build_macos.yaml @@ -11,27 +11,7 @@ on: jobs: build: - runs-on: [macos-latest] - - steps: - - name: Select Xcode - uses: maxim-lobanov/setup-xcode@v1 - with: - xcode-version: 15.1.0 - - - name: Checkout - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - - name: Build MacOS - uses: sersoft-gmbh/xcodebuild-action@v3 - with: - action: build - build-settings: ONLY_ACTIVE_ARCH=NO TEST_AFTER_BUILD=NO - configuration: Debug - derived-data-path: "${{github.workspace}}/SplitApp" - destination: 'platform=macOS,arch=x86_64' - project: Split.xcodeproj - scheme: Split - use-xcpretty: true + uses: ./.github/workflows/base_build.yaml + with: + destination: 'platform=macOS,arch=x86_64' + scheme: Split \ No newline at end of file diff --git a/.github/workflows/build_tvos.yaml b/.github/workflows/build_tvos.yaml index 58d6476d..18dd07a2 100644 --- a/.github/workflows/build_tvos.yaml +++ b/.github/workflows/build_tvos.yaml @@ -11,27 +11,7 @@ on: jobs: build: - runs-on: [macos-latest] - - steps: - - name: Select Xcode - uses: maxim-lobanov/setup-xcode@v1 - with: - xcode-version: 15.4.0 - - - name: Checkout - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - - name: Build tvOS - uses: sersoft-gmbh/xcodebuild-action@v3 - with: - action: build - build-settings: ONLY_ACTIVE_ARCH=NO TEST_AFTER_BUILD=NO - configuration: Debug - derived-data-path: "${{github.workspace}}/SplitApp" - destination: 'generic/platform=tvOS' - project: Split.xcodeproj - scheme: Split - use-xcpretty: true \ No newline at end of file + uses: ./.github/workflows/base_build.yaml + with: + destination: 'generic/platform=tvOS' + scheme: Split \ No newline at end of file diff --git a/.github/workflows/build_watchos.yaml b/.github/workflows/build_watchos.yaml index b397d3d1..b035410c 100644 --- a/.github/workflows/build_watchos.yaml +++ b/.github/workflows/build_watchos.yaml @@ -11,27 +11,7 @@ on: jobs: build: - runs-on: [macos-latest] - - steps: - - name: Select Xcode - uses: maxim-lobanov/setup-xcode@v1 - with: - xcode-version: 15.4.0 - - - name: Checkout - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - - name: Build watchOS - uses: sersoft-gmbh/xcodebuild-action@v3 - with: - action: build - build-settings: ONLY_ACTIVE_ARCH=NO TEST_AFTER_BUILD=NO - configuration: Debug - derived-data-path: "${{github.workspace}}/SplitApp" - destination: 'generic/platform=watchOS' - project: Split.xcodeproj - scheme: WatchOS - use-xcpretty: true \ No newline at end of file + uses: ./.github/workflows/base_build.yaml + with: + destination: 'generic/platform=watchOS' + scheme: WatchOS \ No newline at end of file diff --git a/.github/workflows/test_all.yaml b/.github/workflows/test_all.yaml new file mode 100644 index 00000000..a57f444d --- /dev/null +++ b/.github/workflows/test_all.yaml @@ -0,0 +1,41 @@ +name: Build and Test iOS + +on: + push: + branches: + - master + pull_request: + branches: + - master + - development + +jobs: + build: + uses: ./.github/workflows/base_build.yaml + with: + destination: 'platform=iOS Simulator,OS=17.2,name=iPhone 15' + scheme: Split + test: + needs: build + strategy: + matrix: + plan: [ + SplitiOSIntegration, + SplitiOSIntegration_1, + SplitiOSStreaming, + SplitiOSStreaming_1, + SplitiOSStreaming_2, + SplitiOSUnit, + SplitiOSUnit_1, + SplitiOSUnit_2, + SplitiOSUnit_3, + SplitiOSUnit_4, + SemVer, + SplitPushManagerUT, + SplitStreamingUT + ] + fail-fast: false + uses: ./.github/workflows/base_ut.yaml + with: + test-plan: ${{ matrix.plan }} + destination: 'platform=iOS Simulator,OS=17.2,name=iPhone 15' diff --git a/.github/workflows/test_ios_integration.yaml b/.github/workflows/test_ios_integration.yaml deleted file mode 100644 index a3f66336..00000000 --- a/.github/workflows/test_ios_integration.yaml +++ /dev/null @@ -1,39 +0,0 @@ -name: Build and iOS Integration Tests - -on: - push: - branches: - - master - pull_request: - branches: - - master - - development - -jobs: - build: - runs-on: [macos-14] - - steps: - - name: Select Xcode - uses: maxim-lobanov/setup-xcode@v1 - with: - xcode-version: 15.4.0 - - - name: Checkout - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - - name: Test iOS integration - uses: sersoft-gmbh/xcodebuild-action@v3 - with: - action: build test - build-settings: ONLY_ACTIVE_ARCH=NO TEST_AFTER_BUILD=YES - configuration: Debug - derived-data-path: "${{github.workspace}}/SplitApp" - destination: 'platform=iOS Simulator,OS=17.2,name=iPhone 15' - project: Split.xcodeproj - scheme: Split - sdk: 'iphonesimulator' - test-plan: 'SplitiOSIntegration' - use-xcpretty: true diff --git a/.github/workflows/test_ios_integration_1.yaml b/.github/workflows/test_ios_integration_1.yaml deleted file mode 100644 index 2f884b44..00000000 --- a/.github/workflows/test_ios_integration_1.yaml +++ /dev/null @@ -1,39 +0,0 @@ -name: Build and iOS Integration Tests - -on: - push: - branches: - - master - pull_request: - branches: - - master - - development - -jobs: - build: - runs-on: [macos-14] - - steps: - - name: Select Xcode - uses: maxim-lobanov/setup-xcode@v1 - with: - xcode-version: 15.4.0 - - - name: Checkout - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - - name: Test iOS integration - uses: sersoft-gmbh/xcodebuild-action@v3 - with: - action: build test - build-settings: ONLY_ACTIVE_ARCH=NO TEST_AFTER_BUILD=YES - configuration: Debug - derived-data-path: "${{github.workspace}}/SplitApp" - destination: 'platform=iOS Simulator,OS=17.2,name=iPhone 15' - project: Split.xcodeproj - scheme: Split - sdk: 'iphonesimulator' - test-plan: 'SplitiOSIntegration_1' - use-xcpretty: true diff --git a/.github/workflows/test_ios_streaming.yaml b/.github/workflows/test_ios_streaming.yaml deleted file mode 100644 index 8258c541..00000000 --- a/.github/workflows/test_ios_streaming.yaml +++ /dev/null @@ -1,39 +0,0 @@ -name: Build and Test iOS Streaming - -on: - push: - branches: - - master - pull_request: - branches: - - master - - development - -jobs: - build: - runs-on: [macos-14] - - steps: - - name: Select Xcode - uses: maxim-lobanov/setup-xcode@v1 - with: - xcode-version: 15.4.0 - - - name: Checkout - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - - name: Test iOS Streaming integration - uses: sersoft-gmbh/xcodebuild-action@v3 - with: - action: build test - build-settings: ONLY_ACTIVE_ARCH=NO TEST_AFTER_BUILD=YES - configuration: Debug - derived-data-path: "${{github.workspace}}/SplitApp" - destination: 'platform=iOS Simulator,OS=17.2,name=iPhone 15' - project: Split.xcodeproj - scheme: Split - sdk: 'iphonesimulator' - test-plan: 'SplitiOSStreaming' - use-xcpretty: true diff --git a/.github/workflows/test_ios_streaming_1.yaml b/.github/workflows/test_ios_streaming_1.yaml deleted file mode 100644 index 1f50d477..00000000 --- a/.github/workflows/test_ios_streaming_1.yaml +++ /dev/null @@ -1,39 +0,0 @@ -name: Build and Test iOS Streaming 1 - -on: - push: - branches: - - master - pull_request: - branches: - - master - - development - -jobs: - build: - runs-on: [macos-14] - - steps: - - name: Select Xcode - uses: maxim-lobanov/setup-xcode@v1 - with: - xcode-version: 15.4.0 - - - name: Checkout - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - - name: Test iOS Streaming integration - uses: sersoft-gmbh/xcodebuild-action@v3 - with: - action: build test - build-settings: ONLY_ACTIVE_ARCH=NO TEST_AFTER_BUILD=YES - configuration: Debug - derived-data-path: "${{github.workspace}}/SplitApp" - destination: 'platform=iOS Simulator,OS=17.2,name=iPhone 15' - project: Split.xcodeproj - scheme: Split - sdk: 'iphonesimulator' - test-plan: 'SplitiOSStreaming_1' - use-xcpretty: true diff --git a/.github/workflows/test_ios_streaming_2.yaml b/.github/workflows/test_ios_streaming_2.yaml deleted file mode 100644 index f4aaafb4..00000000 --- a/.github/workflows/test_ios_streaming_2.yaml +++ /dev/null @@ -1,39 +0,0 @@ -name: Build and Test iOS Streaming 1 - -on: - push: - branches: - - master - pull_request: - branches: - - master - - development - -jobs: - build: - runs-on: [macos-14] - - steps: - - name: Select Xcode - uses: maxim-lobanov/setup-xcode@v1 - with: - xcode-version: 15.4.0 - - - name: Checkout - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - - name: Test iOS Streaming integration - uses: sersoft-gmbh/xcodebuild-action@v3 - with: - action: build test - build-settings: ONLY_ACTIVE_ARCH=NO TEST_AFTER_BUILD=YES - configuration: Debug - derived-data-path: "${{github.workspace}}/SplitApp" - destination: 'platform=iOS Simulator,OS=17.2,name=iPhone 15' - project: Split.xcodeproj - scheme: Split - sdk: 'iphonesimulator' - test-plan: 'SplitiOSStreaming_2' - use-xcpretty: true diff --git a/.github/workflows/test_ios_ut.yaml b/.github/workflows/test_ios_ut.yaml deleted file mode 100644 index 3e1718d4..00000000 --- a/.github/workflows/test_ios_ut.yaml +++ /dev/null @@ -1,65 +0,0 @@ -name: Build and Test iOS UT - -on: - push: - branches: - - master - pull_request: - branches: - - master - - development - -jobs: - build: - runs-on: [macos-latest] - - steps: - - name: Select Xcode - uses: maxim-lobanov/setup-xcode@v1 - with: - xcode-version: 15.1.0 - - - name: Checkout - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - - name: Build iOS and Test - uses: sersoft-gmbh/xcodebuild-action@v1 - with: - action: build test - build-settings: ONLY_ACTIVE_ARCH=NO TEST_AFTER_BUILD=YES - configuration: Debug - derived-data-path: "${{github.workspace}}/SplitApp" - destination: 'platform=iOS Simulator,OS=17.2,name=iPhone 15' - project: Split.xcodeproj - scheme: Split - sdk: 'iphonesimulator' - test-plan: 'SplitiOSUnit' - use-xcpretty: true - - # - name: Install java 11 - # uses: actions/setup-java@v3 - # with: - # distribution: 'oracle' - # java-version: '17' - - # - name: SonarQube Install - # uses: mathrix-education/sonar-scanner@master - # env: - # ACTIONS_ALLOW_UNSECURE_COMMANDS: true - # with: - # version: 4.8.0.2856 - # scan: false - - # - name: SonarQube Scan - # run: > - # sonar-scanner --debug - # -Dsonar.login=${{ secrets.SONARQUBE_TOKEN }} - # -Dsonar.host.url=${{ secrets.SONARQUBE_HOST }} - # -Dsonar.projectName=${{ github.event.repository.name }} - # -Dsonar.projectKey=splitio_ios-client - # -Dsonar.github.token=${{ secrets.GITHUB_TOKEN }} - # -Dsonar.c.file.suffixes=- - # -Dsonar.cpp.file.suffixes=- - # -Dsonar.objc.file.suffixes=- diff --git a/.github/workflows/test_ios_ut_1.yaml b/.github/workflows/test_ios_ut_1.yaml deleted file mode 100644 index 7efc4e05..00000000 --- a/.github/workflows/test_ios_ut_1.yaml +++ /dev/null @@ -1,65 +0,0 @@ -name: Build and Test iOS UT (1) - -on: - push: - branches: - - master - pull_request: - branches: - - master - - development - -jobs: - build: - runs-on: [macos-latest] - - steps: - - name: Select Xcode - uses: maxim-lobanov/setup-xcode@v1 - with: - xcode-version: 15.1.0 - - - name: Checkout - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - - name: Build iOS and Test - uses: sersoft-gmbh/xcodebuild-action@v1 - with: - action: build test - build-settings: ONLY_ACTIVE_ARCH=NO TEST_AFTER_BUILD=YES - configuration: Debug - derived-data-path: "${{github.workspace}}/SplitApp" - destination: 'platform=iOS Simulator,OS=17.2,name=iPhone 15' - project: Split.xcodeproj - scheme: Split - sdk: 'iphonesimulator' - test-plan: 'SplitiOSUnit_1' - use-xcpretty: true - - # - name: Install java 11 - # uses: actions/setup-java@v3 - # with: - # distribution: 'oracle' - # java-version: '17' - - # - name: SonarQube Install - # uses: mathrix-education/sonar-scanner@master - # env: - # ACTIONS_ALLOW_UNSECURE_COMMANDS: true - # with: - # version: 4.8.0.2856 - # scan: false - - # - name: SonarQube Scan - # run: > - # sonar-scanner --debug - # -Dsonar.login=${{ secrets.SONARQUBE_TOKEN }} - # -Dsonar.host.url=${{ secrets.SONARQUBE_HOST }} - # -Dsonar.projectName=${{ github.event.repository.name }} - # -Dsonar.projectKey=splitio_ios-client - # -Dsonar.github.token=${{ secrets.GITHUB_TOKEN }} - # -Dsonar.c.file.suffixes=- - # -Dsonar.cpp.file.suffixes=- - # -Dsonar.objc.file.suffixes=- diff --git a/.github/workflows/test_ios_ut_2.yaml b/.github/workflows/test_ios_ut_2.yaml deleted file mode 100644 index 1412c4e6..00000000 --- a/.github/workflows/test_ios_ut_2.yaml +++ /dev/null @@ -1,65 +0,0 @@ -name: Build and Test iOS UT (2) - -on: - push: - branches: - - master - pull_request: - branches: - - master - - development - -jobs: - build: - runs-on: [macos-latest] - - steps: - - name: Select Xcode - uses: maxim-lobanov/setup-xcode@v1 - with: - xcode-version: 15.1.0 - - - name: Checkout - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - - name: Build iOS and Test - uses: sersoft-gmbh/xcodebuild-action@v1 - with: - action: build test - build-settings: ONLY_ACTIVE_ARCH=NO TEST_AFTER_BUILD=YES - configuration: Debug - derived-data-path: "${{github.workspace}}/SplitApp" - destination: 'platform=iOS Simulator,OS=17.2,name=iPhone 15' - project: Split.xcodeproj - scheme: Split - sdk: 'iphonesimulator' - test-plan: 'SplitiOSUnit_2' - use-xcpretty: true - - # - name: Install java 11 - # uses: actions/setup-java@v3 - # with: - # distribution: 'oracle' - # java-version: '17' - - # - name: SonarQube Install - # uses: mathrix-education/sonar-scanner@master - # env: - # ACTIONS_ALLOW_UNSECURE_COMMANDS: true - # with: - # version: 4.8.0.2856 - # scan: false - - # - name: SonarQube Scan - # run: > - # sonar-scanner --debug - # -Dsonar.login=${{ secrets.SONARQUBE_TOKEN }} - # -Dsonar.host.url=${{ secrets.SONARQUBE_HOST }} - # -Dsonar.projectName=${{ github.event.repository.name }} - # -Dsonar.projectKey=splitio_ios-client - # -Dsonar.github.token=${{ secrets.GITHUB_TOKEN }} - # -Dsonar.c.file.suffixes=- - # -Dsonar.cpp.file.suffixes=- - # -Dsonar.objc.file.suffixes=- diff --git a/.github/workflows/test_ios_ut_4.yaml b/.github/workflows/test_ios_ut_4.yaml deleted file mode 100644 index 6d83c355..00000000 --- a/.github/workflows/test_ios_ut_4.yaml +++ /dev/null @@ -1,65 +0,0 @@ -name: Build and Test iOS UT (1) - -on: - push: - branches: - - master - pull_request: - branches: - - master - - development - -jobs: - build: - runs-on: [macos-latest] - - steps: - - name: Select Xcode - uses: maxim-lobanov/setup-xcode@v1 - with: - xcode-version: 15.1.0 - - - name: Checkout - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - - name: Build iOS and Test 4 - uses: sersoft-gmbh/xcodebuild-action@v3 - with: - action: build test - build-settings: ONLY_ACTIVE_ARCH=NO TEST_AFTER_BUILD=YES - configuration: Debug - derived-data-path: "${{github.workspace}}/SplitApp" - destination: 'platform=iOS Simulator,OS=17.2,name=iPhone 15' - project: Split.xcodeproj - scheme: Split - sdk: 'iphonesimulator' - test-plan: 'SplitiOSUnit_4' - use-xcpretty: true - - # - name: Install java 11 - # uses: actions/setup-java@v3 - # with: - # distribution: 'oracle' - # java-version: '17' - - # - name: SonarQube Install - # uses: mathrix-education/sonar-scanner@master - # env: - # ACTIONS_ALLOW_UNSECURE_COMMANDS: true - # with: - # version: 4.8.0.2856 - # scan: false - - # - name: SonarQube Scan - # run: > - # sonar-scanner --debug - # -Dsonar.login=${{ secrets.SONARQUBE_TOKEN }} - # -Dsonar.host.url=${{ secrets.SONARQUBE_HOST }} - # -Dsonar.projectName=${{ github.event.repository.name }} - # -Dsonar.projectKey=splitio_ios-client - # -Dsonar.github.token=${{ secrets.GITHUB_TOKEN }} - # -Dsonar.c.file.suffixes=- - # -Dsonar.cpp.file.suffixes=- - # -Dsonar.objc.file.suffixes=- diff --git a/.github/workflows/test_semver.yaml b/.github/workflows/test_semver.yaml deleted file mode 100644 index 0dca8ea4..00000000 --- a/.github/workflows/test_semver.yaml +++ /dev/null @@ -1,39 +0,0 @@ -name: Build and test SemVer - -on: - push: - branches: - - master - pull_request: - branches: - - master - - development - -jobs: - build: - runs-on: [macos-14] - - steps: - - name: Select Xcode - uses: maxim-lobanov/setup-xcode@v1 - with: - xcode-version: 15.4.0 - - - name: Checkout - uses: actions/checkout@v3 - with: - fetch-depth: 0 - - - name: Test iOS integration - uses: sersoft-gmbh/xcodebuild-action@v3 - with: - action: build test - build-settings: ONLY_ACTIVE_ARCH=NO TEST_AFTER_BUILD=YES - configuration: Debug - derived-data-path: "${{github.workspace}}/SplitApp" - destination: 'platform=iOS Simulator,OS=17.2,name=iPhone 15' - project: Split.xcodeproj - scheme: Split - sdk: 'iphonesimulator' - test-plan: 'SemVer' - use-xcpretty: true diff --git a/.github/workflows/test_ut_push_manager.yaml b/.github/workflows/test_ut_push_manager.yaml deleted file mode 100644 index 3fa141c7..00000000 --- a/.github/workflows/test_ut_push_manager.yaml +++ /dev/null @@ -1,65 +0,0 @@ -name: Build and Test Push notification manager UT - -on: - push: - branches: - - master - pull_request: - branches: - - master - - development - -jobs: - build: - runs-on: [macos-14] - - steps: - - name: Select Xcode - uses: maxim-lobanov/setup-xcode@v1 - with: - xcode-version: 15.4.0 - - - name: Checkout - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - - name: Build iOS and Test Push notification manager - uses: sersoft-gmbh/xcodebuild-action@v3 - with: - action: build test - build-settings: ONLY_ACTIVE_ARCH=NO TEST_AFTER_BUILD=YES - configuration: Debug - derived-data-path: "${{github.workspace}}/SplitApp" - destination: 'platform=iOS Simulator,OS=17.2,name=iPhone 15' - project: Split.xcodeproj - scheme: Split - sdk: 'iphonesimulator' - test-plan: 'SplitPushManagerUT' - use-xcpretty: true - - # - name: Install java 11 - # uses: actions/setup-java@v3 - # with: - # distribution: 'oracle' - # java-version: '17' - - # - name: SonarQube Install - # uses: mathrix-education/sonar-scanner@master - # env: - # ACTIONS_ALLOW_UNSECURE_COMMANDS: true - # with: - # version: 4.8.0.2856 - # scan: false - - # - name: SonarQube Scan - # run: > - # sonar-scanner --debug - # -Dsonar.login=${{ secrets.SONARQUBE_TOKEN }} - # -Dsonar.host.url=${{ secrets.SONARQUBE_HOST }} - # -Dsonar.projectName=${{ github.event.repository.name }} - # -Dsonar.projectKey=splitio_ios-client - # -Dsonar.github.token=${{ secrets.GITHUB_TOKEN }} - # -Dsonar.c.file.suffixes=- - # -Dsonar.cpp.file.suffixes=- - # -Dsonar.objc.file.suffixes=- diff --git a/.github/workflows/test_ut_streaming.yaml b/.github/workflows/test_ut_streaming.yaml deleted file mode 100644 index a18afa6a..00000000 --- a/.github/workflows/test_ut_streaming.yaml +++ /dev/null @@ -1,65 +0,0 @@ -name: Build and Test streaming UT - -on: - push: - branches: - - master - pull_request: - branches: - - master - - development - -jobs: - build: - runs-on: [macos-14] - - steps: - - name: Select Xcode - uses: maxim-lobanov/setup-xcode@v1 - with: - xcode-version: 15.4.0 - - - name: Checkout - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - - name: Build iOS and Test Streaming UT - uses: sersoft-gmbh/xcodebuild-action@v3 - with: - action: build test - build-settings: ONLY_ACTIVE_ARCH=NO TEST_AFTER_BUILD=YES - configuration: Debug - derived-data-path: "${{github.workspace}}/SplitApp" - destination: 'platform=iOS Simulator,OS=17.2,name=iPhone 15' - project: Split.xcodeproj - scheme: Split - sdk: 'iphonesimulator' - test-plan: 'SplitStreamingUT' - use-xcpretty: true - - # - name: Install java 11 - # uses: actions/setup-java@v3 - # with: - # distribution: 'oracle' - # java-version: '17' - - # - name: SonarQube Install - # uses: mathrix-education/sonar-scanner@master - # env: - # ACTIONS_ALLOW_UNSECURE_COMMANDS: true - # with: - # version: 4.8.0.2856 - # scan: false - - # - name: SonarQube Scan - # run: > - # sonar-scanner --debug - # -Dsonar.login=${{ secrets.SONARQUBE_TOKEN }} - # -Dsonar.host.url=${{ secrets.SONARQUBE_HOST }} - # -Dsonar.projectName=${{ github.event.repository.name }} - # -Dsonar.projectKey=splitio_ios-client - # -Dsonar.github.token=${{ secrets.GITHUB_TOKEN }} - # -Dsonar.c.file.suffixes=- - # -Dsonar.cpp.file.suffixes=- - # -Dsonar.objc.file.suffixes=- diff --git a/CHANGES.txt b/CHANGES.txt index a570fb7d..8f01699b 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -2,9 +2,6 @@ - Added support for targeting rules based on large segments. - BREAKING: Dropped support for Split Proxy below version 5.9.0. The SDK now requires Split Proxy 5.9.0 or above. -2.27.0: (Sep 30, 2024) -- Added support for large segments - 2.26.1: (Jul 30, 2024) - Added wildcard host filtering for certificate pinning. diff --git a/SplitiOSUnit_4.xctestplan b/SplitiOSUnit_4.xctestplan index 1f9a5b21..fe28c302 100644 --- a/SplitiOSUnit_4.xctestplan +++ b/SplitiOSUnit_4.xctestplan @@ -120,6 +120,12 @@ "MultiClientStreamingResetTest", "Murmur3HashingTest", "MySegmentServerErrorTest", + "MySegmentUpdateTest", + "MySegmentUpdateTest\/testMyLargeSegmentsUpdate()", + "MySegmentUpdateTest\/testMySegmentsLargeUpdateBounded()", + "MySegmentUpdateTest\/testMySegmentsUpdate()", + "MySegmentUpdateTest\/testMySegmentsUpdateBounded()", + "MySegmentUpdateTest\/testSeveralNotificationAndOneFetch()", "MySegmentUpdateV2Test", "MySegmentUpdatedTest", "MySegmentsBgSyncWorkerTest", @@ -150,6 +156,25 @@ "RecorderFlusherCheckerTests", "RegexTest", "SdkUpdateStreamingTest", + "SegmentsSyncHelperTests", + "SegmentsSyncHelperTests\/testCdnByPassNoTillChange()", + "SegmentsSyncHelperTests\/testCdnByPassNoTillNoChange()", + "SegmentsSyncHelperTests\/testCdnByPassTill()", + "SegmentsSyncHelperTests\/testDidffGoallCnMs()", + "SegmentsSyncHelperTests\/testDiffGoalCnMls()", + "SegmentsUpdateWorkerTests", + "SegmentsUpdateWorkerTests\/testLargeSegmentsKeyListAdd()", + "SegmentsUpdateWorkerTests\/testLargeSegmentsKeyListNoAction()", + "SegmentsUpdateWorkerTests\/testLargeSegmentsKeyListRemoval()", + "SegmentsUpdateWorkerTests\/testMyLargeSegmentsNonRemoval()", + "SegmentsUpdateWorkerTests\/testMyLargeSegmentsRemoval()", + "SegmentsUpdateWorkerTests\/testMySegmentsNonRemoval()", + "SegmentsUpdateWorkerTests\/testMySegmentsRemoval()", + "SegmentsUpdateWorkerTests\/testSegmentsKeyListAdd()", + "SegmentsUpdateWorkerTests\/testSegmentsKeyListNoAction()", + "SegmentsUpdateWorkerTests\/testSegmentsKeyListRemove()", + "SegmentsUpdateWorkerTests\/testUnbounded()", + "SegmentsUpdateWorkerTests\/testUnboundedLarge()", "SemverIntegrationTest", "SemverTest", "ServiceEndpointsTests",