Swagger-baser server REST API interface
[ric-plt/appmgr.git] / cmd / appmgr / subscriptions_test.go
diff --git a/cmd/appmgr/subscriptions_test.go b/cmd/appmgr/subscriptions_test.go
deleted file mode 100755 (executable)
index 5d79d00..0000000
+++ /dev/null
@@ -1,198 +0,0 @@
-/*
-==================================================================================
-  Copyright (c) 2019 AT&T Intellectual Property.
-  Copyright (c) 2019 Nokia
-
-   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 (
-       "bytes"
-       "encoding/json"
-       "fmt"
-       sdl "gerrit.oran-osc.org/r/ric-plt/sdlgo"
-       "github.com/spf13/viper"
-       "log"
-       "net"
-       "net/http"
-       "net/http/httptest"
-       "testing"
-)
-
-var resp SubscriptionResp
-
-// Test cases
-func TestNoSubscriptionsFound(t *testing.T) {
-       req, _ := http.NewRequest("GET", "/ric/v1/subscriptions", nil)
-       response := executeRequest(req)
-
-       checkResponseCode(t, http.StatusOK, response.Code)
-       if body := response.Body.String(); body != "[]" {
-               t.Errorf("handler returned unexpected body: got %v want []", body)
-       }
-}
-
-func TestAddNewSubscription(t *testing.T) {
-       payload := []byte(`{"maxRetries": 3, "retryTimer": 5, "eventType":"Created", "targetUrl": "http://localhost:8087/xapps_handler"}`)
-       req, _ := http.NewRequest("POST", "/ric/v1/subscriptions", bytes.NewBuffer(payload))
-       response := executeRequest(req)
-
-       checkResponseCode(t, http.StatusCreated, response.Code)
-
-       json.NewDecoder(response.Body).Decode(&resp)
-       if resp.Version != 0 {
-               t.Errorf("Creating new subscription failed: %v", resp)
-       }
-}
-
-func TestGettAllSubscriptions(t *testing.T) {
-       req, _ := http.NewRequest("GET", "/ric/v1/subscriptions", nil)
-       response := executeRequest(req)
-
-       checkResponseCode(t, http.StatusOK, response.Code)
-
-       var subscriptions []SubscriptionReq
-       json.NewDecoder(response.Body).Decode(&subscriptions)
-
-       verifySubscription(t, subscriptions[0], "http://localhost:8087/xapps_handler", 3, 5, "Created")
-}
-
-func TestGetSingleSubscription(t *testing.T) {
-       req, _ := http.NewRequest("GET", "/ric/v1/subscriptions/"+resp.Id, nil)
-       response := executeRequest(req)
-
-       checkResponseCode(t, http.StatusOK, response.Code)
-
-       var subscription SubscriptionReq
-       json.NewDecoder(response.Body).Decode(&subscription)
-
-       verifySubscription(t, subscription, "http://localhost:8087/xapps_handler", 3, 5, "Created")
-}
-
-func TestUpdateSingleSubscription(t *testing.T) {
-       payload := []byte(`{"maxRetries": 11, "retryTimer": 22, "eventType":"Deleted", "targetUrl": "http://localhost:8088/xapps_handler"}`)
-
-       req, _ := http.NewRequest("PUT", "/ric/v1/subscriptions/"+resp.Id, bytes.NewBuffer(payload))
-       response := executeRequest(req)
-
-       checkResponseCode(t, http.StatusOK, response.Code)
-
-       var res SubscriptionResp
-       json.NewDecoder(response.Body).Decode(&res)
-       if res.Version != 0 {
-               t.Errorf("handler returned unexpected data: %v", resp)
-       }
-
-       // Check that the subscription is updated properly
-       req, _ = http.NewRequest("GET", "/ric/v1/subscriptions/"+resp.Id, nil)
-       response = executeRequest(req)
-       checkResponseCode(t, http.StatusOK, response.Code)
-
-       var subscription SubscriptionReq
-       json.NewDecoder(response.Body).Decode(&subscription)
-
-       verifySubscription(t, subscription, "http://localhost:8088/xapps_handler", 11, 22, "Deleted")
-}
-
-func TestDeleteSingleSubscription(t *testing.T) {
-       req, _ := http.NewRequest("DELETE", "/ric/v1/subscriptions/"+resp.Id, nil)
-       response := executeRequest(req)
-
-       checkResponseCode(t, http.StatusNoContent, response.Code)
-
-       // Check that the subscription is removed properly
-       req, _ = http.NewRequest("GET", "/ric/v1/subscriptions/"+resp.Id, nil)
-       response = executeRequest(req)
-       checkResponseCode(t, http.StatusNotFound, response.Code)
-}
-
-func TestDeleteSingleSubscriptionFails(t *testing.T) {
-       req, _ := http.NewRequest("DELETE", "/ric/v1/subscriptions/invalidSubscriptionId", nil)
-       response := executeRequest(req)
-
-       checkResponseCode(t, http.StatusNotFound, response.Code)
-}
-
-func TestAddSingleSubscriptionFailsBodyEmpty(t *testing.T) {
-       req, _ := http.NewRequest("POST", "/ric/v1/subscriptions/"+resp.Id, nil)
-       response := executeRequest(req)
-
-       checkResponseCode(t, http.StatusMethodNotAllowed, response.Code)
-}
-
-func TestUpdateeSingleSubscriptionFailsBodyEmpty(t *testing.T) {
-       req, _ := http.NewRequest("PUT", "/ric/v1/subscriptions/"+resp.Id, nil)
-       response := executeRequest(req)
-
-       checkResponseCode(t, http.StatusMethodNotAllowed, response.Code)
-}
-
-func TestUpdateeSingleSubscriptionFailsInvalidId(t *testing.T) {
-       payload := []byte(`{"maxRetries": 11, "retryTimer": 22, "eventType":"Deleted", "targetUrl": "http://localhost:8088/xapps_handler"}`)
-
-       req, _ := http.NewRequest("PUT", "/ric/v1/subscriptions/invalidSubscriptionId"+resp.Id, bytes.NewBuffer(payload))
-       response := executeRequest(req)
-
-       checkResponseCode(t, http.StatusNotFound, response.Code)
-}
-
-func TestPublishXappAction(t *testing.T) {
-       payload := []byte(`{"maxRetries": 3, "retryTimer": 5, "eventType":"Created", "targetUrl": "http://127.0.0.1:8888"}`)
-       req, _ := http.NewRequest("POST", "/ric/v1/subscriptions", bytes.NewBuffer(payload))
-       response := executeRequest(req)
-
-       checkResponseCode(t, http.StatusCreated, response.Code)
-
-       // Create a RestApi server (simulating RM)
-       ts := httptest.NewUnstartedServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
-               fmt.Fprintln(w, "Hello, XM!")
-       }))
-
-       l, err := net.Listen("tcp", "127.0.0.1:8888")
-       if err != nil {
-               log.Fatal(err)
-       }
-       ts.Listener.Close()
-       ts.Listener = l
-       ts.Start()
-
-       defer ts.Close()
-
-       x.sd.Publish(xapp, EventType("created"))
-}
-
-func TestTeardown(t *testing.T) {
-       db := sdl.NewSdlInstance(viper.GetString("db.sessionNamespace"), sdl.NewDatabase())
-       db.RemoveAll()
-}
-
-func verifySubscription(t *testing.T, subscription SubscriptionReq, url string, retries int, timer int, event string) {
-       if subscription.TargetUrl != url {
-               t.Errorf("Unexpected url: got=%s expected=%s", subscription.TargetUrl, url)
-       }
-
-       if subscription.MaxRetries != retries {
-               t.Errorf("Unexpected retries: got=%d expected=%d", subscription.MaxRetries, retries)
-       }
-
-       if subscription.RetryTimer != timer {
-               t.Errorf("Unexpected timer: got=%d expected=%d", subscription.RetryTimer, timer)
-       }
-
-       if subscription.EventType != event {
-               t.Errorf("Unexpected event type: got=%s expected=%s", subscription.EventType, event)
-       }
-}