From 89d8a13d10368d562b692c2230bd8860b82e4ed2 Mon Sep 17 00:00:00 2001 From: Eric Anderson Date: Fri, 23 Feb 2024 11:33:46 -0800 Subject: [PATCH] compiler: Support up-to-date checking in golden tests --- compiler/build.gradle | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/compiler/build.gradle b/compiler/build.gradle index df7540f322..8bed90b867 100644 --- a/compiler/build.gradle +++ b/compiler/build.gradle @@ -284,17 +284,20 @@ publishing { } def configureTestTask(Task task, String dep, String serviceName) { + def genDir = files(tasks.named("generateTest${dep}Proto")).singleFile + def genFile = "${genDir}/grpc/io/grpc/testing/compiler/${serviceName}Grpc.java" task.dependsOn "generateTest${dep}Proto" + task.inputs.file genFile if (osdetector.os != 'windows') { task.executable "diff" task.args "-u" } else { task.executable "fc" } - // File isn't found on Windows if last slash is forward-slash - def slash = System.getProperty("file.separator") - task.args "$buildDir/generated/source/proto/test${dep}/grpc/io/grpc/testing/compiler${slash}${serviceName}Grpc.java", - "$projectDir/src/test${dep}/golden/${serviceName}.java.txt" + task.args layout.projectDirectory.file("src/test${dep}/golden/${serviceName}.java.txt") + task.args genFile + // Register an output to allow up-to-date checking + task.outputs.file(layout.buildDirectory.file(task.name)) } def testGolden = tasks.register("testGolden", Exec) {