mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-23 11:50:44 +00:00
Merge pull request #111623 from muyangren2/addtest_flags
add test for GetNodeNameAndHostname
This commit is contained in:
commit
7bcd739851
@ -17,7 +17,9 @@ limitations under the License.
|
|||||||
package kubelet
|
package kubelet
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"os"
|
||||||
"reflect"
|
"reflect"
|
||||||
|
"strings"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
v1 "k8s.io/api/core/v1"
|
v1 "k8s.io/api/core/v1"
|
||||||
@ -100,3 +102,83 @@ func TestBuildKubeletArgMap(t *testing.T) {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestGetNodeNameAndHostname(t *testing.T) {
|
||||||
|
hostname, err := os.Hostname()
|
||||||
|
if err != nil {
|
||||||
|
t.Errorf("unexpected error: %v", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
testCases := []struct {
|
||||||
|
name string
|
||||||
|
opts kubeletFlagsOpts
|
||||||
|
expectedNodeName string
|
||||||
|
expectedHostName string
|
||||||
|
}{
|
||||||
|
{
|
||||||
|
name: "overridden hostname",
|
||||||
|
opts: kubeletFlagsOpts{
|
||||||
|
nodeRegOpts: &kubeadmapi.NodeRegistrationOptions{
|
||||||
|
KubeletExtraArgs: map[string]string{"hostname-override": "override-name"},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
expectedNodeName: "override-name",
|
||||||
|
expectedHostName: strings.ToLower(hostname),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "overridden hostname uppercase",
|
||||||
|
opts: kubeletFlagsOpts{
|
||||||
|
nodeRegOpts: &kubeadmapi.NodeRegistrationOptions{
|
||||||
|
KubeletExtraArgs: map[string]string{"hostname-override": "OVERRIDE-NAME"},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
expectedNodeName: "OVERRIDE-NAME",
|
||||||
|
expectedHostName: strings.ToLower(hostname),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "hostname contains only spaces",
|
||||||
|
opts: kubeletFlagsOpts{
|
||||||
|
nodeRegOpts: &kubeadmapi.NodeRegistrationOptions{
|
||||||
|
KubeletExtraArgs: map[string]string{"hostname-override": " "},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
expectedNodeName: " ",
|
||||||
|
expectedHostName: strings.ToLower(hostname),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "empty parameter",
|
||||||
|
opts: kubeletFlagsOpts{
|
||||||
|
nodeRegOpts: &kubeadmapi.NodeRegistrationOptions{
|
||||||
|
KubeletExtraArgs: map[string]string{"hostname-override": ""},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
expectedNodeName: "",
|
||||||
|
expectedHostName: strings.ToLower(hostname),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "nil parameter",
|
||||||
|
opts: kubeletFlagsOpts{
|
||||||
|
nodeRegOpts: &kubeadmapi.NodeRegistrationOptions{
|
||||||
|
KubeletExtraArgs: nil,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
expectedNodeName: strings.ToLower(hostname),
|
||||||
|
expectedHostName: strings.ToLower(hostname),
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
for _, tc := range testCases {
|
||||||
|
t.Run(tc.name, func(t *testing.T) {
|
||||||
|
nodeName, hostname, err := GetNodeNameAndHostname(tc.opts.nodeRegOpts)
|
||||||
|
if err != nil {
|
||||||
|
t.Errorf("unexpected error: %v", err)
|
||||||
|
}
|
||||||
|
if nodeName != tc.expectedNodeName {
|
||||||
|
t.Errorf("expected nodeName: %v, got %v", tc.expectedNodeName, nodeName)
|
||||||
|
}
|
||||||
|
if hostname != tc.expectedHostName {
|
||||||
|
t.Errorf("expected hostname: %v, got %v", tc.expectedHostName, hostname)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user