|
|
@@ -96,6 +96,31 @@ func TestSDWANAPIEndpoints(t *testing.T) {
|
|
|
t.Fatalf("POST /api/sdwan/groups/%s/members status = %d; body = %s", groupID, rec.Code, rec.Body.String())
|
|
|
}
|
|
|
|
|
|
+ // 4a. PUT /api/sdwan/groups/{id}/members (Update member via PUT)
|
|
|
+ memPayload["weight"] = 75
|
|
|
+ body, _ = json.Marshal(memPayload)
|
|
|
+ req = httptest.NewRequest(http.MethodPut, "/api/sdwan/groups/"+groupID+"/members", bytes.NewReader(body))
|
|
|
+ rec = httptest.NewRecorder()
|
|
|
+ srv.mux.ServeHTTP(rec, req)
|
|
|
+ if rec.Code != http.StatusOK {
|
|
|
+ t.Fatalf("PUT /api/sdwan/groups/%s/members status = %d; body = %s", groupID, rec.Code, rec.Body.String())
|
|
|
+ }
|
|
|
+
|
|
|
+ // 4b. POST /api/sdwan/groups/{id}/members (Update member via POST when already exists)
|
|
|
+ memPayload["weight"] = 85
|
|
|
+ body, _ = json.Marshal(memPayload)
|
|
|
+ req = httptest.NewRequest(http.MethodPost, "/api/sdwan/groups/"+groupID+"/members", bytes.NewReader(body))
|
|
|
+ rec = httptest.NewRecorder()
|
|
|
+ srv.mux.ServeHTTP(rec, req)
|
|
|
+ if rec.Code != http.StatusOK {
|
|
|
+ t.Fatalf("POST (update) /api/sdwan/groups/%s/members status = %d; body = %s", groupID, rec.Code, rec.Body.String())
|
|
|
+ }
|
|
|
+
|
|
|
+ gAfterUpdate, _ := sdwanMgr.Get(groupID)
|
|
|
+ if len(gAfterUpdate.Members) != 1 || gAfterUpdate.Members[0].Weight != 85 {
|
|
|
+ t.Fatalf("expected member weight 85, got %+v", gAfterUpdate.Members)
|
|
|
+ }
|
|
|
+
|
|
|
// 5. GET /api/sdwan/telemetry
|
|
|
req = httptest.NewRequest(http.MethodGet, "/api/sdwan/telemetry", nil)
|
|
|
rec = httptest.NewRecorder()
|