Skip to content

Commit

Permalink
Add a unit test for field replacement for Event.type
Browse files Browse the repository at this point in the history
  • Loading branch information
ericpromislow committed Sep 11, 2024
1 parent 08e3738 commit 5e3de28
Showing 1 changed file with 81 additions and 1 deletion.
82 changes: 81 additions & 1 deletion pkg/resources/virtual/common/common_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -157,6 +157,79 @@ func TestTransform(t *testing.T) {
},
},
},
{
name: "fix event fields",
hasSummary: &summary.SummarizedObject{
PartialObjectMetadata: v1.PartialObjectMetadata{
ObjectMeta: v1.ObjectMeta{
Name: "testobj",
Namespace: "test-ns",
},
TypeMeta: v1.TypeMeta{
APIVersion: "test.cattle.io/v1",
Kind: "TestResource",
},
},
Summary: summary.Summary{
State: "success",
Transitioning: false,
Error: false,
Message: []string{"resource 1 rolled out", "resource 2 rolled out"},
},
},
hasRelationships: []summarycache.Relationship{
{
ToID: "1345",
ToType: "SomeType",
ToNamespace: "some-ns",
FromID: "78901",
FromType: "TestResource",
Rel: "uses",
},
},
input: &unstructured.Unstructured{
Object: map[string]interface{}{
"apiVersion": "/v1",
"kind": "Event",
"metadata": map[string]interface{}{
"name": "gregsFarm",
"namespace": "gregsNamespace",
},
"id": "eventTest1id",
"type": "Gorniplatz",
},
},
wantOutput: &unstructured.Unstructured{
Object: map[string]interface{}{
"apiVersion": "/v1",
"kind": "Event",
"metadata": map[string]interface{}{
"name": "gregsFarm",
"namespace": "gregsNamespace",
"state": map[string]interface{}{
"name": "success",
"error": false,
"transitioning": false,
"message": "resource 1 rolled out:resource 2 rolled out",
},
"relationships": []any{
map[string]any{
"toId": "1345",
"toType": "SomeType",
"toNamespace": "some-ns",
"fromId": "78901",
"fromType": "TestResource",
"rel": "uses",
},
},
},
"id": "gregsNamespace/gregsFarm",
"_id": "eventTest1id",
"type": "Gorniplatz",
"_type": "Gorniplatz",
},
},
},
}
for _, test := range tests {
t.Run(test.name, func(t *testing.T) {
Expand All @@ -167,7 +240,14 @@ func TestTransform(t *testing.T) {
df := common.DefaultFields{
Cache: &fakeCache,
}
output, err := df.GetTransform()(test.input)
var output interface{}
var err error
raw, ok := test.input.(*unstructured.Unstructured)
if ok && raw.GetKind() == "Event" {
output, err = df.GetEventTransform()(test.input)
} else {
output, err = df.GetTransform()(test.input)
}
require.Equal(t, test.wantOutput, output)
if test.wantError {
require.Error(t, err)
Expand Down

0 comments on commit 5e3de28

Please sign in to comment.