mirror of
https://github.com/crawlab-team/crawlab.git
synced 2026-01-22 17:31:03 +01:00
66 lines
1.4 KiB
Go
66 lines
1.4 KiB
Go
package delegate_test
|
|
|
|
import (
|
|
"github.com/crawlab-team/crawlab/core/interfaces"
|
|
"github.com/crawlab-team/crawlab/core/models/delegate"
|
|
models2 "github.com/crawlab-team/crawlab/core/models/models"
|
|
"github.com/crawlab-team/crawlab/db/mongo"
|
|
"github.com/stretchr/testify/require"
|
|
"testing"
|
|
)
|
|
|
|
func TestProject_Add(t *testing.T) {
|
|
SetupTest(t)
|
|
|
|
p := &models2.Project{}
|
|
|
|
err := delegate.NewModelDelegate(p).Add()
|
|
require.Nil(t, err)
|
|
require.NotNil(t, p.Id)
|
|
|
|
a, err := delegate.NewModelDelegate(p).GetArtifact()
|
|
require.Nil(t, err)
|
|
require.Equal(t, p.Id, a.GetId())
|
|
require.NotNil(t, a.GetSys().GetCreateTs())
|
|
require.NotNil(t, a.GetSys().GetUpdateTs())
|
|
}
|
|
|
|
func TestProject_Save(t *testing.T) {
|
|
SetupTest(t)
|
|
|
|
p := &models2.Project{}
|
|
|
|
err := delegate.NewModelDelegate(p).Add()
|
|
require.Nil(t, err)
|
|
|
|
name := "test_project"
|
|
p.Name = name
|
|
err = delegate.NewModelDelegate(p).Save()
|
|
require.Nil(t, err)
|
|
|
|
err = mongo.GetMongoCol(interfaces.ModelColNameProject).FindId(p.Id).One(&p)
|
|
require.Nil(t, err)
|
|
require.Equal(t, name, p.Name)
|
|
}
|
|
|
|
func TestProject_Delete(t *testing.T) {
|
|
SetupTest(t)
|
|
|
|
p := &models2.Project{
|
|
Name: "test_project",
|
|
}
|
|
|
|
err := delegate.NewModelDelegate(p).Add()
|
|
require.Nil(t, err)
|
|
|
|
err = delegate.NewModelDelegate(p).Delete()
|
|
require.Nil(t, err)
|
|
|
|
var a models2.Artifact
|
|
col := mongo.GetMongoCol(interfaces.ModelColNameArtifact)
|
|
err = col.FindId(p.Id).One(&a)
|
|
require.Nil(t, err)
|
|
require.NotNil(t, a.Obj)
|
|
require.True(t, a.Del)
|
|
}
|