Unit Testing Pulumi Programs with Components in Go
An example that applies unit testing to Go and component resources.
This example lives in the pulumi/examples repository. Check out just this directory to use it:
git clone --filter=blob:none --sparse https://github.com/pulumi/examples pulumi-examplesgit -C pulumi-examples sparse-checkout set testing-unit-go-componentscd pulumi-examples/testing-unit-go-componentsAn example of writing mock-based unit tests written in Go, involving Pulumi Components such as Helm Chart v4.
The program code to be tested (main.go:NewNginxComponent) consists of a code block that creates a Helm Chart resource, locates the Service resource that is created by the chart, and then extracts the assigned ingress IP for later use. The test program uses mocking to simulate the behavior of the Helm Chart resource.
Prerequisites#
Running the tests#
-
Run the tests:
$ go testPASSok testing-unit-go-components 0.400s
Further steps#
Learn more about testing Pulumi programs: