summaryrefslogtreecommitdiff
path: root/internal/gtsmodel/tag_test.go
diff options
context:
space:
mode:
authorLibravatar tsmethurst <tobi.smethurst@klarrio.com>2021-09-01 18:29:25 +0200
committerLibravatar tsmethurst <tobi.smethurst@klarrio.com>2021-09-01 18:29:25 +0200
commit4696e1a7b389599fa981f334b343daa911b11f5d (patch)
treed1ca0c896cdacb82ad7c64ee150aa32b37d4c053 /internal/gtsmodel/tag_test.go
parentmove oauth models into gtsmodel (diff)
downloadgotosocial-4696e1a7b389599fa981f334b343daa911b11f5d.tar.xz
moving stuff around
Diffstat (limited to 'internal/gtsmodel/tag_test.go')
-rw-r--r--internal/gtsmodel/tag_test.go92
1 files changed, 0 insertions, 92 deletions
diff --git a/internal/gtsmodel/tag_test.go b/internal/gtsmodel/tag_test.go
deleted file mode 100644
index baafe55bd..000000000
--- a/internal/gtsmodel/tag_test.go
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- GoToSocial
- Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU Affero General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU Affero General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-package gtsmodel_test
-
-import (
- "testing"
- "time"
-
- "github.com/stretchr/testify/suite"
- "github.com/superseriousbusiness/gotosocial/internal/gtsmodel"
-)
-
-func happyTag() *gtsmodel.Tag {
- return &gtsmodel.Tag{
- ID: "01FE91RJR88PSEEE30EV35QR8N",
- CreatedAt: time.Now(),
- UpdatedAt: time.Now(),
- URL: "https://example.org/tags/some_tag",
- Name: "some_tag",
- FirstSeenFromAccountID: "01FE91SR5P2GW06K3AJ98P72MT",
- Useable: true,
- Listable: true,
- LastStatusAt: time.Now(),
- }
-}
-
-type TagValidateTestSuite struct {
- suite.Suite
-}
-
-func (suite *TagValidateTestSuite) TestValidateTagHappyPath() {
- // no problem here
- t := happyTag()
- err := gtsmodel.ValidateStruct(*t)
- suite.NoError(err)
-}
-
-func (suite *TagValidateTestSuite) TestValidateTagNoName() {
- t := happyTag()
- t.Name = ""
-
- err := gtsmodel.ValidateStruct(*t)
- suite.EqualError(err, "Key: 'Tag.Name' Error:Field validation for 'Name' failed on the 'required' tag")
-}
-
-func (suite *TagValidateTestSuite) TestValidateTagBadURL() {
- t := happyTag()
-
- t.URL = ""
- err := gtsmodel.ValidateStruct(*t)
- suite.EqualError(err, "Key: 'Tag.URL' Error:Field validation for 'URL' failed on the 'required' tag")
-
- t.URL = "no-schema.com"
- err = gtsmodel.ValidateStruct(*t)
- suite.EqualError(err, "Key: 'Tag.URL' Error:Field validation for 'URL' failed on the 'url' tag")
-
- t.URL = "justastring"
- err = gtsmodel.ValidateStruct(*t)
- suite.EqualError(err, "Key: 'Tag.URL' Error:Field validation for 'URL' failed on the 'url' tag")
-
- t.URL = "https://aaa\n\n\naaaaaaaa"
- err = gtsmodel.ValidateStruct(*t)
- suite.EqualError(err, "Key: 'Tag.URL' Error:Field validation for 'URL' failed on the 'url' tag")
-}
-
-func (suite *TagValidateTestSuite) TestValidateTagNoFirstSeenFromAccountID() {
- t := happyTag()
- t.FirstSeenFromAccountID = ""
-
- err := gtsmodel.ValidateStruct(*t)
- suite.NoError(err)
-}
-
-func TestTagValidateTestSuite(t *testing.T) {
- suite.Run(t, new(TagValidateTestSuite))
-}