From 8683736030e00f69b3f839ff40ec18d9219e0758 Mon Sep 17 00:00:00 2001 From: Tahir Hajizada Date: Tue, 29 Oct 2019 14:29:33 +0100 Subject: [PATCH] Add cli command and tests for preserve-original-path --- .../src/main/kotlin/ftl/args/AndroidArgs.kt | 2 +- .../firebase/test/android/AndroidRunCommand.kt | 7 +++++++ .../test/kotlin/ftl/args/AndroidArgsTest.kt | 18 ++++++++++++++++++ .../test/android/AndroidRunCommandTest.kt | 9 +++++++++ 4 files changed, 35 insertions(+), 1 deletion(-) diff --git a/test_runner/src/main/kotlin/ftl/args/AndroidArgs.kt b/test_runner/src/main/kotlin/ftl/args/AndroidArgs.kt index 9aabdcc9e4..d09edbf69c 100644 --- a/test_runner/src/main/kotlin/ftl/args/AndroidArgs.kt +++ b/test_runner/src/main/kotlin/ftl/args/AndroidArgs.kt @@ -75,7 +75,7 @@ class AndroidArgs( private val androidFlank = androidFlankYml.flank val additionalAppTestApks = cli?.additionalAppTestApks ?: androidFlank.additionalAppTestApks - val preserveOriginalPath = androidFlank.preserveOriginalPath + val preserveOriginalPath = cli?.preserveOriginalPath ?: androidFlank.preserveOriginalPath init { resultsBucket = createGcsBucket(project, cli?.resultsBucket ?: gcloud.resultsBucket) diff --git a/test_runner/src/main/kotlin/ftl/cli/firebase/test/android/AndroidRunCommand.kt b/test_runner/src/main/kotlin/ftl/cli/firebase/test/android/AndroidRunCommand.kt index 8f0107e7b6..992d8c0f9f 100644 --- a/test_runner/src/main/kotlin/ftl/cli/firebase/test/android/AndroidRunCommand.kt +++ b/test_runner/src/main/kotlin/ftl/cli/firebase/test/android/AndroidRunCommand.kt @@ -357,4 +357,11 @@ class AndroidRunCommand : Runnable { } var additionalAppTestApks: MutableList? = null + + @Option( + names = ["--preserve-original-path"], + description = ["Downloaded files preserves the original path of file. " + + "Required when file names are not unique."] + ) + var preserveOriginalPath: Boolean? = null } diff --git a/test_runner/src/test/kotlin/ftl/args/AndroidArgsTest.kt b/test_runner/src/test/kotlin/ftl/args/AndroidArgsTest.kt index c97b005377..6dcfd83257 100644 --- a/test_runner/src/test/kotlin/ftl/args/AndroidArgsTest.kt +++ b/test_runner/src/test/kotlin/ftl/args/AndroidArgsTest.kt @@ -918,4 +918,22 @@ AndroidArgs assertThat(androidArgs.additionalAppTestApks).isEqualTo( listOf(AppTestPair("a", "b"))) } + + @Test + fun `cli preserve-original-path`() { + val cli = AndroidRunCommand() + CommandLine(cli).parseArgs("--preserve-original-path=true") + + val yaml = """ + gcloud: + app: $appApk + test: $testApk + flank: + preserve-original-path: false + """ + assertThat(AndroidArgs.load(yaml).preserveOriginalPath).isEqualTo(false) + + val androidArgs = AndroidArgs.load(yaml, cli) + assertThat(androidArgs.preserveOriginalPath).isEqualTo(true) + } } diff --git a/test_runner/src/test/kotlin/ftl/cli/firebase/test/android/AndroidRunCommandTest.kt b/test_runner/src/test/kotlin/ftl/cli/firebase/test/android/AndroidRunCommandTest.kt index 688fba05f5..c3ab61ec4b 100644 --- a/test_runner/src/test/kotlin/ftl/cli/firebase/test/android/AndroidRunCommandTest.kt +++ b/test_runner/src/test/kotlin/ftl/cli/firebase/test/android/AndroidRunCommandTest.kt @@ -95,6 +95,7 @@ class AndroidRunCommandTest { assertThat(cmd.smartFlankDisableUpload).isNull() assertThat(cmd.smartFlankGcsPath).isNull() assertThat(cmd.additionalAppTestApks).isNull() + assertThat(cmd.preserveOriginalPath).isNull() } @Test @@ -352,6 +353,14 @@ class AndroidRunCommandTest { assertThat(cmd.smartFlankGcsPath).isEqualTo("foo") } + @Test + fun `preserveOriginalPath parse`() { + val cmd = AndroidRunCommand() + CommandLine(cmd).parseArgs("--preserve-original-path=true") + + assertThat(cmd.preserveOriginalPath).isEqualTo(true) + } + @Test fun `additionalAppTestApks parse`() { val cmd = AndroidRunCommand()