Skip to content
Snippets Groups Projects
Commit 35cc5b22 authored by ko_oler's avatar ko_oler
Browse files

добавлены тесты

parent eebb8025
No related branches found
No related tags found
No related merge requests found
......@@ -23,6 +23,8 @@ func TestSetup_InstallCollections(t *testing.T) {
collections []*collections.Collection
collectionsCall func(svc *mockscollections.Collections)
envsCall func(svc *envmocks.Environments)
co CollectionsOption
force bool
wantErr func(t *testing.T, err error)
}{
{
......@@ -106,6 +108,36 @@ func TestSetup_InstallCollections(t *testing.T) {
wantErr: func(t *testing.T, err error) {
assert.NoError(t, err)
},
co: UpdateCollectionSchemaMetadata(),
},
{
name: "Fail to update user collection with same id as in extensions collection",
collections: []*collections.Collection{{ID: "1", SpaceID: "sp", EnvID: "env", Schema: schema.New("name", field.String()).WithMetadata(extension.ExtensionMetadataKey, "test-extension")}},
collectionsCall: func(svc *mockscollections.Collections) {
svc.On("Get", mock.Anything, "sp", "env", "1").Return(&collections.Collection{ID: "1", SpaceID: "sp", EnvID: "env", Schema: schema.New("name", field.String())}, nil).Once()
},
wantErr: func(t *testing.T, err error) {
assert.Error(t, err)
assert.ErrorIs(t, err, collections.ErrAlreadyExists)
},
co: UpdateCollectionSchemaMetadata(),
},
{
name: "Update user collection with same id as in extensions collection with force",
collections: []*collections.Collection{{ID: "1", SpaceID: "sp", EnvID: "env", Schema: schema.New("name", field.String()).WithMetadata(extension.ExtensionMetadataKey, "test-extension")}},
collectionsCall: func(svc *mockscollections.Collections) {
svc.On("Get", mock.Anything, "sp", "env", "1").Return(&collections.Collection{ID: "1", SpaceID: "sp", EnvID: "env", Schema: schema.New("name", field.String())}, nil).Once()
svc.On("Update", mock.Anything, &collections.Collection{ID: "1", SpaceID: "sp", EnvID: "env", Schema: schema.New("name", field.String()).WithMetadata(extension.ExtensionMetadataKey, "test-extension")}).Return(nil).Once()
svc.On("SetSchema", mock.Anything, "sp", "env", "1", schema.New("name", field.String()).WithMetadata(extension.ExtensionMetadataKey, "test-extension")).Return(nil).Once()
},
envsCall: func(svc *envmocks.Environments) {
svc.On("Migrate", mock.Anything, "sp", "env", &environments.MigrateOptions{Wait: true}).Return(nil).Once()
},
wantErr: func(t *testing.T, err error) {
assert.NoError(t, err)
},
co: UpdateCollectionSchemaMetadata(),
force: true,
},
{
name: "Update exist view collection with the same id",
......@@ -150,7 +182,12 @@ func TestSetup_InstallCollections(t *testing.T) {
}
s := NewSetup(&content.Content{Collections: c, Environments: e}, "sp", "env", nil)
s.force = tt.force
if tt.co != nil {
s.AddCollections(tt.collections, tt.co)
} else {
s.AddCollections(tt.collections)
}
tt.wantErr(t, s.InstallCollections(context.Background()))
})
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment