Skip to content

Latest commit

 

History

History
46 lines (35 loc) · 2.01 KB

README.md

File metadata and controls

46 lines (35 loc) · 2.01 KB

atrium-gradle-testkit CI Status Maven Central

Atrium assertions to test Gradle plugins with TestKit.

👉 Documentation of all assertions

Example

Here is how you can use this library to test Gradle plugins. The example uses Spek with spek-testfiles. You can see the whole example in the example-project folder.

object KotlinPluginSpek: Spek({
	val testFiles = testFiles()
	val projectDir by memoized(SCOPE) { testFiles.createDirectory("testProject") }

	describe("run") {
		it("compiles the Kotlin code and runs it") {
			val runResult = GradleRunner.create()
				.forwardOutput()
				.withProjectDir(projectDir.toFile())
				.withArguments("run")
				.build()

			expect(runResult) {
				task(":compileKotlin").wasSuccessful()
				task(":classes").wasInvoked()
				output.contains("Hello World!")
			}
		}
	}

	beforeGroup {
		/* set up the gradle project */
	}
})

All contributions (no matter if small) are always welcome.

Applying the YAGNI principle, this library only provides the functionality that was needed by someone. If you have any idea for how this library could be more useful, please create an issue! Ideas for improvements are always welcome.