Merge branch 'master' into mark-as-unread

Этот коммит содержится в:
Harrison Healey
2019-10-18 16:07:41 -04:00
родитель e5dbd45f94 3c06fc28ad
Коммит 6ee681e50b
20 изменённых файлов: 522 добавлений и 273 удалений

Просмотреть файл

@@ -6,6 +6,8 @@ package storetest
import (
"testing"
"github.com/stretchr/testify/require"
"github.com/mattermost/mattermost-server/model"
"github.com/mattermost/mattermost-server/store"
)
@@ -30,13 +32,11 @@ func testCommandStoreSave(t *testing.T, ss store.Store) {
o1.URL = "http://nowhere.com/"
o1.Trigger = "trigger"
if _, err := ss.Command().Save(&o1); err != nil {
t.Fatal("couldn't save item", err)
}
_, err := ss.Command().Save(&o1)
require.Nil(t, err, "couldn't save item")
if _, err := ss.Command().Save(&o1); err == nil {
t.Fatal("shouldn't be able to update from save")
}
_, err = ss.Command().Save(&o1)
require.NotNil(t, err, "shouldn't be able to update from save")
}
func testCommandStoreGet(t *testing.T, ss store.Store) {
@@ -48,21 +48,14 @@ func testCommandStoreGet(t *testing.T, ss store.Store) {
o1.Trigger = "trigger"
o1, err := ss.Command().Save(o1)
if err != nil {
t.Fatal(err)
}
require.Nil(t, err)
if r1, err := ss.Command().Get(o1.Id); err != nil {
t.Fatal(err)
} else {
if r1.CreateAt != o1.CreateAt {
t.Fatal("invalid returned command")
}
}
r1, err := ss.Command().Get(o1.Id)
require.Nil(t, err)
require.Equal(t, r1.CreateAt, o1.CreateAt, "invalid returned command")
if _, err := ss.Command().Get("123"); err == nil {
t.Fatal("Missing id should have failed")
}
_, err = ss.Command().Get("123")
require.NotNil(t, err, "Mising id should have failed")
}
func testCommandStoreGetByTeam(t *testing.T, ss store.Store) {
@@ -74,25 +67,16 @@ func testCommandStoreGetByTeam(t *testing.T, ss store.Store) {
o1.Trigger = "trigger"
o1, err := ss.Command().Save(o1)
if err != nil {
t.Fatal(err)
}
require.Nil(t, err)
if r1, err := ss.Command().GetByTeam(o1.TeamId); err != nil {
t.Fatal(err)
} else {
if r1[0].CreateAt != o1.CreateAt {
t.Fatal("invalid returned command")
}
}
r1, err := ss.Command().GetByTeam(o1.TeamId)
require.Nil(t, err)
require.NotEmpty(t, r1, "no command returned")
require.Equal(t, r1[0].CreateAt, o1.CreateAt, "invalid returned command")
if result, err := ss.Command().GetByTeam("123"); err != nil {
t.Fatal(err)
} else {
if len(result) != 0 {
t.Fatal("no commands should have returned")
}
}
result, err := ss.Command().GetByTeam("123")
require.Nil(t, err)
require.Empty(t, result, "no commands should have returned")
}
func testCommandStoreGetByTrigger(t *testing.T, ss store.Store) {
@@ -111,30 +95,21 @@ func testCommandStoreGetByTrigger(t *testing.T, ss store.Store) {
o2.Trigger = "trigger1"
o1, err := ss.Command().Save(o1)
if err != nil {
t.Fatal(err)
}
require.Nil(t, err)
_, err = ss.Command().Save(o2)
if err != nil {
t.Fatal(err)
}
require.Nil(t, err)
var r1 *model.Command
if r1, err = ss.Command().GetByTrigger(o1.TeamId, o1.Trigger); err != nil {
t.Fatal(err)
} else {
if r1.Id != o1.Id {
t.Fatal("invalid returned command")
}
}
r1, err = ss.Command().GetByTrigger(o1.TeamId, o1.Trigger)
require.Nil(t, err)
require.Equal(t, r1.Id, o1.Id, "invalid returned command")
err = ss.Command().Delete(o1.Id, model.GetMillis())
if err != nil {
t.Fatal(err)
}
require.Nil(t, err)
if _, err := ss.Command().GetByTrigger(o1.TeamId, o1.Trigger); err == nil {
t.Fatal("no commands should have returned")
}
_, err = ss.Command().GetByTrigger(o1.TeamId, o1.Trigger)
require.NotNil(t, err, "no commands should have returned")
}
func testCommandStoreDelete(t *testing.T, ss store.Store) {
@@ -146,26 +121,17 @@ func testCommandStoreDelete(t *testing.T, ss store.Store) {
o1.Trigger = "trigger"
o1, err := ss.Command().Save(o1)
if err != nil {
t.Fatal(err)
}
require.Nil(t, err)
if r1, err := ss.Command().Get(o1.Id); err != nil {
t.Fatal(err)
} else {
if r1.CreateAt != o1.CreateAt {
t.Fatal("invalid returned command")
}
}
r1, err := ss.Command().Get(o1.Id)
require.Nil(t, err)
require.Equal(t, r1.CreateAt, o1.CreateAt, "invalid returned command")
if err := ss.Command().Delete(o1.Id, model.GetMillis()); err != nil {
t.Fatal(err)
}
err = ss.Command().Delete(o1.Id, model.GetMillis())
require.Nil(t, err)
if r3, err := ss.Command().Get(o1.Id); err == nil {
t.Log(r3)
t.Fatal("Missing id should have failed")
}
_, err = ss.Command().Get(o1.Id)
require.NotNil(t, err, "Missing id should have failed")
}
func testCommandStoreDeleteByTeam(t *testing.T, ss store.Store) {
@@ -177,26 +143,17 @@ func testCommandStoreDeleteByTeam(t *testing.T, ss store.Store) {
o1.Trigger = "trigger"
o1, err := ss.Command().Save(o1)
if err != nil {
t.Fatal(err)
}
require.Nil(t, err)
if r1, err := ss.Command().Get(o1.Id); err != nil {
t.Fatal(err)
} else {
if r1.CreateAt != o1.CreateAt {
t.Fatal("invalid returned command")
}
}
r1, err := ss.Command().Get(o1.Id)
require.Nil(t, err)
require.Equal(t, r1.CreateAt, o1.CreateAt, "invalid returned command")
if err := ss.Command().PermanentDeleteByTeam(o1.TeamId); err != nil {
t.Fatal(err)
}
err = ss.Command().PermanentDeleteByTeam(o1.TeamId)
require.Nil(t, err)
if r3, err := ss.Command().Get(o1.Id); err == nil {
t.Log(r3)
t.Fatal("Missing id should have failed")
}
_, err = ss.Command().Get(o1.Id)
require.NotNil(t, err, "Missing id should have failed")
}
func testCommandStoreDeleteByUser(t *testing.T, ss store.Store) {
@@ -208,26 +165,17 @@ func testCommandStoreDeleteByUser(t *testing.T, ss store.Store) {
o1.Trigger = "trigger"
o1, err := ss.Command().Save(o1)
if err != nil {
t.Fatal(err)
}
require.Nil(t, err)
if r1, err := ss.Command().Get(o1.Id); err != nil {
t.Fatal(err)
} else {
if r1.CreateAt != o1.CreateAt {
t.Fatal("invalid returned command")
}
}
r1, err := ss.Command().Get(o1.Id)
require.Nil(t, err)
require.Equal(t, r1.CreateAt, o1.CreateAt, "invalid returned command")
if err := ss.Command().PermanentDeleteByUser(o1.CreatorId); err != nil {
t.Fatal(err)
}
err = ss.Command().PermanentDeleteByUser(o1.CreatorId)
require.Nil(t, err)
if r3, err := ss.Command().Get(o1.Id); err == nil {
t.Log(r3)
t.Fatal("Missing id should have failed")
}
_, err = ss.Command().Get(o1.Id)
require.NotNil(t, err, "Missing id should have failed")
}
func testCommandStoreUpdate(t *testing.T, ss store.Store) {
@@ -239,21 +187,17 @@ func testCommandStoreUpdate(t *testing.T, ss store.Store) {
o1.Trigger = "trigger"
o1, err := ss.Command().Save(o1)
if err != nil {
t.Fatal(err)
}
require.Nil(t, err)
o1.Token = model.NewId()
if _, err := ss.Command().Update(o1); err != nil {
t.Fatal(err)
}
_, err = ss.Command().Update(o1)
require.Nil(t, err)
o1.URL = "junk"
if _, err := ss.Command().Update(o1); err == nil {
t.Fatal("should have failed - bad URL")
}
_, err = ss.Command().Update(o1)
require.NotNil(t, err, "should have failed - bad URL")
}
func testCommandCount(t *testing.T, ss store.Store) {
@@ -265,23 +209,13 @@ func testCommandCount(t *testing.T, ss store.Store) {
o1.Trigger = "trigger"
o1, err := ss.Command().Save(o1)
if err != nil {
t.Fatal(err)
}
require.Nil(t, err)
if r1, err := ss.Command().AnalyticsCommandCount(""); err != nil {
t.Fatal(err)
} else {
if r1 == 0 {
t.Fatal("should be at least 1 command")
}
}
r1, err := ss.Command().AnalyticsCommandCount("")
require.Nil(t, err)
require.NotZero(t, r1, "should be at least 1 command")
if r2, err := ss.Command().AnalyticsCommandCount(o1.TeamId); err != nil {
t.Fatal(err)
} else {
if r2 != 1 {
t.Fatal("should be 1 command")
}
}
r2, err := ss.Command().AnalyticsCommandCount(o1.TeamId)
require.Nil(t, err)
require.Equal(t, r2, int64(1), "should be 1 command")
}

Просмотреть файл

@@ -21,19 +21,16 @@ func testLicenseStoreSave(t *testing.T, ss store.Store) {
l1.Id = model.NewId()
l1.Bytes = "junk"
if _, err := ss.License().Save(&l1); err != nil {
t.Fatal("couldn't save license record", err)
}
_, err := ss.License().Save(&l1)
require.Nil(t, err, "couldn't save license record")
if _, err := ss.License().Save(&l1); err != nil {
t.Fatal("shouldn't fail on trying to save existing license record", err)
}
_, err = ss.License().Save(&l1)
require.Nil(t, err, "shouldn't fail on trying to save existing license record")
l1.Id = ""
if _, err := ss.License().Save(&l1); err == nil {
t.Fatal("should fail on invalid license", err)
}
_, err = ss.License().Save(&l1)
require.NotNil(t, err, "should fail on invalid license")
}
func testLicenseStoreGet(t *testing.T, ss store.Store) {
@@ -44,15 +41,11 @@ func testLicenseStoreGet(t *testing.T, ss store.Store) {
_, err := ss.License().Save(&l1)
require.Nil(t, err)
if record, err := ss.License().Get(l1.Id); err != nil {
t.Fatal("couldn't get license", err)
} else {
if record.Bytes != l1.Bytes {
t.Fatal("license bytes didn't match")
}
}
record, err := ss.License().Get(l1.Id)
require.Nil(t, err, "couldn't get license")
if _, err := ss.License().Get("missing"); err == nil {
t.Fatal("should fail on get license", err)
}
require.Equal(t, record.Bytes, l1.Bytes, "license bytes didn't match")
_, err = ss.License().Get("missing")
require.NotNil(t, err, "should fail on get license")
}