Adding API tests that verifies recently changed code bevaviour

This commit is contained in:
Denis Makogon
2017-09-21 02:25:36 +03:00
parent 830c86efe7
commit f4699ea0ba
3 changed files with 20 additions and 1 deletions

View File

@@ -223,11 +223,13 @@ func (ds *sqlStore) UpdateApp(ctx context.Context, newapp *models.App) (*models.
func (ds *sqlStore) RemoveApp(ctx context.Context, appName string) error { func (ds *sqlStore) RemoveApp(ctx context.Context, appName string) error {
return ds.Tx(func(tx *sqlx.Tx) error { return ds.Tx(func(tx *sqlx.Tx) error {
res, err := tx.ExecContext(ctx, tx.Rebind(`DELETE FROM apps WHERE name=?`), appName) res, err := tx.ExecContext(ctx, tx.Rebind(`DELETE FROM apps WHERE name=?`), appName)
if err != nil {
return err
}
n, err := res.RowsAffected() n, err := res.RowsAffected()
if err != nil { if err != nil {
return err return err
} }
if n == 0 { if n == 0 {
return models.ErrAppsNotFound return models.ErrAppsNotFound
} }

View File

@@ -14,6 +14,9 @@ import (
func CheckAppResponseError(t *testing.T, e error) { func CheckAppResponseError(t *testing.T, e error) {
if e != nil { if e != nil {
switch err := e.(type) { switch err := e.(type) {
case *apps.DeleteAppsAppNotFound:
t.Errorf("Unexpected error occurred: %v Original Location: %s", err.Payload.Error.Message, MyCaller())
t.FailNow()
case *apps.DeleteAppsAppDefault: case *apps.DeleteAppsAppDefault:
t.Errorf("Unexpected error occurred: %v. Status code: %v Orig Location: %s", err.Payload.Error.Message, err.Code(), MyCaller()) t.Errorf("Unexpected error occurred: %v. Status code: %v Orig Location: %s", err.Payload.Error.Message, err.Code(), MyCaller())
t.FailNow() t.FailNow()

View File

@@ -11,6 +11,20 @@ import (
func TestApps(t *testing.T) { func TestApps(t *testing.T) {
t.Run("delete-app-not-found-test", func(t *testing.T) {
t.Parallel()
s := SetupDefaultSuite()
cfg := &apps.DeleteAppsAppParams{
App: "missing-app",
Context: s.Context,
}
cfg.WithTimeout(time.Second * 60)
_, err := s.Client.Apps.DeleteAppsApp(cfg)
if err == nil {
t.Errorf("Error during app delete: we should get HTTP 404, but got: %s", err.Error())
}
})
t.Run("app-not-found-test", func(t *testing.T) { t.Run("app-not-found-test", func(t *testing.T) {
t.Parallel() t.Parallel()
s := SetupDefaultSuite() s := SetupDefaultSuite()