Files
kontor/go/pkg/tysc/cardset_test.go
T
2025-01-09 19:28:50 +01:00

104 lines
1.8 KiB
Go

package tysc
import (
"gitlab.thpeetz.de/kontor/kontor-go/pkg/dao"
"reflect"
"testing"
"gopkg.in/mgo.v2/bson"
)
var cardsetModelTestTable = []struct {
name string
typeName string
}{
{"Id", "string"},
{"Name", "string"},
{"Manufacturer", "string"},
{"Model", "string"},
}
func TestCardSetModel(t *testing.T) {
m := CardSet{}
if reflect.TypeOf(m).NumField() != len(cardsetModelTestTable) {
t.Fail()
}
for index, testData := range cardsetModelTestTable {
givenType := reflect.TypeOf(m).Field(index).Type.Kind().String()
if givenType != testData.typeName {
t.Fail()
}
}
}
func TestListCardSets(t *testing.T) {
var (
cardsetDao = CardSetDAO{Db: dao.TestDb}
)
cardSets, err := cardsetDao.FindAll()
if err != nil {
t.Fail()
}
if len(cardSets) != 0 {
t.Fail()
}
}
func TestInsertCardSet(t *testing.T) {
var (
cardsetDao = CardSetDAO{Db: dao.TestDb}
cardSet = CardSet{}
cardSets []CardSet
)
cardSet.ID = bson.NewObjectId()
cardSet.Name = "test"
err := cardsetDao.Insert(cardSet)
if err != nil {
t.Fail()
}
cardSets, err = cardsetDao.FindAll()
if err != nil {
t.Fail()
}
if len(cardSets) != 1 {
t.Fail()
}
}
func TestUpsertCardSet(t *testing.T) {
var (
cardsetDao = CardSetDAO{Db: dao.TestDb}
cardSet = CardSet{}
)
cardSet.ID = bson.NewObjectId()
cardSet.Name = "test2"
cardsetDao.Upsert(cardSet)
cardSets, err := cardsetDao.FindAll()
if err != nil {
t.Fail()
}
if len(cardSets) != 2 {
t.Fail()
}
}
func TestDeleteCardSet(t *testing.T) {
var (
cardsetDao = CardSetDAO{Db: dao.TestDb}
)
cardSets, err := cardsetDao.FindAll()
if err != nil {
t.Fail()
}
for _, cardSet := range cardSets {
cardsetDao.Delete(cardSet)
}
cardSets, err = cardsetDao.FindAll()
if err != nil {
t.Fail()
}
if len(cardSets) != 0 {
t.Fail()
}
}