mirror of
https://github.com/Team254/cheesy-arena-lite.git
synced 2026-03-09 13:46:44 -04:00
96 lines
2.3 KiB
Go
96 lines
2.3 KiB
Go
// Copyright 2019 Team 254. All Rights Reserved.
|
|
// Author: pat@patfairbank.com (Patrick Fairbank)
|
|
|
|
package model
|
|
|
|
import (
|
|
"github.com/stretchr/testify/assert"
|
|
"testing"
|
|
)
|
|
|
|
func TestGetNonexistentAward(t *testing.T) {
|
|
db := setupTestDb(t)
|
|
defer db.Close()
|
|
|
|
award, err := db.GetAwardById(1114)
|
|
assert.Nil(t, err)
|
|
assert.Nil(t, award)
|
|
}
|
|
|
|
func TestAwardCrud(t *testing.T) {
|
|
db := setupTestDb(t)
|
|
defer db.Close()
|
|
|
|
award := Award{0, JudgedAward, "Saftey Award", 254, ""}
|
|
assert.Nil(t, db.CreateAward(&award))
|
|
award2, err := db.GetAwardById(1)
|
|
assert.Nil(t, err)
|
|
assert.Equal(t, award, *award2)
|
|
|
|
award2.Id = 0
|
|
award2.AwardName = "Spirit Award"
|
|
assert.Nil(t, db.CreateAward(award2))
|
|
awards, err := db.GetAllAwards()
|
|
assert.Nil(t, err)
|
|
if assert.Equal(t, 2, len(awards)) {
|
|
assert.Equal(t, award, awards[0])
|
|
assert.Equal(t, *award2, awards[1])
|
|
}
|
|
|
|
award.TeamId = 0
|
|
award.PersonName = "Travus Cubington"
|
|
assert.Nil(t, db.UpdateAward(&award))
|
|
award2, err = db.GetAwardById(1)
|
|
assert.Nil(t, err)
|
|
assert.Equal(t, award.TeamId, award2.TeamId)
|
|
assert.Equal(t, award.PersonName, award2.PersonName)
|
|
|
|
assert.Nil(t, db.DeleteAward(award.Id))
|
|
award2, err = db.GetAwardById(1)
|
|
assert.Nil(t, err)
|
|
assert.Nil(t, award2)
|
|
}
|
|
|
|
func TestTruncateAwards(t *testing.T) {
|
|
db := setupTestDb(t)
|
|
defer db.Close()
|
|
|
|
award := Award{0, JudgedAward, "Saftey Award", 254, ""}
|
|
db.CreateAward(&award)
|
|
db.TruncateAwards()
|
|
award2, err := db.GetAwardById(1)
|
|
assert.Nil(t, err)
|
|
assert.Nil(t, award2)
|
|
}
|
|
|
|
func TestGetAwardsByType(t *testing.T) {
|
|
db := setupTestDb(t)
|
|
defer db.Close()
|
|
|
|
award1 := Award{0, WinnerAward, "Event Winner", 1114, ""}
|
|
db.CreateAward(&award1)
|
|
award2 := Award{0, FinalistAward, "Event Finalist", 2056, ""}
|
|
db.CreateAward(&award2)
|
|
award3 := Award{0, JudgedAward, "Saftey Award", 254, ""}
|
|
db.CreateAward(&award3)
|
|
award4 := Award{0, WinnerAward, "Event Winner", 254, ""}
|
|
db.CreateAward(&award4)
|
|
|
|
awards, err := db.GetAwardsByType(JudgedAward)
|
|
assert.Nil(t, err)
|
|
if assert.Equal(t, 1, len(awards)) {
|
|
assert.Equal(t, award3, awards[0])
|
|
}
|
|
awards, err = db.GetAwardsByType(FinalistAward)
|
|
assert.Nil(t, err)
|
|
if assert.Equal(t, 1, len(awards)) {
|
|
assert.Equal(t, award2, awards[0])
|
|
}
|
|
awards, err = db.GetAwardsByType(WinnerAward)
|
|
assert.Nil(t, err)
|
|
if assert.Equal(t, 2, len(awards)) {
|
|
assert.Equal(t, award1, awards[0])
|
|
assert.Equal(t, award4, awards[1])
|
|
}
|
|
}
|