From a8b7adbe4c7da68ec12eff8242bbf707bc3dd5f6 Mon Sep 17 00:00:00 2001 From: Lvbo163 Date: Wed, 7 Mar 2018 09:07:38 +0800 Subject: add ut for getMsbUrl add ut for the method which get url from start variable Issue-ID: MSB-163 Change-Id: I50e6e01225b532b74b6b7766e8c9da7b9a6e5c9d Signed-off-by: Lvbo163 --- src/kube2msb/kube2msb_test.go | 63 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 src/kube2msb/kube2msb_test.go (limited to 'src') diff --git a/src/kube2msb/kube2msb_test.go b/src/kube2msb/kube2msb_test.go new file mode 100644 index 0000000..3a4e3d9 --- /dev/null +++ b/src/kube2msb/kube2msb_test.go @@ -0,0 +1,63 @@ +/* +Copyright 2018 ZTE, Inc. and others. + +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 main + +import ( + "os" + "testing" +) + +func urlFormateValidate(t *testing.T, method string) { + cases := []struct{ in, want string }{ + {"", ""}, // nil + {"urlFormatError", ""}, // error + {"exmaple.com/", ""}, // Scheme == "" + {"http://", ""}, // Host == "" + {"http://:/", ""}, // Host == ":" + {"http://:/msb", ""}, // Host == ":" + {"http://192.168.1.100:8080/$var1", "http://192.168.1.100:8080/value1"}, // os.env + {"http://192.168.1.100:8080/$var1/$var2", "http://192.168.1.100:8080/value1/value2"}, // + {"http://192.168.1.100:8080/$var1/$var1", "http://192.168.1.100:8080/value1/value1"}, // + {"http://192.168.1.100:8080/$var1", "http://192.168.1.100:8080/value1"}, // + {"http://192.168.1.100:8080/msb", "http://192.168.1.100:8080/msb"}, // + {"http://192.168.1.100/msb", "http://192.168.1.100/msb"}, // + {"http://192.168.1.100/", "http://192.168.1.100/"}, // + {"postgres://user:pass@host.com:5432/path?k=v#f", "postgres://user:pass@host.com:5432/path?k=v#f"}, + } + + // set os env + os.Setenv("var1", "value1") + os.Setenv("var2", "value2") + os.Setenv("var3", "value3") + + for _, c := range cases { + var got string + if method == "getMSBUrl" { + argMSBUrl = &c.in + got, _ = getMSBUrl() + } else { + argKubeMasterUrl = &c.in + got, _ = getKubeMasterUrl() + } + + if got != c.want { + t.Errorf("getMSBUrl() arg %s, want %s, got %s", c.in, c.want, got) + } + } +} +func TestGetMSBUrl(t *testing.T) { + urlFormateValidate(t, "getMSBUrl") +} -- cgit 1.2.3-korg