Skip to content

Commit 0aa8db5

Browse files
committed
fix: Use rust binaries provider when running cargo test
1 parent e6f2597 commit 0aa8db5

File tree

2 files changed

+7
-1
lines changed

2 files changed

+7
-1
lines changed

src/main/kotlin/dev/matrix/agp/rust/AndroidRustPlugin.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ abstract class AndroidRustPlugin @Inject constructor(
5757
true -> {
5858
val testTaskName = "test${moduleNameCap}Rust"
5959
project.tasks.register(testTaskName, RustTestTask::class.java) {
60+
this.rustBinaries.set(rustBinaries)
6061
this.rustProjectDirectory.set(module.path)
6162
this.cargoTargetDirectory.set(moduleBuildDirectory)
6263
}.dependsOn(cleanTask)

src/main/kotlin/dev/matrix/agp/rust/RustTestTask.kt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package dev.matrix.agp.rust
22

3+
import dev.matrix.agp.rust.utils.RustBinaries
34
import org.gradle.api.DefaultTask
45
import org.gradle.api.provider.Property
56
import org.gradle.api.tasks.Input
@@ -12,6 +13,9 @@ internal abstract class RustTestTask : DefaultTask() {
1213
@get:Inject
1314
abstract val execOperations: ExecOperations
1415

16+
@get:Input
17+
abstract val rustBinaries: Property<RustBinaries>
18+
1519
@get:Input
1620
abstract val rustProjectDirectory: Property<File>
1721

@@ -20,6 +24,7 @@ internal abstract class RustTestTask : DefaultTask() {
2024

2125
@TaskAction
2226
fun taskAction() {
27+
val rustBinaries = rustBinaries.get()
2328
val rustProjectDirectory = rustProjectDirectory.get()
2429
val cargoTargetDirectory = cargoTargetDirectory.get()
2530

@@ -30,7 +35,7 @@ internal abstract class RustTestTask : DefaultTask() {
3035

3136
environment("CARGO_TARGET_DIR", cargoTargetDirectory.absolutePath)
3237

33-
commandLine("cargo")
38+
commandLine(rustBinaries.cargo)
3439

3540
args("test")
3641
}.assertNormalExitValue()

0 commit comments

Comments
 (0)