github.com/pulumi/terraform@v1.4.0/pkg/backend/init/init_test.go (about) 1 package init 2 3 import ( 4 "reflect" 5 "testing" 6 ) 7 8 func TestInit_backend(t *testing.T) { 9 // Initialize the backends map 10 Init(nil) 11 12 backends := []struct { 13 Name string 14 Type string 15 }{ 16 {"local", "*local.Local"}, 17 {"remote", "*remote.Remote"}, 18 {"azurerm", "*azure.Backend"}, 19 {"consul", "*consul.Backend"}, 20 {"cos", "*cos.Backend"}, 21 {"gcs", "*gcs.Backend"}, 22 {"inmem", "*inmem.Backend"}, 23 {"pg", "*pg.Backend"}, 24 {"s3", "*s3.Backend"}, 25 } 26 27 // Make sure we get the requested backend 28 for _, b := range backends { 29 t.Run(b.Name, func(t *testing.T) { 30 f := Backend(b.Name) 31 if f == nil { 32 t.Fatalf("backend %q is not present; should be", b.Name) 33 } 34 bType := reflect.TypeOf(f()).String() 35 if bType != b.Type { 36 t.Fatalf("expected backend %q to be %q, got: %q", b.Name, b.Type, bType) 37 } 38 }) 39 } 40 }