mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-04 09:49:50 +00:00
Increase coverage in pkg/util/strings to 100%
This commit is contained in:
parent
9ba5f5869d
commit
2076071bbf
63
pkg/util/strings/escape_test.go
Normal file
63
pkg/util/strings/escape_test.go
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes Authors.
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package strings
|
||||||
|
|
||||||
|
import (
|
||||||
|
"testing"
|
||||||
|
)
|
||||||
|
|
||||||
|
func TestEscapePluginName(t *testing.T) {
|
||||||
|
testCases := []struct {
|
||||||
|
input string
|
||||||
|
output string
|
||||||
|
}{
|
||||||
|
{"kubernetes.io/blah", "kubernetes.io~blah"},
|
||||||
|
{"blah/blerg/borg", "blah~blerg~borg"},
|
||||||
|
{"kubernetes.io", "kubernetes.io"},
|
||||||
|
}
|
||||||
|
for i, tc := range testCases {
|
||||||
|
escapee := EscapePluginName(tc.input)
|
||||||
|
if escapee != tc.output {
|
||||||
|
t.Errorf("case[%d]: expected (%q), got (%q)", i, tc.output, escapee)
|
||||||
|
}
|
||||||
|
original := UnescapePluginName(escapee)
|
||||||
|
if original != tc.input {
|
||||||
|
t.Errorf("case[%d]: expected (%q), got (%q)", i, tc.input, original)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestEscapeQualifiedNameForDisk(t *testing.T) {
|
||||||
|
testCases := []struct {
|
||||||
|
input string
|
||||||
|
output string
|
||||||
|
}{
|
||||||
|
{"kubernetes.io/blah", "kubernetes.io~blah"},
|
||||||
|
{"blah/blerg/borg", "blah~blerg~borg"},
|
||||||
|
{"kubernetes.io", "kubernetes.io"},
|
||||||
|
}
|
||||||
|
for i, tc := range testCases {
|
||||||
|
escapee := EscapeQualifiedNameForDisk(tc.input)
|
||||||
|
if escapee != tc.output {
|
||||||
|
t.Errorf("case[%d]: expected (%q), got (%q)", i, tc.output, escapee)
|
||||||
|
}
|
||||||
|
original := UnescapeQualifiedNameForDisk(escapee)
|
||||||
|
if original != tc.input {
|
||||||
|
t.Errorf("case[%d]: expected (%q), got (%q)", i, tc.input, original)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -36,6 +36,7 @@ func TestSplitQualifiedName(t *testing.T) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestJoinQualifiedName(t *testing.T) {
|
func TestJoinQualifiedName(t *testing.T) {
|
||||||
testCases := []struct {
|
testCases := []struct {
|
||||||
input []string
|
input []string
|
||||||
@ -52,3 +53,21 @@ func TestJoinQualifiedName(t *testing.T) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestShortenString(t *testing.T) {
|
||||||
|
testCases := []struct {
|
||||||
|
input string
|
||||||
|
out_len int
|
||||||
|
output string
|
||||||
|
}{
|
||||||
|
{"kubernetes.io", 5, "kuber"},
|
||||||
|
{"blah", 34, "blah"},
|
||||||
|
{"kubernetes.io", 13, "kubernetes.io"},
|
||||||
|
}
|
||||||
|
for i, tc := range testCases {
|
||||||
|
res := ShortenString(tc.input, tc.out_len)
|
||||||
|
if res != tc.output {
|
||||||
|
t.Errorf("case[%d]: expected %q, got %q", i, tc.output, res)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user