Asertized SAM tests
This commit is contained in:
@@ -20,31 +20,34 @@ func TestAttachment(t *testing.T) {
|
||||
|
||||
att.ChannelID = 1
|
||||
|
||||
att, err = rpo.CreateAttachment(att)
|
||||
must(t, err)
|
||||
if att.ChannelID != 1 {
|
||||
t.Fatal("Changes were not stored")
|
||||
{
|
||||
att, err = rpo.CreateAttachment(att)
|
||||
assert(t, err == nil, "CreateAttachment error: %v", err)
|
||||
assert(t, att.ChannelID == 1, "Changes were not stored")
|
||||
|
||||
{
|
||||
att.ChannelID = 2
|
||||
|
||||
att, err = rpo.UpdateAttachment(att)
|
||||
assert(t, err == nil, "UpdateAttachment error: %v", err)
|
||||
assert(t, att.ChannelID == 2, "Changes were not stored")
|
||||
}
|
||||
|
||||
{
|
||||
att, err = rpo.FindAttachmentByID(att.ID)
|
||||
assert(t, err == nil, "FindAttachmentByID error: %v", err)
|
||||
assert(t, att.ChannelID == 2, "Changes were not stored")
|
||||
}
|
||||
|
||||
{
|
||||
aa, err = rpo.FindAttachmentByRange(2, 0, att.ID)
|
||||
assert(t, err == nil, "FindAttachmentByRange error: %v", err)
|
||||
assert(t, len(aa) > 0, "No results found")
|
||||
}
|
||||
|
||||
{
|
||||
err = rpo.DeleteAttachmentByID(att.ID)
|
||||
assert(t, err == nil, "DeleteAttachmentByID error: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
att.ChannelID = 2
|
||||
|
||||
att, err = rpo.UpdateAttachment(att)
|
||||
must(t, err)
|
||||
if att.ChannelID != 2 {
|
||||
t.Fatal("Changes were not stored")
|
||||
}
|
||||
|
||||
att, err = rpo.FindAttachmentByID(att.ID)
|
||||
must(t, err)
|
||||
if att.ChannelID != 2 {
|
||||
t.Fatal("Changes were not stored")
|
||||
}
|
||||
|
||||
aa, err = rpo.FindAttachmentByRange(2, 0, att.ID)
|
||||
must(t, err)
|
||||
if len(aa) == 0 {
|
||||
t.Fatal("No results found")
|
||||
}
|
||||
|
||||
must(t, rpo.DeleteAttachmentByID(att.ID))
|
||||
}
|
||||
|
||||
@@ -20,37 +20,47 @@ func TestChannel(t *testing.T) {
|
||||
|
||||
var cc []*types.Channel
|
||||
|
||||
chn.Name = name1
|
||||
{
|
||||
chn.Name = name1
|
||||
chn, err = rpo.CreateChannel(chn)
|
||||
assert(t, err == nil, "CreateChannel error: %v", err)
|
||||
assert(t, chn.Name == name1, "Changes were not stored")
|
||||
|
||||
chn, err = rpo.CreateChannel(chn)
|
||||
must(t, err)
|
||||
if chn.Name != name1 {
|
||||
t.Fatal("Changes were not stored")
|
||||
{
|
||||
chn.Name = name2
|
||||
|
||||
chn, err = rpo.UpdateChannel(chn)
|
||||
assert(t, err == nil, "UpdateChannel error: %v", err)
|
||||
assert(t, chn.Name == name2, "Changes were not stored")
|
||||
}
|
||||
|
||||
{
|
||||
chn, err = rpo.FindChannelByID(chn.ID)
|
||||
assert(t, err == nil, "FindChannelByID error: %v", err)
|
||||
assert(t, chn.Name == name2, "Changes were not stored")
|
||||
}
|
||||
|
||||
{
|
||||
cc, err = rpo.FindChannels(&types.ChannelFilter{Query: name2})
|
||||
assert(t, err == nil, "FindChannels error: %v", err)
|
||||
assert(t, len(cc) > 0, "No results found")
|
||||
}
|
||||
|
||||
{
|
||||
err = rpo.ArchiveChannelByID(chn.ID)
|
||||
assert(t, err == nil, "ArchiveChannelByID error: %v", err)
|
||||
}
|
||||
|
||||
{
|
||||
err = rpo.UnarchiveChannelByID(chn.ID)
|
||||
assert(t, err == nil, "UnarchiveChannelByID error: %v", err)
|
||||
}
|
||||
|
||||
{
|
||||
err = rpo.DeleteChannelByID(chn.ID)
|
||||
assert(t, err == nil, "DeleteChannelByID error: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
chn.Name = name2
|
||||
|
||||
chn, err = rpo.UpdateChannel(chn)
|
||||
must(t, err)
|
||||
if chn.Name != name2 {
|
||||
t.Fatal("Changes were not stored")
|
||||
}
|
||||
|
||||
chn, err = rpo.FindChannelByID(chn.ID)
|
||||
must(t, err)
|
||||
if chn.Name != name2 {
|
||||
t.Fatal("Changes were not stored")
|
||||
}
|
||||
|
||||
cc, err = rpo.FindChannels(&types.ChannelFilter{Query: name2})
|
||||
must(t, err)
|
||||
if len(cc) == 0 {
|
||||
t.Fatal("No results found")
|
||||
}
|
||||
|
||||
must(t, rpo.ArchiveChannelByID(chn.ID))
|
||||
must(t, rpo.UnarchiveChannelByID(chn.ID))
|
||||
must(t, rpo.DeleteChannelByID(chn.ID))
|
||||
}
|
||||
|
||||
func TestChannelMembers(t *testing.T) {
|
||||
@@ -62,16 +72,21 @@ func TestChannelMembers(t *testing.T) {
|
||||
}
|
||||
|
||||
rpo := New()
|
||||
|
||||
chn := &types.Channel{}
|
||||
chn, err = rpo.CreateChannel(chn)
|
||||
must(t, err)
|
||||
|
||||
usr := &types.User{}
|
||||
usr, err = rpo.CreateUser(usr)
|
||||
must(t, err)
|
||||
|
||||
_, err = rpo.AddChannelMember(&types.ChannelMember{ChannelID: chn.ID, UserID: usr.ID})
|
||||
must(t, err)
|
||||
must(t, rpo.RemoveChannelMember(chn.ID, usr.ID))
|
||||
{
|
||||
chn, err = rpo.CreateChannel(chn)
|
||||
assert(t, err == nil, "CreateChannel: %v", err)
|
||||
|
||||
{
|
||||
usr, err = rpo.CreateUser(usr)
|
||||
assert(t, err == nil, "CreateUser error: %v", err)
|
||||
|
||||
{
|
||||
_, err = rpo.AddChannelMember(&types.ChannelMember{ChannelID: chn.ID, UserID: usr.ID})
|
||||
assert(t, err == nil, "AddChannelMember error: %v", err)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,10 +1,12 @@
|
||||
package repository
|
||||
|
||||
import (
|
||||
"github.com/namsral/flag"
|
||||
"fmt"
|
||||
"github.com/joho/godotenv"
|
||||
"github.com/namsral/flag"
|
||||
"github.com/titpetric/factory"
|
||||
"os"
|
||||
"runtime"
|
||||
"testing"
|
||||
)
|
||||
|
||||
@@ -32,8 +34,12 @@ func TestMain(m *testing.M) {
|
||||
os.Exit(m.Run())
|
||||
}
|
||||
|
||||
func must(t *testing.T, err error) {
|
||||
if err != nil {
|
||||
t.Fatalf("Error: %v", err)
|
||||
func assert(t *testing.T, ok bool, format string, args ...interface{}) bool {
|
||||
if !ok {
|
||||
_, file, line, _ := runtime.Caller(1)
|
||||
caller := fmt.Sprintf("\nAsserted at:%s:%d", file, line)
|
||||
|
||||
t.Fatalf(format+caller, args...)
|
||||
}
|
||||
return ok
|
||||
}
|
||||
|
||||
@@ -20,33 +20,34 @@ func TestMessage(t *testing.T) {
|
||||
|
||||
var mm []*types.Message
|
||||
|
||||
msg.Message = msg1
|
||||
{
|
||||
msg.Message = msg1
|
||||
msg, err = rpo.CreateMessage(msg)
|
||||
assert(t, err == nil, "CreateMessage error: %v", err)
|
||||
assert(t, msg.Message == msg1, "Changes were not stored")
|
||||
|
||||
msg, err = rpo.CreateMessage(msg)
|
||||
must(t, err)
|
||||
if msg.Message != msg1 {
|
||||
t.Fatal("Changes were not stored")
|
||||
{
|
||||
msg.Message = msg2
|
||||
msg, err = rpo.UpdateMessage(msg)
|
||||
assert(t, err == nil, "UpdateMessage error: %v", err)
|
||||
assert(t, msg.Message == msg2, "Changes were not stored")
|
||||
}
|
||||
|
||||
{
|
||||
msg, err = rpo.FindMessageByID(msg.ID)
|
||||
assert(t, err == nil, "FFindMessageByID error: %v", err)
|
||||
assert(t, msg.Message == msg2, "Changes were not stored")
|
||||
}
|
||||
|
||||
{
|
||||
mm, err = rpo.FindMessages(&types.MessageFilter{Query: msg2})
|
||||
assert(t, err == nil, "FindMessages error: %v", err)
|
||||
assert(t, len(mm) > 0, "No results found")
|
||||
}
|
||||
|
||||
{
|
||||
err = rpo.DeleteMessageByID(msg.ID)
|
||||
assert(t, err == nil, "DeleteMessageByID error: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
msg.Message = msg2
|
||||
|
||||
msg, err = rpo.UpdateMessage(msg)
|
||||
must(t, err)
|
||||
if msg.Message != msg2 {
|
||||
t.Fatal("Changes were not stored")
|
||||
}
|
||||
|
||||
msg, err = rpo.FindMessageByID(msg.ID)
|
||||
must(t, err)
|
||||
if msg.Message != msg2 {
|
||||
t.Fatal("Changes were not stored")
|
||||
}
|
||||
|
||||
mm, err = rpo.FindMessages(&types.MessageFilter{Query: msg2})
|
||||
must(t, err)
|
||||
if len(mm) == 0 {
|
||||
t.Fatal("No results found")
|
||||
}
|
||||
|
||||
must(t, rpo.DeleteMessageByID(msg.ID))
|
||||
}
|
||||
|
||||
@@ -20,35 +20,46 @@ func TestOrganisation(t *testing.T) {
|
||||
|
||||
var oo []*types.Organisation
|
||||
|
||||
org.Name = name1
|
||||
{
|
||||
org.Name = name1
|
||||
|
||||
org, err = rpo.CreateOrganisation(org)
|
||||
must(t, err)
|
||||
if org.Name != name1 {
|
||||
t.Fatal("Changes were not stored")
|
||||
org, err = rpo.CreateOrganisation(org)
|
||||
assert(t, err == nil, "CreateOrganisation error: %v", err)
|
||||
assert(t, org.Name == name1, "Changes were not stored")
|
||||
|
||||
{
|
||||
org.Name = name2
|
||||
|
||||
org, err = rpo.UpdateOrganisation(org)
|
||||
assert(t, err == nil, "UpdateOrganisation error: %v", err)
|
||||
assert(t, org.Name == name2, "Changes were not stored")
|
||||
}
|
||||
|
||||
{
|
||||
org, err = rpo.FindOrganisationByID(org.ID)
|
||||
assert(t, err == nil, "FindOrganisationByID error: %v", err)
|
||||
assert(t, org.Name == name2, "Changes were not stored")
|
||||
}
|
||||
|
||||
{
|
||||
oo, err = rpo.FindOrganisations(&types.OrganisationFilter{Query: name2})
|
||||
assert(t, err == nil, "FindOrganisations error: %v", err)
|
||||
assert(t, len(oo) != 0, "No results found")
|
||||
}
|
||||
|
||||
{
|
||||
err = rpo.ArchiveOrganisationByID(org.ID)
|
||||
assert(t, err == nil, "ArchiveOrganisationByID error: %v", err)
|
||||
}
|
||||
|
||||
{
|
||||
err = rpo.UnarchiveOrganisationByID(org.ID)
|
||||
assert(t, err == nil, "UnarchiveOrganisationByID error: %v", err)
|
||||
}
|
||||
|
||||
{
|
||||
err = rpo.DeleteOrganisationByID(org.ID)
|
||||
assert(t, err == nil, "DeleteOrganisationByID error: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
org.Name = name2
|
||||
|
||||
org, err = rpo.UpdateOrganisation(org)
|
||||
must(t, err)
|
||||
if org.Name != name2 {
|
||||
t.Fatal("Changes were not stored")
|
||||
}
|
||||
|
||||
org, err = rpo.FindOrganisationByID(org.ID)
|
||||
must(t, err)
|
||||
if org.Name != name2 {
|
||||
t.Fatal("Changes were not stored")
|
||||
}
|
||||
|
||||
oo, err = rpo.FindOrganisations(&types.OrganisationFilter{Query: name2})
|
||||
must(t, err)
|
||||
if len(oo) == 0 {
|
||||
t.Fatal("No results found")
|
||||
}
|
||||
|
||||
must(t, rpo.ArchiveOrganisationByID(org.ID))
|
||||
must(t, rpo.UnarchiveOrganisationByID(org.ID))
|
||||
must(t, rpo.DeleteOrganisationByID(org.ID))
|
||||
}
|
||||
|
||||
@@ -18,19 +18,21 @@ func TestReaction(t *testing.T) {
|
||||
|
||||
var reaction = ":laugh:"
|
||||
|
||||
react.Reaction = reaction
|
||||
{
|
||||
react.Reaction = reaction
|
||||
react, err = rpo.CreateReaction(react)
|
||||
assert(t, err == nil, "CreateReaction error: %v", err)
|
||||
assert(t, react.Reaction == reaction, "Changes were not stored")
|
||||
|
||||
react, err = rpo.CreateReaction(react)
|
||||
must(t, err)
|
||||
if react.Reaction != reaction {
|
||||
t.Fatal("Changes were not stored")
|
||||
{
|
||||
react, err = rpo.FindReactionByID(react.ID)
|
||||
assert(t, err == nil, "FindReactionByID error: %v", err)
|
||||
assert(t, react.Reaction == reaction, "Changes were not stored")
|
||||
}
|
||||
|
||||
{
|
||||
err = rpo.DeleteReactionByID(react.ID)
|
||||
assert(t, err == nil, "DeleteReactionByID error: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
react, err = rpo.FindReactionByID(react.ID)
|
||||
must(t, err)
|
||||
if react.Reaction != reaction {
|
||||
t.Fatal("Changes were not stored")
|
||||
}
|
||||
|
||||
must(t, rpo.DeleteReactionByID(react.ID))
|
||||
}
|
||||
|
||||
+38
-28
@@ -20,35 +20,45 @@ func TestTeam(t *testing.T) {
|
||||
|
||||
var aa []*types.Team
|
||||
|
||||
team.Name = name1
|
||||
{
|
||||
team.Name = name1
|
||||
team, err = rpo.CreateTeam(team)
|
||||
assert(t, err == nil, "CreateTeam error: %v", err)
|
||||
assert(t, team.Name == name1, "Changes were not stored")
|
||||
|
||||
team, err = rpo.CreateTeam(team)
|
||||
must(t, err)
|
||||
if team.Name != name1 {
|
||||
t.Fatal("Changes were not stored")
|
||||
{
|
||||
team.Name = name2
|
||||
team, err = rpo.UpdateTeam(team)
|
||||
assert(t, err == nil, "UpdateTeam error: %v", err)
|
||||
assert(t, team.Name == name2, "Changes were not stored")
|
||||
}
|
||||
|
||||
{
|
||||
team, err = rpo.FindTeamByID(team.ID)
|
||||
assert(t, err == nil, "FindTeamByID error: %v", err)
|
||||
assert(t, team.Name == name2, "Changes were not stored")
|
||||
}
|
||||
|
||||
{
|
||||
aa, err = rpo.FindTeams(&types.TeamFilter{Query: name2})
|
||||
assert(t, err == nil, "FindTeams error: %v", err)
|
||||
assert(t, len(aa) > 0, "No results found")
|
||||
}
|
||||
|
||||
{
|
||||
err = rpo.ArchiveTeamByID(team.ID)
|
||||
assert(t, err == nil, "ArchiveTeamByID error: %v", err)
|
||||
}
|
||||
|
||||
{
|
||||
err = rpo.UnarchiveTeamByID(team.ID)
|
||||
assert(t, err == nil, "UnarchiveTeamByID error: %v", err)
|
||||
}
|
||||
|
||||
{
|
||||
err = rpo.DeleteTeamByID(team.ID)
|
||||
assert(t, err == nil, "DeleteTeamByID error: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
team.Name = name2
|
||||
|
||||
team, err = rpo.UpdateTeam(team)
|
||||
must(t, err)
|
||||
if team.Name != name2 {
|
||||
t.Fatal("Changes were not stored")
|
||||
}
|
||||
|
||||
team, err = rpo.FindTeamByID(team.ID)
|
||||
must(t, err)
|
||||
if team.Name != name2 {
|
||||
t.Fatal("Changes were not stored")
|
||||
}
|
||||
|
||||
aa, err = rpo.FindTeams(&types.TeamFilter{Query: name2})
|
||||
must(t, err)
|
||||
if len(aa) == 0 {
|
||||
t.Fatal("No results found")
|
||||
}
|
||||
|
||||
must(t, rpo.ArchiveTeamByID(team.ID))
|
||||
must(t, rpo.UnarchiveTeamByID(team.ID))
|
||||
must(t, rpo.DeleteTeamByID(team.ID))
|
||||
}
|
||||
|
||||
+30
-29
@@ -14,39 +14,40 @@ func TestUser(t *testing.T) {
|
||||
}
|
||||
|
||||
rpo := New()
|
||||
team := &types.Team{}
|
||||
team := &types.User{}
|
||||
|
||||
var name1, name2 = "Test user v1", "Test user v2"
|
||||
|
||||
var aa []*types.Team
|
||||
var aa []*types.User
|
||||
|
||||
team.Name = name1
|
||||
{
|
||||
team.Username = name1
|
||||
team, err = rpo.CreateUser(team)
|
||||
assert(t, err == nil, "CreateUser error: %v", err)
|
||||
assert(t, team.Username == name1, "Changes were not stored")
|
||||
|
||||
team, err = rpo.CreateTeam(team)
|
||||
must(t, err)
|
||||
if team.Name != name1 {
|
||||
t.Fatal("Changes were not stored")
|
||||
{
|
||||
team.Username = name2
|
||||
team, err = rpo.UpdateUser(team)
|
||||
assert(t, err == nil, "UpdateUser error: %v", err)
|
||||
assert(t, team.Username == name2, "Changes were not stored")
|
||||
}
|
||||
|
||||
{
|
||||
team, err = rpo.FindUserByID(team.ID)
|
||||
assert(t, err == nil, "FindUserByID error: %v", err)
|
||||
assert(t, team.Username == name2, "Changes were not stored")
|
||||
}
|
||||
|
||||
{
|
||||
aa, err = rpo.FindUsers(&types.UserFilter{Query: name2})
|
||||
assert(t, err == nil, "FindUsers error: %v", err)
|
||||
assert(t, len(aa) > 0, "No results found")
|
||||
}
|
||||
|
||||
{
|
||||
err = rpo.DeleteUserByID(team.ID)
|
||||
assert(t, err == nil, "DeleteUserByID error: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
team.Name = name2
|
||||
|
||||
team, err = rpo.UpdateTeam(team)
|
||||
must(t, err)
|
||||
if team.Name != name2 {
|
||||
t.Fatal("Changes were not stored")
|
||||
}
|
||||
|
||||
team, err = rpo.FindTeamByID(team.ID)
|
||||
must(t, err)
|
||||
if team.Name != name2 {
|
||||
t.Fatal("Changes were not stored")
|
||||
}
|
||||
|
||||
aa, err = rpo.FindTeams(&types.TeamFilter{Query: name2})
|
||||
must(t, err)
|
||||
if len(aa) == 0 {
|
||||
t.Fatal("No results found")
|
||||
}
|
||||
|
||||
must(t, rpo.DeleteTeamByID(team.ID))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user