mirror of
https://github.com/kubernetes-sigs/kustomize.git
synced 2026-05-21 06:21:43 +00:00
60 lines
1.3 KiB
Go
60 lines
1.3 KiB
Go
// 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")
|
|
}
|