github.com/lologarithm/mattermost-server@v5.3.2-0.20181002060438-c82a84ed765b+incompatible/model/service_terms_test.go (about) 1 // Copyright (c) 2016-present Mattermost, Inc. All Rights Reserved. 2 // See License.txt for license information. 3 4 package model 5 6 import ( 7 "github.com/stretchr/testify/assert" 8 "strings" 9 "testing" 10 ) 11 12 func TestServiceTermsIsValid(t *testing.T) { 13 s := ServiceTerms{} 14 15 if err := s.IsValid(); err == nil { 16 t.Fatal("should be invalid") 17 } 18 19 s.Id = NewId() 20 if err := s.IsValid(); err == nil { 21 t.Fatal("should be invalid") 22 } 23 24 s.CreateAt = GetMillis() 25 if err := s.IsValid(); err == nil { 26 t.Fatal("should be invalid") 27 } 28 29 s.UserId = NewId() 30 if err := s.IsValid(); err != nil { 31 t.Fatal("should be invalid") 32 } 33 34 s.Text = strings.Repeat("0", POST_MESSAGE_MAX_RUNES_V2+1) 35 if err := s.IsValid(); err == nil { 36 t.Fatal("should be invalid") 37 } 38 39 s.Text = strings.Repeat("0", POST_MESSAGE_MAX_RUNES_V2) 40 if err := s.IsValid(); err != nil { 41 t.Fatal(err) 42 } 43 44 s.Text = "test" 45 if err := s.IsValid(); err != nil { 46 t.Fatal(err) 47 } 48 } 49 50 func TestServiceTermsJson(t *testing.T) { 51 o := ServiceTerms{ 52 Id: NewId(), 53 Text: NewId(), 54 CreateAt: GetMillis(), 55 UserId: NewId(), 56 } 57 j := o.ToJson() 58 ro := ServiceTermsFromJson(strings.NewReader(j)) 59 60 assert.NotNil(t, ro) 61 assert.Equal(t, o, *ro) 62 }