summaryrefslogtreecommitdiff
path: root/profgen/profgen-cli/src/test/kotlin/WildCardsCommandTest.kt
diff options
context:
space:
mode:
Diffstat (limited to 'profgen/profgen-cli/src/test/kotlin/WildCardsCommandTest.kt')
-rw-r--r--profgen/profgen-cli/src/test/kotlin/WildCardsCommandTest.kt57
1 files changed, 57 insertions, 0 deletions
diff --git a/profgen/profgen-cli/src/test/kotlin/WildCardsCommandTest.kt b/profgen/profgen-cli/src/test/kotlin/WildCardsCommandTest.kt
new file mode 100644
index 0000000000..1f28caea2f
--- /dev/null
+++ b/profgen/profgen-cli/src/test/kotlin/WildCardsCommandTest.kt
@@ -0,0 +1,57 @@
+/*
+ * Copyright (C) 2023 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.tools.profgen.cli
+
+import com.google.common.truth.Truth.assertThat
+import kotlinx.cli.ExperimentalCli
+import org.junit.Test
+import kotlin.io.path.createTempFile
+
+@ExperimentalCli
+class WildCardsCommandTest {
+
+ @Test
+ fun expandWildCardsTest() {
+ val command = ExpandWildcardsCommand()
+ val profile = createTempFile(suffix = ".txt").toFile()
+ profile.writeText("L*;")
+ val output = createTempFile(suffix = ".txt").toFile()
+ command.parse(
+ arrayOf(
+ "--profile", profile.toString(),
+ "--output", output.toString(),
+ getClassFileArgument(),
+ testData(JarArchivePath).toString()))
+ command.execute()
+ assertThat(output.readText()).isEqualTo(
+ """
+ LHello;
+ LWorld;
+ """.trimIndent().plus('\n')
+ )
+ }
+ internal fun getClassFileArgument(): String {
+ val sourceDir = testDataPath()
+ return "$sourceDir:$ClassFilePath"
+ }
+
+ companion object {
+
+ private const val ClassFilePath = "Hello.class"
+ private const val JarArchivePath = "world.jar"
+ }
+}