aboutsummaryrefslogtreecommitdiffstats
path: root/src/kube2msb
diff options
context:
space:
mode:
authorLvbo163 <lv.bo163@zte.com.cn>2018-03-06 09:54:45 +0800
committerLvbo163 <lv.bo163@zte.com.cn>2018-03-06 09:54:45 +0800
commit778089700e2bcd51877b8793f86b7589bad5da4e (patch)
tree778f7d74439bf25388466344062e7f8ee907ab5e /src/kube2msb
parent442a06a8f7c9bbc5f3aa40afe4298be709af94e6 (diff)
add ut for removeService of msb
Issue-ID: MSB-175 Change-Id: I47e35398c8e395f8db36b93301bf6f3cf958aa6c Signed-off-by: Lvbo163 <lv.bo163@zte.com.cn>
Diffstat (limited to 'src/kube2msb')
-rw-r--r--src/kube2msb/msb_work_test.go68
1 files changed, 68 insertions, 0 deletions
diff --git a/src/kube2msb/msb_work_test.go b/src/kube2msb/msb_work_test.go
index b5ba681..c3602a1 100644
--- a/src/kube2msb/msb_work_test.go
+++ b/src/kube2msb/msb_work_test.go
@@ -84,6 +84,74 @@ func TestAddPodMsb(t *testing.T) {
addServiceOrPodTest(t, "Pod")
}
+func removeServiceOrPodTest(t *testing.T, removeType string) {
+ cases := []struct{ url, ip, serviceInfo string }{
+ { // Version is ""
+ urlPrefix + "/resgisterTest1/version/null/nodes/192.168.1.10/8080",
+ "192.168.1.10",
+ `[{
+ "port":"8080",
+ "serviceName":"resgisterTest1",
+ "version":"",
+ "url":"/register/test",
+ "protocol":"http",
+ "lb_policy":"random",
+ "visualRange":"1",
+ "path":"rt",
+ "enable_ssl":true
+ }]`,
+ }, { // version is not ""
+ urlPrefix + "/resgisterTest2/version/v1/nodes/192.168.1.10/8080",
+ "192.168.1.10",
+ `[{
+ "port":"8080",
+ "serviceName":"resgisterTest2",
+ "version":"v1",
+ "url":"/register/test",
+ "protocol":"http",
+ "lb_policy":"random",
+ "visualRange":"1",
+ "path":"rt",
+ "enable_ssl":true
+ }]`,
+ },
+ }
+
+ for _, c := range cases {
+ handler := func(res http.ResponseWriter, req *http.Request) {
+ if req.Method != "DELETE" {
+ t.Errorf("DeRegister() request method should be 'DELETE' not %s", req.Method)
+ } else if c.url != req.URL.String() {
+ t.Errorf("DeRegister() url should be %s, not %s", c.url, req.URL)
+ } else {
+ res.WriteHeader(200)
+ res.Header().Set("Content-Type", "application/xml")
+ fmt.Fprintln(res, "deregist success")
+ }
+
+ }
+ server := httptest.NewServer(http.HandlerFunc(handler))
+ defer server.Close()
+
+ client := MSBAgentWorker{
+ agent: &MSBAgent{
+ url: server.URL,
+ },
+ }
+
+ if removeType == "Service" {
+ client.RemoveService(c.ip, c.serviceInfo)
+ } else if removeType == "Pod" {
+ client.RemovePod(c.ip, c.serviceInfo)
+ }
+ }
+
+}
+
+func TestRemoveServiceMsb(t *testing.T) {
+ removeServiceOrPodTest(t, "Service")
+}
+
func TestMergeIP(t *testing.T) {
cases := []struct{ ip, sInfo, want string }{
{"127.0.0.1", "{}", "{\"ip\":\"127.0.0.1\",}"},