Skip to content

Commit d079189

Browse files
committed
fix tests
1 parent 56f2c88 commit d079189

File tree

3 files changed

+34
-34
lines changed

3 files changed

+34
-34
lines changed

example/main.tf

+17-17
Original file line numberDiff line numberDiff line change
@@ -38,20 +38,20 @@ resource "pomerium_route" "test_route" {
3838
policies = [pomerium_policy.test_policy.id]
3939
}
4040

41-
# Data source examples
42-
data "pomerium_namespace" "existing_namespace" {
43-
id = "9d8dbd2c-8cce-4e66-9c1f-c490b4a07243"
44-
}
45-
46-
data "pomerium_route" "existing_route" {
47-
id = pomerium_route.test_route.id
48-
}
49-
50-
# Output examples
51-
output "namespace_name" {
52-
value = data.pomerium_namespace.existing_namespace.name
53-
}
54-
55-
output "route_from" {
56-
value = data.pomerium_route.existing_route.from
57-
}
41+
# # Data source examples
42+
# data "pomerium_namespace" "existing_namespace" {
43+
# id = "9d8dbd2c-8cce-4e66-9c1f-c490b4a07243"
44+
# }
45+
46+
# data "pomerium_route" "existing_route" {
47+
# id = pomerium_route.test_route.id
48+
# }
49+
50+
# # Output examples
51+
# output "namespace_name" {
52+
# value = data.pomerium_namespace.existing_namespace.name
53+
# }
54+
55+
# output "route_from" {
56+
# value = data.pomerium_route.existing_route.from
57+
# }

internal/provider/policy_types.go

+1-7
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ func (p PolicyLanguageType) Equal(o attr.Type) bool {
4242

4343
func (PolicyLanguageType) Parse(src basetypes.StringValue) (PolicyLanguage, error) {
4444
if src.IsNull() {
45-
return NewPolicyLanguageJSON("[]"), nil
45+
return PolicyLanguage{}, nil
4646
}
4747

4848
ppl, err := parser.New().ParseYAML(strings.NewReader(src.ValueString()))
@@ -100,12 +100,6 @@ type PolicyLanguage struct {
100100
PolicyJSON json.RawMessage
101101
}
102102

103-
func NewPolicyLanguageJSON(s string) PolicyLanguage {
104-
return PolicyLanguage{
105-
StringValue: basetypes.NewStringValue(s),
106-
}
107-
}
108-
109103
func (p PolicyLanguage) Type(context.Context) attr.Type {
110104
return PolicyLanguageType{}
111105
}

internal/provider/policy_types_test.go

+16-10
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import (
55
_ "embed"
66
"testing"
77

8-
"github.com/hashicorp/terraform-plugin-framework/attr"
8+
"github.com/hashicorp/terraform-plugin-framework/types/basetypes"
99
"github.com/hashicorp/terraform-plugin-go/tftypes"
1010
"github.com/pomerium/enterprise-terraform-provider/internal/provider"
1111
"github.com/stretchr/testify/assert"
@@ -18,33 +18,39 @@ var pplObjectOK string
1818
func TestPolicyTypes(t *testing.T) {
1919
t.Parallel()
2020

21+
jsonPPL := func(json string) provider.PolicyLanguage {
22+
ppl, err := provider.PolicyLanguageType{}.Parse(basetypes.NewStringValue(json))
23+
require.NoError(t, err)
24+
return ppl
25+
}
26+
2127
testCases := map[string]struct {
2228
in tftypes.Value
23-
expected attr.Value
29+
expected provider.PolicyLanguage
2430
expectedErr error
2531
}{
2632
"object-ok": {
2733
in: tftypes.NewValue(tftypes.String, pplObjectOK),
28-
expected: provider.NewPolicyLanguageJSON(`[{"allow":{"and":[{"accept":true}]}}]`),
34+
expected: jsonPPL(`[{"allow":{"and":[{"accept":true}]}}]`),
2935
},
3036
"null": {
3137
in: tftypes.NewValue(tftypes.String, nil),
32-
expected: provider.NewPolicyLanguageJSON(`[]`),
38+
expected: provider.PolicyLanguage{},
3339
},
3440
}
3541
for name, testCase := range testCases {
3642
t.Run(name, func(t *testing.T) {
37-
p := provider.PolicyLanguageType{}
38-
got, err := p.ValueFromTerraform(context.Background(), testCase.in)
43+
gotValue, err := provider.PolicyLanguageType{}.ValueFromTerraform(context.Background(), testCase.in)
3944
if testCase.expectedErr != nil {
4045
require.EqualError(t, err, testCase.expectedErr.Error())
4146
return
4247
}
48+
got, ok := gotValue.(provider.PolicyLanguage)
49+
require.True(t, ok)
4350
require.NoError(t, err)
44-
if !assert.True(t, testCase.expected.Equal(got), got) {
45-
t.Logf("-: %s", testCase.expected)
46-
t.Logf("+: %s", got)
47-
}
51+
equals, diag := testCase.expected.StringSemanticEquals(context.Background(), got)
52+
assert.False(t, diag.HasError())
53+
assert.True(t, equals)
4854
})
4955
}
5056
}

0 commit comments

Comments
 (0)