diff --git a/engine/benchmark/.gitignore b/engine/benchmark/.gitignore new file mode 100644 index 0000000000..796b96d1c4 --- /dev/null +++ b/engine/benchmark/.gitignore @@ -0,0 +1 @@ +/build diff --git a/engine/benchmark/README.md b/engine/benchmark/README.md new file mode 100644 index 0000000000..8c1d61b76b --- /dev/null +++ b/engine/benchmark/README.md @@ -0,0 +1,34 @@ +# Android FHIR SDK Engine Benchmark module + +Contains test cases that evaluate the performance of individual tasks executed for the first time directly on hardware. + +The test cases are designed to run in sequence of their alphabetic order to make sure larger tasks do not build cache for smaller ones. Their class names are prefixed by an extra letter to inform their position relative to others in the list. + +# How to run the benchmark + +In Android Studio, set your build variants to `release` and run your benchmark as you would any `@Test` using the gutter action next to your test class or method. + +![gutter test action](https://developer.android.com/static/topic/performance/images/benchmark_images/microbenchmark_run.png) + +The results will be similar to this: +``` +1,297,374 ns 5345 allocs trace EngineDatabaseBenchmark.createAndGet +1,114,474,793 ns 4922289 allocs trace FhirSyncWorkerBenchmark.oneTimeSync_50patients +15,251,125 ns 100542 allocs trace FhirSyncWorkerBenchmark.oneTimeSync_1patient +179,806,709 ns 986017 allocs trace FhirSyncWorkerBenchmark.oneTimeSync_10patients +1,451,758 ns 11883 allocs trace GzipUploadInterceptorBenchmark.upload_10patientsWithGzip +1,537,559 ns 11829 allocs trace GzipUploadInterceptorBenchmark.upload_10patientsWithoutGzip +73,640,833 ns 1074360 allocs trace GzipUploadInterceptorBenchmark.upload_1000patientsWithGzip +7,493,642 ns 108428 allocs trace GzipUploadInterceptorBenchmark.upload_100patientsWithoutGzip +7,799,264 ns 108465 allocs trace GzipUploadInterceptorBenchmark.upload_100patientsWithGzip +71,189,333 ns 1074466 allocs trace GzipUploadInterceptorBenchmark.upload_1000patientsWithoutGzip + +``` + +Alternatively, from the command line, run the connectedCheck to run all of the tests from specified Gradle module: + +```bash +./gradlew :engine:benchmark:connectedReleaseAndroidTest +``` + +In this case, results will be saved to the `outputs/androidTest-results/connected//test-result.pb`. To visualize on Android Studio, click Run / Import Tests From File and find the `.pb` file \ No newline at end of file diff --git a/benchmark/proguard-rules.pro b/engine/benchmark/benchmark-proguard-rules.pro similarity index 70% rename from benchmark/proguard-rules.pro rename to engine/benchmark/benchmark-proguard-rules.pro index f1b424510d..357b065562 100644 --- a/benchmark/proguard-rules.pro +++ b/engine/benchmark/benchmark-proguard-rules.pro @@ -19,3 +19,19 @@ # If you keep the line number information, uncomment this to # hide the original source file name. #-renamesourcefileattribute SourceFile + +-dontobfuscate + +-ignorewarnings + +-keepattributes *Annotation* + +-dontnote junit.framework.** +-dontnote junit.runner.** + +-dontwarn androidx.test.** +-dontwarn org.junit.** +-dontwarn org.hamcrest.** +-dontwarn com.squareup.javawriter.JavaWriter + +-keepclasseswithmembers @org.junit.runner.RunWith public class * diff --git a/engine/benchmark/build.gradle.kts b/engine/benchmark/build.gradle.kts new file mode 100644 index 0000000000..b3adc50d87 --- /dev/null +++ b/engine/benchmark/build.gradle.kts @@ -0,0 +1,80 @@ +import Dependencies.forceHapiVersion +import Dependencies.forceJacksonVersion +import Dependencies.removeIncompatibleDependencies + +plugins { + id(Plugins.BuildPlugins.androidLib) + id(Plugins.BuildPlugins.kotlinAndroid) + id(Plugins.BuildPlugins.benchmark) +} + +android { + namespace = "com.google.android.fhir.benchmark" + compileSdk = Sdk.compileSdk + defaultConfig { + minSdk = Sdk.minSdk + testInstrumentationRunner = Dependencies.androidBenchmarkRunner + } + + testBuildType = "release" + buildTypes { release {} } + packaging { + resources.excludes.addAll( + listOf( + "license.html", + "META-INF/ASL2.0", + "META-INF/ASL-2.0.txt", + "META-INF/DEPENDENCIES", + "META-INF/LGPL-3.0.txt", + "META-INF/LICENSE", + "META-INF/LICENSE.txt", + "META-INF/license.txt", + "META-INF/license.html", + "META-INF/LICENSE.md", + "META-INF/NOTICE", + "META-INF/NOTICE.txt", + "META-INF/NOTICE.md", + "META-INF/notice.txt", + "META-INF/LGPL-3.0.txt", + "META-INF/sun-jaxb.episode", + "META-INF/*.kotlin_module", + "readme.html", + ) + ) + } + kotlin { jvmToolchain(11) } + compileOptions { + sourceCompatibility = javaVersion + targetCompatibility = javaVersion + } +} + +afterEvaluate { configureFirebaseTestLabForMicroBenchmark() } + +configurations { + all { + removeIncompatibleDependencies() + forceHapiVersion() + forceJacksonVersion() + } +} + +dependencies { + androidTestImplementation(Dependencies.AndroidxTest.benchmarkJunit) + androidTestImplementation(Dependencies.AndroidxTest.extJunit) + androidTestImplementation(Dependencies.AndroidxTest.runner) + androidTestImplementation(Dependencies.Cql.engineJackson) + androidTestImplementation(Dependencies.Cql.evaluator) + androidTestImplementation(Dependencies.Cql.evaluatorBuilder) + androidTestImplementation(Dependencies.junit) + androidTestImplementation(Dependencies.Kotlin.kotlinCoroutinesAndroid) + androidTestImplementation(Dependencies.truth) + androidTestImplementation(Dependencies.Androidx.workRuntimeKtx) + androidTestImplementation(Dependencies.AndroidxTest.workTestingRuntimeKtx) + androidTestImplementation(Dependencies.mockWebServer) + androidTestImplementation(Dependencies.Retrofit.coreRetrofit) + + androidTestImplementation(project(":engine")) + // for test json files only + androidTestImplementation(project(":workflow-testing")) +} diff --git a/benchmark/src/androidTest/AndroidManifest.xml b/engine/benchmark/src/androidTest/AndroidManifest.xml similarity index 79% rename from benchmark/src/androidTest/AndroidManifest.xml rename to engine/benchmark/src/androidTest/AndroidManifest.xml index eceb07060f..55b1df6da4 100644 --- a/benchmark/src/androidTest/AndroidManifest.xml +++ b/engine/benchmark/src/androidTest/AndroidManifest.xml @@ -11,10 +11,13 @@ manifest, as it is not possible to override this flag from Gradle. --> - + diff --git a/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/F_EngineDatabaseBenchmark.kt b/engine/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/EngineDatabaseBenchmark.kt similarity index 97% rename from benchmark/src/androidTest/java/com/google/android/fhir/benchmark/F_EngineDatabaseBenchmark.kt rename to engine/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/EngineDatabaseBenchmark.kt index ab66c7fa1f..a356eda2bc 100644 --- a/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/F_EngineDatabaseBenchmark.kt +++ b/engine/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/EngineDatabaseBenchmark.kt @@ -1,5 +1,5 @@ /* - * Copyright 2022 Google LLC + * Copyright 2022-2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -36,7 +36,7 @@ import org.junit.Test import org.junit.runner.RunWith @RunWith(AndroidJUnit4::class) -class F_EngineDatabaseBenchmark { +class EngineDatabaseBenchmark { @get:Rule val benchmarkRule = BenchmarkRule() diff --git a/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/H_FhirSyncWorkerBenchmark.kt b/engine/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/FhirSyncWorkerBenchmark.kt similarity index 99% rename from benchmark/src/androidTest/java/com/google/android/fhir/benchmark/H_FhirSyncWorkerBenchmark.kt rename to engine/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/FhirSyncWorkerBenchmark.kt index e85d10809c..36dc06d19b 100644 --- a/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/H_FhirSyncWorkerBenchmark.kt +++ b/engine/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/FhirSyncWorkerBenchmark.kt @@ -71,7 +71,7 @@ import org.junit.Test import org.junit.runner.RunWith @RunWith(AndroidJUnit4::class) -class H_FhirSyncWorkerBenchmark { +class FhirSyncWorkerBenchmark { @get:Rule val benchmarkRule = BenchmarkRule() diff --git a/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/I_GzipUploadInterceptorBenchmark.kt b/engine/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/GzipUploadInterceptorBenchmark.kt similarity index 99% rename from benchmark/src/androidTest/java/com/google/android/fhir/benchmark/I_GzipUploadInterceptorBenchmark.kt rename to engine/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/GzipUploadInterceptorBenchmark.kt index 178ff1a9ba..cedf72aceb 100644 --- a/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/I_GzipUploadInterceptorBenchmark.kt +++ b/engine/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/GzipUploadInterceptorBenchmark.kt @@ -49,7 +49,7 @@ import retrofit2.http.GET import retrofit2.http.POST import retrofit2.http.Url -class I_GzipUploadInterceptorBenchmark { +class GzipUploadInterceptorBenchmark { @get:Rule val benchmarkRule = BenchmarkRule() diff --git a/engine/benchmark/src/main/AndroidManifest.xml b/engine/benchmark/src/main/AndroidManifest.xml new file mode 100644 index 0000000000..fc20db30a7 --- /dev/null +++ b/engine/benchmark/src/main/AndroidManifest.xml @@ -0,0 +1,2 @@ + + diff --git a/kokoro/gcp_ubuntu/kokoro_build.sh b/kokoro/gcp_ubuntu/kokoro_build.sh index bf11ebb99f..bc7c4eb45b 100755 --- a/kokoro/gcp_ubuntu/kokoro_build.sh +++ b/kokoro/gcp_ubuntu/kokoro_build.sh @@ -92,7 +92,7 @@ function build_only() { function device_tests() { ./gradlew packageDebugAndroidTest --scan --stacktrace ./gradlew packageReleaseAndroidTest --scan --stacktrace - local lib_names=("benchmark" "datacapture" "engine" "knowledge" "workflow") + local lib_names=("workflow:benchmark" "engine:benchmark" "datacapture" "engine" "knowledge" "workflow") firebase_pids=() for lib_name in "${lib_names[@]}"; do ./gradlew :$lib_name:runFlank --scan --stacktrace & diff --git a/settings.gradle.kts b/settings.gradle.kts index f44711b7ce..7cc39b2243 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -28,8 +28,6 @@ if (kokoroRun == true) { } } -include(":benchmark") - include(":catalog") include(":common") @@ -47,3 +45,7 @@ include(":knowledge") include(":workflow") include(":workflow-testing") + +include(":workflow:benchmark") + +include(":engine:benchmark") diff --git a/workflow/benchmark/.gitignore b/workflow/benchmark/.gitignore new file mode 100644 index 0000000000..796b96d1c4 --- /dev/null +++ b/workflow/benchmark/.gitignore @@ -0,0 +1 @@ +/build diff --git a/benchmark/README.md b/workflow/benchmark/README.md similarity index 90% rename from benchmark/README.md rename to workflow/benchmark/README.md index 8cc724b037..74b9e46466 100644 --- a/benchmark/README.md +++ b/workflow/benchmark/README.md @@ -1,4 +1,4 @@ -# Android FHIR SDK Benchmark module +# Android FHIR SDK Workflow Benchmark module Contains test cases that evaluate the performance of individual tasks executed for the first time directly on hardware. @@ -24,14 +24,13 @@ The results will be similar to this: 1,238,212,883 ns trace D_FhirJsonParserBenchmark.parseLightFhirBundle 2,785,964,288 ns trace E_ElmJsonLibraryLoaderBenchmark.parseImmunityCheckCqlFromFhirLibrary 713,779,915 ns trace E_ElmJsonLibraryLoaderBenchmark.parseFhirHelpersCqlFromFhirLibrary - 121,204,232 ns trace F_EngineDatabaseBenchmark.createAndGet -9,833,892,387 ns trace G_CqlEvaluatorBenchmark.evaluatesLibrary +9,833,892,387 ns trace F_CqlEvaluatorBenchmark.evaluatesLibrary ``` Alternatively, from the command line, run the connectedCheck to run all of the tests from specified Gradle module: ```bash -./gradlew benchmark:connectedReleaseAndroidTest +./gradlew workflow:benchmark:connectedReleaseAndroidTest ``` In this case, results will be saved to the `outputs/androidTest-results/connected//test-result.pb`. To visualize on Android Studio, click Run / Import Tests From File and find the `.pb` file \ No newline at end of file diff --git a/workflow/benchmark/benchmark-proguard-rules.pro b/workflow/benchmark/benchmark-proguard-rules.pro new file mode 100644 index 0000000000..357b065562 --- /dev/null +++ b/workflow/benchmark/benchmark-proguard-rules.pro @@ -0,0 +1,37 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile + +-dontobfuscate + +-ignorewarnings + +-keepattributes *Annotation* + +-dontnote junit.framework.** +-dontnote junit.runner.** + +-dontwarn androidx.test.** +-dontwarn org.junit.** +-dontwarn org.hamcrest.** +-dontwarn com.squareup.javawriter.JavaWriter + +-keepclasseswithmembers @org.junit.runner.RunWith public class * diff --git a/benchmark/build.gradle.kts b/workflow/benchmark/build.gradle.kts similarity index 92% rename from benchmark/build.gradle.kts rename to workflow/benchmark/build.gradle.kts index f79799428a..d03cc5d55c 100644 --- a/benchmark/build.gradle.kts +++ b/workflow/benchmark/build.gradle.kts @@ -9,7 +9,7 @@ plugins { } android { - namespace = "com.google.android.fhir.benchmark" + namespace = "com.google.android.fhir.workflow.benchmark" compileSdk = Sdk.compileSdk defaultConfig { minSdk = Sdk.minSdk @@ -71,10 +71,7 @@ dependencies { androidTestImplementation(Dependencies.truth) androidTestImplementation(Dependencies.Androidx.workRuntimeKtx) androidTestImplementation(Dependencies.AndroidxTest.workTestingRuntimeKtx) - androidTestImplementation(Dependencies.mockWebServer) - androidTestImplementation(Dependencies.Retrofit.coreRetrofit) - - androidTestImplementation(project(":engine")) + androidTestImplementation(Dependencies.androidFhirEngine) { exclude(module = "truth") } androidTestImplementation(project(":knowledge")) { exclude(group = Dependencies.androidFhirGroup, module = Dependencies.androidFhirEngineModule) } diff --git a/workflow/benchmark/src/androidTest/AndroidManifest.xml b/workflow/benchmark/src/androidTest/AndroidManifest.xml new file mode 100644 index 0000000000..55b1df6da4 --- /dev/null +++ b/workflow/benchmark/src/androidTest/AndroidManifest.xml @@ -0,0 +1,23 @@ + + + + + + + + + diff --git a/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/A_JacksonMapperBenchmark.kt b/workflow/benchmark/src/androidTest/java/com/google/android/fhir/workflow/benchmark/A_JacksonMapperBenchmark.kt similarity index 94% rename from benchmark/src/androidTest/java/com/google/android/fhir/benchmark/A_JacksonMapperBenchmark.kt rename to workflow/benchmark/src/androidTest/java/com/google/android/fhir/workflow/benchmark/A_JacksonMapperBenchmark.kt index cb904ba721..1b2775b9dd 100644 --- a/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/A_JacksonMapperBenchmark.kt +++ b/workflow/benchmark/src/androidTest/java/com/google/android/fhir/workflow/benchmark/A_JacksonMapperBenchmark.kt @@ -1,5 +1,5 @@ /* - * Copyright 2022 Google LLC + * Copyright 2022-2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.google.android.fhir.benchmark +package com.google.android.fhir.workflow.benchmark import androidx.benchmark.junit4.BenchmarkRule import androidx.benchmark.junit4.measureRepeated diff --git a/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/B_FhirContextLoaderBenchmark.kt b/workflow/benchmark/src/androidTest/java/com/google/android/fhir/workflow/benchmark/B_FhirContextLoaderBenchmark.kt similarity index 96% rename from benchmark/src/androidTest/java/com/google/android/fhir/benchmark/B_FhirContextLoaderBenchmark.kt rename to workflow/benchmark/src/androidTest/java/com/google/android/fhir/workflow/benchmark/B_FhirContextLoaderBenchmark.kt index 2662d260a9..0eb0259d5d 100644 --- a/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/B_FhirContextLoaderBenchmark.kt +++ b/workflow/benchmark/src/androidTest/java/com/google/android/fhir/workflow/benchmark/B_FhirContextLoaderBenchmark.kt @@ -1,5 +1,5 @@ /* - * Copyright 2022 Google LLC + * Copyright 2022-2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.google.android.fhir.benchmark +package com.google.android.fhir.workflow.benchmark import androidx.benchmark.junit4.BenchmarkRule import androidx.benchmark.junit4.measureRepeated diff --git a/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/C_CqlEngineFhirContextLoaderBenchmark.kt b/workflow/benchmark/src/androidTest/java/com/google/android/fhir/workflow/benchmark/C_CqlEngineFhirContextLoaderBenchmark.kt similarity index 95% rename from benchmark/src/androidTest/java/com/google/android/fhir/benchmark/C_CqlEngineFhirContextLoaderBenchmark.kt rename to workflow/benchmark/src/androidTest/java/com/google/android/fhir/workflow/benchmark/C_CqlEngineFhirContextLoaderBenchmark.kt index f63e346187..35c9965318 100644 --- a/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/C_CqlEngineFhirContextLoaderBenchmark.kt +++ b/workflow/benchmark/src/androidTest/java/com/google/android/fhir/workflow/benchmark/C_CqlEngineFhirContextLoaderBenchmark.kt @@ -1,5 +1,5 @@ /* - * Copyright 2022 Google LLC + * Copyright 2022-2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.google.android.fhir.benchmark +package com.google.android.fhir.workflow.benchmark import androidx.benchmark.junit4.BenchmarkRule import androidx.benchmark.junit4.measureRepeated diff --git a/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/D_FhirJsonParserBenchmark.kt b/workflow/benchmark/src/androidTest/java/com/google/android/fhir/workflow/benchmark/D_FhirJsonParserBenchmark.kt similarity index 97% rename from benchmark/src/androidTest/java/com/google/android/fhir/benchmark/D_FhirJsonParserBenchmark.kt rename to workflow/benchmark/src/androidTest/java/com/google/android/fhir/workflow/benchmark/D_FhirJsonParserBenchmark.kt index 55b3cfec41..23657483fc 100644 --- a/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/D_FhirJsonParserBenchmark.kt +++ b/workflow/benchmark/src/androidTest/java/com/google/android/fhir/workflow/benchmark/D_FhirJsonParserBenchmark.kt @@ -1,5 +1,5 @@ /* - * Copyright 2022 Google LLC + * Copyright 2022-2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.google.android.fhir.benchmark +package com.google.android.fhir.workflow.benchmark import androidx.benchmark.junit4.BenchmarkRule import androidx.benchmark.junit4.measureRepeated diff --git a/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/E_ElmJsonLibraryLoaderBenchmark.kt b/workflow/benchmark/src/androidTest/java/com/google/android/fhir/workflow/benchmark/E_ElmJsonLibraryLoaderBenchmark.kt similarity index 96% rename from benchmark/src/androidTest/java/com/google/android/fhir/benchmark/E_ElmJsonLibraryLoaderBenchmark.kt rename to workflow/benchmark/src/androidTest/java/com/google/android/fhir/workflow/benchmark/E_ElmJsonLibraryLoaderBenchmark.kt index d69265aa36..8c95c68d70 100644 --- a/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/E_ElmJsonLibraryLoaderBenchmark.kt +++ b/workflow/benchmark/src/androidTest/java/com/google/android/fhir/workflow/benchmark/E_ElmJsonLibraryLoaderBenchmark.kt @@ -1,5 +1,5 @@ /* - * Copyright 2022 Google LLC + * Copyright 2022-2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.google.android.fhir.benchmark +package com.google.android.fhir.workflow.benchmark import androidx.benchmark.junit4.BenchmarkRule import androidx.benchmark.junit4.measureRepeated diff --git a/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/G_CqlEvaluatorBenchmark.kt b/workflow/benchmark/src/androidTest/java/com/google/android/fhir/workflow/benchmark/F_CqlEvaluatorBenchmark.kt similarity index 96% rename from benchmark/src/androidTest/java/com/google/android/fhir/benchmark/G_CqlEvaluatorBenchmark.kt rename to workflow/benchmark/src/androidTest/java/com/google/android/fhir/workflow/benchmark/F_CqlEvaluatorBenchmark.kt index e38dd7dc6d..c1e0265cf6 100644 --- a/benchmark/src/androidTest/java/com/google/android/fhir/benchmark/G_CqlEvaluatorBenchmark.kt +++ b/workflow/benchmark/src/androidTest/java/com/google/android/fhir/workflow/benchmark/F_CqlEvaluatorBenchmark.kt @@ -1,5 +1,5 @@ /* - * Copyright 2022 Google LLC + * Copyright 2022-2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.google.android.fhir.benchmark +package com.google.android.fhir.workflow.benchmark import android.content.Context import androidx.benchmark.junit4.BenchmarkRule @@ -41,7 +41,7 @@ import org.junit.Test import org.junit.runner.RunWith @RunWith(AndroidJUnit4::class) -class G_CqlEvaluatorBenchmark { +class F_CqlEvaluatorBenchmark { @get:Rule val benchmarkRule = BenchmarkRule() diff --git a/workflow/benchmark/src/main/AndroidManifest.xml b/workflow/benchmark/src/main/AndroidManifest.xml new file mode 100644 index 0000000000..fc20db30a7 --- /dev/null +++ b/workflow/benchmark/src/main/AndroidManifest.xml @@ -0,0 +1,2 @@ + +