Merge pull request #110548 from benluddy/cel-unstructuredtoval-benchmark-fixture

Do test fixture setup outside cel.UnstructuredToVal benchmark loop.
This commit is contained in:
Kubernetes Prow Robot 2022-06-29 03:36:05 -07:00 committed by GitHub
commit d0f5496d53
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -621,44 +621,48 @@ func TestMapper(t *testing.T) {
}
func BenchmarkUnstructuredToVal(b *testing.B) {
u := []interface{}{
map[string]interface{}{
"key": "a",
"val": 1,
},
map[string]interface{}{
"key": "b",
"val": 2,
},
map[string]interface{}{
"key": "@b",
"val": 2,
},
}
b.ReportAllocs()
b.ResetTimer()
for n := 0; n < b.N; n++ {
if val := UnstructuredToVal([]interface{}{
map[string]interface{}{
"key": "a",
"val": 1,
},
map[string]interface{}{
"key": "b",
"val": 2,
},
map[string]interface{}{
"key": "@b",
"val": 2,
},
}, &mapListSchema); val == nil {
if val := UnstructuredToVal(u, &mapListSchema); val == nil {
b.Fatal(val)
}
}
}
func BenchmarkUnstructuredToValWithEscape(b *testing.B) {
u := []interface{}{
map[string]interface{}{
"key": "a.1",
"val": "__i.1",
},
map[string]interface{}{
"key": "b.1",
"val": 2,
},
}
b.ReportAllocs()
b.ResetTimer()
for n := 0; n < b.N; n++ {
if val := UnstructuredToVal([]interface{}{
map[string]interface{}{
"key": "a.1",
"val": "__i.1",
},
map[string]interface{}{
"key": "b.1",
"val": 2,
},
}, &mapListSchema); val == nil {
if val := UnstructuredToVal(u, &mapListSchema); val == nil {
b.Fatal(val)
}
}