mirror of
https://github.com/kubernetes-sigs/kustomize.git
synced 2026-07-17 01:39:06 +00:00
Library for computing status for Kubernetes resources
This commit is contained in:
59
kstatus/status/util_test.go
Normal file
59
kstatus/status/util_test.go
Normal file
@@ -0,0 +1,59 @@
|
||||
// Copyright 2019 The Kubernetes Authors.
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
package status
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
var testObj = map[string]interface{}{
|
||||
"f1": map[string]interface{}{
|
||||
"f2": map[string]interface{}{
|
||||
"i32": int32(32),
|
||||
"i64": int64(64),
|
||||
"float": 64.02,
|
||||
"ms": []interface{}{
|
||||
map[string]interface{}{"f1f2ms0f1": 22},
|
||||
map[string]interface{}{"f1f2ms1f1": "index1"},
|
||||
},
|
||||
"msbad": []interface{}{
|
||||
map[string]interface{}{"f1f2ms0f1": 22},
|
||||
32,
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
"ride": "dragon",
|
||||
|
||||
"status": map[string]interface{}{
|
||||
"conditions": []interface{}{
|
||||
map[string]interface{}{"f1f2ms0f1": 22},
|
||||
map[string]interface{}{"f1f2ms1f1": "index1"},
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
func TestGetIntField(t *testing.T) {
|
||||
v := GetIntField(testObj, ".f1.f2.i32", -1)
|
||||
assert.Equal(t, int(32), v)
|
||||
|
||||
v = GetIntField(testObj, ".f1.f2.wrongname", -1)
|
||||
assert.Equal(t, int(-1), v)
|
||||
|
||||
v = GetIntField(testObj, ".f1.f2.i64", -1)
|
||||
assert.Equal(t, int(64), v)
|
||||
|
||||
v = GetIntField(testObj, ".f1.f2.float", -1)
|
||||
assert.Equal(t, int(-1), v)
|
||||
}
|
||||
|
||||
func TestGetStringField(t *testing.T) {
|
||||
v := GetStringField(testObj, ".ride", "horse")
|
||||
assert.Equal(t, v, "dragon")
|
||||
|
||||
v = GetStringField(testObj, ".destination", "north")
|
||||
assert.Equal(t, v, "north")
|
||||
}
|
||||
Reference in New Issue
Block a user