diff --git a/.github/azure-pipelines.yml b/.github/azure-pipelines.yml index 1ea4b23e..49301f7b 100644 --- a/.github/azure-pipelines.yml +++ b/.github/azure-pipelines.yml @@ -76,16 +76,16 @@ jobs: # iOS - template: jobs/ios.yml parameters: - name: 'iOS_Xcode142' + name: 'iOS_Xcode162' vmImage: 'macOS-latest' - xCodeVersion: 14.2 - simulator: 'iPhone 11' + xCodeVersion: 16.2 + simulator: 'iPhone 16' - template: jobs/ios.yml parameters: - name: 'iOS_Xcode150' + name: 'iOS_Xcode152' vmImage: 'macOS-13' - xCodeVersion: 15.0 + xCodeVersion: 15.2 simulator: 'iPhone 14' # Linux diff --git a/.github/jobs/android.yml b/.github/jobs/android.yml index 1ca3382c..c2175c83 100644 --- a/.github/jobs/android.yml +++ b/.github/jobs/android.yml @@ -9,11 +9,12 @@ jobs: timeoutInMinutes: 30 pool: - vmImage: macos-latest + vmImage: macos-13 steps: - script: | echo Install Android image + export JAVA_HOME=$JAVA_HOME_8_X64 echo 'y' | $ANDROID_HOME/tools/bin/sdkmanager --install 'system-images;android-27;default;x86_64' echo 'y' | $ANDROID_HOME/tools/bin/sdkmanager --licenses echo Create AVD @@ -22,7 +23,7 @@ jobs: - script: | echo Start emulator - nohup $ANDROID_HOME/emulator/emulator -avd Pixel_API_27 -gpu host -no-window 2>&1 & + nohup $ANDROID_HOME/emulator/emulator -avd Pixel_API_27 -gpu host -no-window -no-audio -no-boot-anim 2>&1 & echo Wait for emulator $ANDROID_HOME/platform-tools/adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed) ]]; do echo '.'; sleep 1; done' $ANDROID_HOME/platform-tools/adb devices @@ -34,13 +35,14 @@ jobs: workingDirectory: 'Tests/UnitTests/Android' options: '-PabiFilters=x86_64 -PjsEngine=${{parameters.jsEngine}} -PndkVersion=$(ndkVersion)' tasks: 'connectedAndroidTest' - jdkVersionOption: 1.11 + jdkVersionOption: 1.17 displayName: 'Run Connected Android Test' - script: | - export results=$(find ./app/build/outputs/androidTest-results -name "*.txt") - echo cat "$results" - cat "$results" + find ./app/build/outputs/androidTest-results -name "*.txt" -print0 | while IFS= read -r -d '' file; do + echo "cat \"$file\"" + cat "$file" + done workingDirectory: 'Tests/UnitTests/Android' condition: succeededOrFailed() displayName: 'Dump logcat from Test Results' diff --git a/.github/jobs/ios.yml b/.github/jobs/ios.yml index 2f7ce5d3..e3b7aba2 100644 --- a/.github/jobs/ios.yml +++ b/.github/jobs/ios.yml @@ -20,6 +20,11 @@ jobs: cmake -B Build/iOS -G Xcode -D IOS=ON displayName: 'Configure CMake' + - script: | + echo Boot "${{parameters.simulator}}" + xcrun simctl boot "${{parameters.simulator}}" + displayName: 'Boot Simulator' + - task: Xcode@5 inputs: xcWorkspacePath: 'Build/iOS/JsRuntimeHost.xcodeproj' @@ -30,8 +35,6 @@ jobs: displayName: 'Build Xcode Project' - script: | - echo Boot "${{parameters.simulator}}" - xcrun simctl boot "${{parameters.simulator}}" echo Install UnitTests app xcrun simctl install booted "Build/iOS/Tests/UnitTests/RelWithDebInfo-iphonesimulator/UnitTests.app" echo Launch UnitTests app diff --git a/.github/jobs/macos.yml b/.github/jobs/macos.yml index 2a321a92..4640e638 100644 --- a/.github/jobs/macos.yml +++ b/.github/jobs/macos.yml @@ -7,8 +7,8 @@ jobs: steps: - script: | - sudo xcode-select --switch /Applications/Xcode_14.0.app/Contents/Developer - displayName: 'Select Xcode 14.0' + sudo xcode-select --switch /Applications/Xcode_15.1.app/Contents/Developer + displayName: 'Select Xcode 15.1' - script: | cmake -B Build/macOS -GXcode diff --git a/Tests/UnitTests/Android/app/build.gradle b/Tests/UnitTests/Android/app/build.gradle index be320ce8..4299cde5 100644 --- a/Tests/UnitTests/Android/app/build.gradle +++ b/Tests/UnitTests/Android/app/build.gradle @@ -10,7 +10,7 @@ if (project.hasProperty("jsEngine")) { android { namespace 'com.jsruntimehost.unittests' compileSdk 33 - ndkVersion = "21.4.7075529" + ndkVersion = "23.1.7779620" if (project.hasProperty("ndkVersion")) { ndkVersion = project.property("ndkVersion") } diff --git a/Tests/UnitTests/Android/build.gradle b/Tests/UnitTests/Android/build.gradle index 71b99f4c..a303dc8d 100644 --- a/Tests/UnitTests/Android/build.gradle +++ b/Tests/UnitTests/Android/build.gradle @@ -1,5 +1,5 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. plugins { - id 'com.android.application' version '7.3.1' apply false - id 'com.android.library' version '7.3.1' apply false + id 'com.android.application' version '8.8.0' apply false + id 'com.android.library' version '8.8.0' apply false } \ No newline at end of file diff --git a/Tests/UnitTests/Android/gradle.properties b/Tests/UnitTests/Android/gradle.properties index 2388e489..25ceb3e4 100644 --- a/Tests/UnitTests/Android/gradle.properties +++ b/Tests/UnitTests/Android/gradle.properties @@ -19,5 +19,7 @@ android.useAndroidX=true # resources declared in the library itself and none from the library's dependencies, # thereby reducing the size of the R class for that library android.nonTransitiveRClass=true +android.defaults.buildfeatures.buildconfig=true +android.nonFinalResIds=false # Select the JavaScript engine to use #jsEngine=JavaScriptCore diff --git a/Tests/UnitTests/Android/gradle/wrapper/gradle-wrapper.properties b/Tests/UnitTests/Android/gradle/wrapper/gradle-wrapper.properties index 3b7277ec..1c3f8b23 100644 --- a/Tests/UnitTests/Android/gradle/wrapper/gradle-wrapper.properties +++ b/Tests/UnitTests/Android/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ #Fri Jan 20 12:19:56 PST 2023 distributionBase=GRADLE_USER_HOME -distributionUrl=https\://services.gradle.org/distributions/gradle-8.2.1-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-bin.zip distributionPath=wrapper/dists zipStorePath=wrapper/dists zipStoreBase=GRADLE_USER_HOME