summaryrefslogtreecommitdiff
path: root/internal/text/caption_test.go
diff options
context:
space:
mode:
authorLibravatar tobi <31960611+tsmethurst@users.noreply.github.com>2022-05-26 11:37:13 +0200
committerLibravatar GitHub <noreply@github.com>2022-05-26 11:37:13 +0200
commit5668ce1ec701ed12eb099020e8a322de08e6f810 (patch)
treef056890ae94f464176750be17b06292c5b9160d7 /internal/text/caption_test.go
parent[security] Set SameSite to `strict` instead of browser default (#606) (diff)
downloadgotosocial-5668ce1ec701ed12eb099020e8a322de08e6f810.tar.xz
[bugfix] Fix HTML escaping in instance title (#607)
* move caption sanitization -> sanitize.go * use sanitizeplaintext rather than removehtml * rename sanitizecaption to sanitizeplaintext * avoid removing html twice from statuses * unexport remoteHTML it's no longer used outside the text package so this makes it less confusing * test instance PATCH
Diffstat (limited to 'internal/text/caption_test.go')
-rw-r--r--internal/text/caption_test.go82
1 files changed, 0 insertions, 82 deletions
diff --git a/internal/text/caption_test.go b/internal/text/caption_test.go
deleted file mode 100644
index f1337df09..000000000
--- a/internal/text/caption_test.go
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- GoToSocial
- Copyright (C) 2021-2022 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 text_test
-
-import (
- "testing"
-
- "github.com/stretchr/testify/suite"
- "github.com/superseriousbusiness/gotosocial/internal/text"
-)
-
-type CaptionTestSuite struct {
- suite.Suite
-}
-
-func (suite *CaptionTestSuite) TestSanitizeCaption1() {
- dodgyCaption := "<script>console.log('haha!')</script>this is just a normal caption ;)"
- sanitized := text.SanitizeCaption(dodgyCaption)
- suite.Equal("this is just a normal caption ;)", sanitized)
-}
-
-func (suite *CaptionTestSuite) TestSanitizeCaption2() {
- dodgyCaption := "<em>here's a LOUD caption</em>"
- sanitized := text.SanitizeCaption(dodgyCaption)
- suite.Equal("here's a LOUD caption", sanitized)
-}
-
-func (suite *CaptionTestSuite) TestSanitizeCaption3() {
- dodgyCaption := ""
- sanitized := text.SanitizeCaption(dodgyCaption)
- suite.Equal("", sanitized)
-}
-
-func (suite *CaptionTestSuite) TestSanitizeCaption4() {
- dodgyCaption := `
-
-
-here is
-a multi line
-caption
-with some newlines
-
-
-
-`
- sanitized := text.SanitizeCaption(dodgyCaption)
- suite.Equal("here is\na multi line\ncaption\nwith some newlines", sanitized)
-}
-
-func (suite *CaptionTestSuite) TestSanitizeCaption5() {
- // html-escaped: "<script>console.log('aha!')</script> hello world"
- dodgyCaption := `&lt;script&gt;console.log(&apos;aha!&apos;)&lt;/script&gt; hello world`
- sanitized := text.SanitizeCaption(dodgyCaption)
- suite.Equal("hello world", sanitized)
-}
-
-func (suite *CaptionTestSuite) TestSanitizeCaption6() {
- // html-encoded: "<script>console.log('aha!')</script> hello world"
- dodgyCaption := `&lt;&#115;&#99;&#114;&#105;&#112;&#116;&gt;&#99;&#111;&#110;&#115;&#111;&#108;&#101;&period;&#108;&#111;&#103;&lpar;&apos;&#97;&#104;&#97;&excl;&apos;&rpar;&lt;&sol;&#115;&#99;&#114;&#105;&#112;&#116;&gt;&#32;&#104;&#101;&#108;&#108;&#111;&#32;&#119;&#111;&#114;&#108;&#100;`
- sanitized := text.SanitizeCaption(dodgyCaption)
- suite.Equal("hello world", sanitized)
-}
-
-func TestCaptionTestSuite(t *testing.T) {
- suite.Run(t, new(CaptionTestSuite))
-}