github.com/masterhung0112/hk_server/v5@v5.0.0-20220302090640-ec71aef15e1c/model/emoji_test.go (about) 1 // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. 2 // See LICENSE.txt for license information. 3 4 package model 5 6 import ( 7 "strings" 8 "testing" 9 10 "github.com/stretchr/testify/require" 11 ) 12 13 func TestEmojiIsValid(t *testing.T) { 14 emoji := Emoji{ 15 Id: NewId(), 16 CreateAt: 1234, 17 UpdateAt: 1234, 18 DeleteAt: 0, 19 CreatorId: NewId(), 20 Name: "name", 21 } 22 23 require.Nil(t, emoji.IsValid()) 24 25 emoji.Id = "1234" 26 require.NotNil(t, emoji.IsValid()) 27 28 emoji.Id = NewId() 29 emoji.CreateAt = 0 30 require.NotNil(t, emoji.IsValid()) 31 32 emoji.CreateAt = 1234 33 emoji.UpdateAt = 0 34 require.NotNil(t, emoji.IsValid()) 35 36 emoji.UpdateAt = 1234 37 emoji.CreatorId = strings.Repeat("1", 27) 38 require.NotNil(t, emoji.IsValid()) 39 40 emoji.CreatorId = NewId() 41 emoji.Name = strings.Repeat("1", 65) 42 require.NotNil(t, emoji.IsValid()) 43 44 emoji.Name = "" 45 require.NotNil(t, emoji.IsValid()) 46 47 emoji.Name = strings.Repeat("1", 64) 48 require.Nil(t, emoji.IsValid()) 49 50 emoji.Name = "name-" 51 require.Nil(t, emoji.IsValid()) 52 53 emoji.Name = "name+" 54 require.Nil(t, emoji.IsValid()) 55 emoji.Name = "name_" 56 require.Nil(t, emoji.IsValid()) 57 58 emoji.Name = "name:" 59 require.NotNil(t, emoji.IsValid()) 60 61 emoji.Name = "croissant" 62 require.NotNil(t, emoji.IsValid()) 63 }