terraform-provider-docker/docker/provider_test.go
Suzuki Shunsuke f213e3a348 style: format with gofumpt
https://github.com/mvdan/gofumpt

```
$ gofumpt -l -s -w docker/*
```
2020-12-12 19:26:11 +09:00

81 lines
1.8 KiB
Go

package docker
import (
"os/exec"
"regexp"
"testing"
"github.com/hashicorp/terraform-plugin-sdk/helper/resource"
"github.com/hashicorp/terraform-plugin-sdk/helper/schema"
"github.com/hashicorp/terraform-plugin-sdk/terraform"
)
var (
testAccProviders map[string]terraform.ResourceProvider
testAccProvider *schema.Provider
)
func init() {
testAccProvider = Provider().(*schema.Provider)
testAccProviders = map[string]terraform.ResourceProvider{
"docker": testAccProvider,
}
}
func TestProvider(t *testing.T) {
if err := Provider().(*schema.Provider).InternalValidate(); err != nil {
t.Fatalf("err: %s", err)
}
}
func TestAccDockerProvider_WithIncompleteRegistryAuth(t *testing.T) {
resource.Test(t, resource.TestCase{
PreCheck: func() { testAccPreCheck(t) },
Providers: testAccProviders,
Steps: []resource.TestStep{
{
Config: testAccDockerProviderWithIncompleteAuthConfig,
ExpectError: regexp.MustCompile(`401 Unauthorized`),
},
},
})
}
func TestProvider_impl(t *testing.T) {
var _ terraform.ResourceProvider = Provider()
}
func testAccPreCheck(t *testing.T) {
cmd := exec.Command("docker", "version")
if err := cmd.Run(); err != nil {
t.Fatalf("Docker must be available: %s", err)
}
cmd = exec.Command("docker", "node", "ls")
if err := cmd.Run(); err != nil {
cmd = exec.Command("docker", "swarm", "init")
if err := cmd.Run(); err != nil {
t.Fatalf("Docker swarm could not be initialized: %s", err)
}
}
err := testAccProvider.Configure(terraform.NewResourceConfigRaw(nil))
if err != nil {
t.Fatal(err)
}
}
const testAccDockerProviderWithIncompleteAuthConfig = `
provider "docker" {
alias = "private"
registry_auth {
address = ""
username = ""
password = ""
}
}
data "docker_registry_image" "foobar" {
provider = "docker.private"
name = "localhost:15000/helloworld:1.0"
}
`