Skip to content

Commit

Permalink
unit test resources in new fw
Browse files Browse the repository at this point in the history
  • Loading branch information
lantoli committed Nov 21, 2023
1 parent 0832490 commit 862a0ff
Showing 1 changed file with 42 additions and 0 deletions.
42 changes: 42 additions & 0 deletions mongodbatlas/fw_provider_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
package mongodbatlas

import (
"context"
"testing"

"github.com/hashicorp/terraform-plugin-framework/provider"
"github.com/hashicorp/terraform-plugin-framework/resource"
)

func TestResourceSchemas(t *testing.T) {
t.Parallel()
ctxProvider := context.Background()
prov := NewFrameworkProvider()
var provReq provider.MetadataRequest
var provRes provider.MetadataResponse
prov.Metadata(ctxProvider, provReq, &provRes)
for _, fn := range prov.Resources(ctxProvider) {
ctx := context.Background()
res := fn()
metadataReq := resource.MetadataRequest{
ProviderTypeName: provRes.TypeName,
}
var metadataRes resource.MetadataResponse
res.Metadata(ctx, metadataReq, &metadataRes)

t.Run(metadataRes.TypeName, func(t *testing.T) {
schemaRequest := resource.SchemaRequest{}
schemaResponse := &resource.SchemaResponse{}

res.Schema(ctx, schemaRequest, schemaResponse)

if schemaResponse.Diagnostics.HasError() {
t.Fatalf("Schema method diagnostics: %+v", schemaResponse.Diagnostics)
}

if diagnostics := schemaResponse.Schema.ValidateImplementation(ctx); diagnostics.HasError() {
t.Fatalf("Schema validation diagnostics: %+v", diagnostics)
}
})
}
}

0 comments on commit 862a0ff

Please sign in to comment.