forked from content-services/content-sources-backend
-
Notifications
You must be signed in to change notification settings - Fork 0
/
snapshot_model_test.go
50 lines (42 loc) · 1.21 KB
/
snapshot_model_test.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
package dao
import (
"testing"
"github.com/content-services/content-sources-backend/pkg/models"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/suite"
)
type RepositorySnapshotSuite struct {
*DaoSuite
}
func TestRepositorySnapshotSuite(t *testing.T) {
m := DaoSuite{}
r := RepositorySnapshotSuite{&m}
suite.Run(t, &r)
}
func (s *RepositorySnapshotSuite) TestSnapshot() {
t := s.T()
tx := s.tx
testRepository := models.Repository{
URL: "https://example.com",
LastIntrospectionTime: nil,
LastIntrospectionError: nil,
}
err := tx.Create(&testRepository).Error
assert.NoError(t, err)
snap := Snapshot{
Base: models.Base{},
VersionHref: "/pulp/version",
PublicationHref: "/pulp/publication",
DistributionPath: "/path/to/distr",
OrgId: "someOrg",
RepositoryUUID: testRepository.UUID,
ContentCounts: ContentCounts{"packages": int64(3)},
}
insert := tx.Create(&snap)
assert.NoError(t, insert.Error)
readSnap := Snapshot{}
result := tx.Where("uuid = ?", snap.UUID).First(&readSnap)
assert.NoError(t, result.Error)
assert.Equal(t, "someOrg", readSnap.OrgId)
assert.Equal(t, int64(3), readSnap.ContentCounts["packages"])
}