Addressing comments

This commit is contained in:
Denis Makogon
2017-08-17 10:36:05 +03:00
parent 62d650f0a5
commit 1f0f9c7a46
4 changed files with 22 additions and 31 deletions

View File

@@ -11,8 +11,6 @@ import (
"github.com/gin-gonic/gin"
)
var bad routeResponse
/* handleRouteCreateOrUpdate is used to handle POST PUT and PATCH for routes.
Post will only create route if its not there and create app if its not.
create only
@@ -79,43 +77,38 @@ func (s *Server) changeRoute(ctx context.Context, wroute *models.RouteWrapper) e
// ensureApp will only execute if it is on put
func (s *Server) ensureRoute(ctx context.Context, method string, wroute *models.RouteWrapper) (routeResponse, error) {
resp := routeResponse{"Route successfully created", nil}
up := routeResponse{"Route successfully updated", nil}
bad := new(routeResponse)
switch method {
case http.MethodPost:
err := s.submitRoute(ctx, wroute)
if err != nil {
return bad, err
return *bad, err
}
resp.Route = wroute.Route
return resp, nil
return routeResponse{"Route successfully created", wroute.Route}, nil
case http.MethodPut:
_, err := s.Datastore.GetRoute(ctx, wroute.Route.AppName, wroute.Route.Path)
if err != nil && err == models.ErrRoutesNotFound {
err := s.submitRoute(ctx, wroute)
if err != nil {
return bad, err
return *bad, err
}
resp.Route = wroute.Route
return resp, nil
return routeResponse{"Route successfully created", wroute.Route}, nil
} else {
err := s.changeRoute(ctx, wroute)
if err != nil {
return bad, err
return *bad, err
}
up.Route = wroute.Route
return up, nil
return routeResponse{"Route successfully updated", wroute.Route}, nil
}
case http.MethodPatch:
err := s.changeRoute(ctx, wroute)
if err != nil {
return bad, err
return *bad, err
}
up.Route = wroute.Route
return up, nil
return routeResponse{"Route successfully updated", wroute.Route}, nil
}
return bad, nil
return *bad, nil
}
// ensureApp will only execute if it is on post or put. Patch is not allowed to create apps.

View File

@@ -4,7 +4,6 @@ import (
"context"
"strings"
"testing"
"time"
"github.com/funcy/functions_go/client"
"github.com/funcy/functions_go/client/apps"
@@ -59,7 +58,7 @@ func CreateAppNoAssert(ctx context.Context, fnclient *client.Functions, appName
},
Context: ctx,
}
cfg.WithTimeout(time.Second * 60)
return fnclient.Apps.PostApps(cfg)
}
@@ -84,7 +83,7 @@ func CreateUpdateApp(t *testing.T, ctx context.Context, fnclient *client.Functio
},
Context: ctx,
}
cfg.WithTimeout(time.Second * 60)
appPayload, err := fnclient.Apps.PatchAppsApp(cfg)
CheckAppResponseError(t, err)
return appPayload
@@ -95,7 +94,7 @@ func DeleteApp(t *testing.T, ctx context.Context, fnclient *client.Functions, ap
App: appName,
Context: ctx,
}
cfg.WithTimeout(time.Second * 60)
_, err := fnclient.Apps.DeleteAppsApp(cfg)
CheckAppResponseError(t, err)
}
@@ -105,7 +104,7 @@ func GetApp(t *testing.T, ctx context.Context, fnclient *client.Functions, appNa
App: appName,
Context: ctx,
}
cfg.WithTimeout(time.Second * 60)
app, err := fnclient.Apps.GetAppsApp(cfg)
CheckAppResponseError(t, err)
return app.Payload.App

View File

@@ -3,7 +3,6 @@ package tests
import (
"context"
"testing"
"time"
"github.com/funcy/functions_go/client"
"github.com/funcy/functions_go/client/routes"
@@ -112,7 +111,7 @@ func createRoute(ctx context.Context, fnclient *client.Functions, appName, image
},
Context: ctx,
}
cfg.WithTimeout(time.Second * 60)
return fnclient.Routes.PostAppsAppRoutes(cfg)
}
@@ -130,7 +129,7 @@ func deleteRoute(ctx context.Context, fnclient *client.Functions, appName, route
Route: routePath,
Context: ctx,
}
cfg.WithTimeout(time.Second * 60)
return fnclient.Routes.DeleteAppsAppRoutesRoute(cfg)
}
@@ -144,7 +143,7 @@ func ListRoutes(t *testing.T, ctx context.Context, fnclient *client.Functions, a
App: appName,
Context: ctx,
}
cfg.WithTimeout(time.Second * 60)
routesResponse, err := fnclient.Routes.GetAppsAppRoutes(cfg)
CheckRouteResponseError(t, err)
return routesResponse.Payload.Routes
@@ -156,7 +155,7 @@ func GetRoute(t *testing.T, ctx context.Context, fnclient *client.Functions, app
Route: routePath,
Context: ctx,
}
cfg.WithTimeout(time.Second * 60)
routeResponse, err := fnclient.Routes.GetAppsAppRoutesRoute(cfg)
CheckRouteResponseError(t, err)
return routeResponse.Payload.Route
@@ -217,7 +216,6 @@ func UpdateRoute(t *testing.T, ctx context.Context, fnclient *client.Functions,
},
Route: routePath,
}
cfg.WithTimeout(time.Second * 60)
return fnclient.Routes.PatchAppsAppRoutesRoute(cfg)
}
@@ -247,7 +245,7 @@ func DeployRoute(t *testing.T, ctx context.Context, fnclient *client.Functions,
},
},
}
cfg.WithTimeout(time.Second * 60)
route, err := fnclient.Routes.PutAppsAppRoutesRoute(cfg)
CheckRouteResponseError(t, err)
return route.Payload.Route

View File

@@ -118,8 +118,9 @@ func RandStringBytes(n int) string {
}
func SetupDefaultSuite() *SuiteSetup {
ctx, cancel := context.WithTimeout(context.Background(), 60*time.Second)
ss := &SuiteSetup{
Context: context.Background(),
Context: ctx,
Client: APIClient(),
AppName: RandStringBytes(10),
RoutePath: "/" + RandStringBytes(10),
@@ -128,7 +129,7 @@ func SetupDefaultSuite() *SuiteSetup {
RouteType: "async",
RouteConfig: map[string]string{},
RouteHeaders: map[string][]string{},
Cancel: func() {},
Cancel: cancel,
}
_, ok := ss.Client.Version.GetVersion(nil)