Skip to content

Commit

Permalink
refactor: remove PathOption and FileOption
Browse files Browse the repository at this point in the history
  • Loading branch information
Sculas committed Sep 9, 2022
1 parent ed18510 commit c348c1f
Show file tree
Hide file tree
Showing 3 changed files with 3 additions and 49 deletions.
34 changes: 0 additions & 34 deletions src/main/kotlin/app/revanced/patcher/patch/PatchOption.kt
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@

package app.revanced.patcher.patch

import java.io.File
import java.nio.file.Path
import kotlin.reflect.KProperty

class NoSuchOptionException(val option: String) : Exception("No such option: $option")
Expand Down Expand Up @@ -207,36 +205,4 @@ sealed class PatchOption<T>(
) : ListOption<Int>(
key, default, options, title, description, required, validator
)

/**
* A [PatchOption] representing a [Path].
* @see PatchOption
*/
open class PathOption(
key: String,
default: Path?,
title: String,
description: String,
required: Boolean = false,
validator: (Path?) -> Boolean = { true }
) : PatchOption<Path>(
key, default, title, description, required, validator
)

/**
* A [PathOption] of type [File].
* @see PathOption
*/
class FileOption(
key: String,
default: File?,
title: String,
description: String,
required: Boolean = false,
validator: (File?) -> Boolean = { true }
) : PathOption(
key, default?.toPath(), title, description, required, {
validator(it?.toFile())
}
)
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ package app.revanced.patcher.patch
import app.revanced.patcher.usage.bytecode.ExampleBytecodePatch
import org.junit.jupiter.api.Test
import org.junit.jupiter.api.assertThrows
import java.io.File
import kotlin.test.assertNotEquals

internal class PatchOptionsTest {
Expand Down Expand Up @@ -34,10 +33,6 @@ internal class PatchOptionsTest {
println(choice)
}
}

is PatchOption.PathOption -> {
option.value = File("test.txt").toPath()
}
}
}
val option = options["key1"]
Expand Down Expand Up @@ -94,7 +89,7 @@ internal class PatchOptionsTest {
@Test
fun `should fail because getting a non-initialized option is illegal`() {
assertThrows<RequirementNotMetException> {
println(options["key6"].value)
println(options["key5"].value)
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,6 @@ import org.jf.dexlib2.immutable.reference.ImmutableFieldReference
import org.jf.dexlib2.immutable.reference.ImmutableStringReference
import org.jf.dexlib2.immutable.value.ImmutableFieldEncodedValue
import org.jf.dexlib2.util.Preconditions
import java.io.File
import java.nio.file.Path

@Patch
@Name("example-bytecode-patch")
Expand Down Expand Up @@ -191,14 +189,9 @@ class ExampleBytecodePatch : BytecodePatch(listOf(ExampleFingerprint)) {
"key4", 1, listOf(1, 2, 3), "title", "description"
)
)
private var key5: Path? by option(
PatchOption.PathOption(
"key5", File("test.txt").toPath(), "title", "description"
)
)
private var key6: String? by option(
private var key5: String? by option(
PatchOption.StringOption(
"key6", null, "title", "description", true
"key5", null, "title", "description", true
)
)
}
Expand Down

0 comments on commit c348c1f

Please sign in to comment.