gpt4 book ai didi

gradle - Gradle插件测试UpToDateWhen方法

转载 作者:行者123 更新时间:2023-12-03 04:06:31 25 4
gpt4 key购买 nike

我正在编写一个gradle插件,该插件定义了upToDateWhen闭包以在满足某些条件时跳过任务。我在弄清楚如何用这种方法包装测试方面遇到麻烦。当前看起来像:

class MyCoolTask extends DefaultTask {

MyCoolTask() {
outputs.upToDateWhen {
if (somecondition)
return true
else
return false
}
}
}

我的测试如下所示:
class MyCoolTaskTest {

@Test
void testUpToDateCheck() {
project = ProjectBuilder.builder().build()
project.apply plugin: 'myCoolPlugin'

project.myCoolTask.execute()

// But then how do you do a subsequent run and ensure that the task did not execute?

project.myCoolTask.execute() // running this a second time does not work.

project.myCoolTask.outputs.upToDateWhen() // Throws a syntax error
}
}

可以提供的任何见解都很棒!谢谢!

最佳答案

ProjectBuilder适用于配置构建但不执行任何任务的低级测试。您可以将outputs.upToDateWhen { ... }的内容分解到方法/类中并进行测试,和/或编写使用Gradle工具API执行实际构建的验收测试。

关于gradle - Gradle插件测试UpToDateWhen方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17793354/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com