From d8113c11e4d84a6d04d56b58d337c235154a535b Mon Sep 17 00:00:00 2001 From: tobi <31960611+tsmethurst@users.noreply.github.com> Date: Fri, 7 Mar 2025 15:04:34 +0100 Subject: [feature] Parse content warning to HTML, serialize via client API as plaintext (#3876) * [feature] Parse content warning as HTML, serialize via API to plaintext * tidy up some cruft * whoops * oops * i'm da joker baybee * clemency muy lorde * rename some of the text functions for clarity * jiggle the opts * fiddle de deee * hopefully the last test fix i ever have to do in my beautiful life --- internal/text/sanitize_test.go | 83 ++---------------------------------------- 1 file changed, 3 insertions(+), 80 deletions(-) (limited to 'internal/text/sanitize_test.go') diff --git a/internal/text/sanitize_test.go b/internal/text/sanitize_test.go index ae49c942c..773713353 100644 --- a/internal/text/sanitize_test.go +++ b/internal/text/sanitize_test.go @@ -36,95 +36,18 @@ type SanitizeTestSuite struct { } func (suite *SanitizeTestSuite) TestSanitizeOutgoing() { - s := text.SanitizeToHTML(sanitizeOutgoing) + s := text.SanitizeHTML(sanitizeOutgoing) suite.Equal(sanitizedOutgoing, s) } func (suite *SanitizeTestSuite) TestSanitizeHTML() { - s := text.SanitizeToHTML(sanitizeHTML) + s := text.SanitizeHTML(sanitizeHTML) suite.Equal(sanitizedHTML, s) } -func (suite *SanitizeTestSuite) TestSanitizeCaption1() { - dodgyCaption := "this is just a normal caption ;)" - sanitized := text.SanitizeToPlaintext(dodgyCaption) - suite.Equal("this is just a normal caption ;)", sanitized) -} - -func (suite *SanitizeTestSuite) TestSanitizeCaption2() { - dodgyCaption := "here's a LOUD caption" - sanitized := text.SanitizeToPlaintext(dodgyCaption) - suite.Equal("here's a LOUD caption", sanitized) -} - -func (suite *SanitizeTestSuite) TestSanitizeCaption3() { - dodgyCaption := "" - sanitized := text.SanitizeToPlaintext(dodgyCaption) - suite.Equal("", sanitized) -} - -func (suite *SanitizeTestSuite) TestSanitizeCaption4() { - dodgyCaption := ` - - -here is -a multi line -caption -with some newlines - - - -` - sanitized := text.SanitizeToPlaintext(dodgyCaption) - suite.Equal("here is\na multi line\ncaption\nwith some newlines", sanitized) -} - -func (suite *SanitizeTestSuite) TestSanitizeCaption5() { - // html-escaped: " hello world" - dodgyCaption := `<script>console.log('aha!')</script> hello world` - sanitized := text.SanitizeToPlaintext(dodgyCaption) - suite.Equal("hello world", sanitized) -} - -func (suite *SanitizeTestSuite) TestSanitizeCaption6() { - // html-encoded: " hello world" - dodgyCaption := `<script>console.log('aha!')</script> hello world` - sanitized := text.SanitizeToPlaintext(dodgyCaption) - suite.Equal("hello world", sanitized) -} - -func (suite *SanitizeTestSuite) TestSanitizeCustomCSS() { - customCSS := `.toot .username { - color: var(--link_fg); - line-height: 2rem; - margin-top: -0.5rem; - align-self: start; - - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; -}` - sanitized := text.SanitizeToPlaintext(customCSS) - suite.Equal(customCSS, sanitized) // should be the same as it was before -} - -func (suite *SanitizeTestSuite) TestSanitizeNaughtyCustomCSS1() { - // try to break out of pee pee poo poo