From 0ff52b71f2c0e970b1f0d43793c019bbed93e112 Mon Sep 17 00:00:00 2001 From: tobi <31960611+tsmethurst@users.noreply.github.com> Date: Wed, 27 Dec 2023 11:23:52 +0100 Subject: [chore] Refactor HTML templates and CSS (#2480) * [chore] Refactor HTML templates and CSS * eslint * ignore "Local" * rss tests * fiddle with OG just a tiny bit * dick around with polls a bit more so SR stops saying "clickable" * remove break * oh lord * don't lazy load avatar * fix ogmeta tests * clean up some cruft * catch remaining calls to c.HTML * fix error rendering + stack overflow in tag * allow templating attributes * fix indent * set aria-hidden on status complementary content, since it's already present in the label anyway * tidy up templating calls a little * try to make styling a bit more consistent + readable * fix up some remaining CSS issues * fix up reports --- internal/web/opengraph_test.go | 116 ----------------------------------------- 1 file changed, 116 deletions(-) delete mode 100644 internal/web/opengraph_test.go (limited to 'internal/web/opengraph_test.go') diff --git a/internal/web/opengraph_test.go b/internal/web/opengraph_test.go deleted file mode 100644 index 06e97cdce..000000000 --- a/internal/web/opengraph_test.go +++ /dev/null @@ -1,116 +0,0 @@ -// GoToSocial -// Copyright (C) GoToSocial Authors admin@gotosocial.org -// SPDX-License-Identifier: AGPL-3.0-or-later -// -// 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 . - -package web - -import ( - "fmt" - "testing" - - "github.com/stretchr/testify/suite" - apimodel "github.com/superseriousbusiness/gotosocial/internal/api/model" -) - -type OpenGraphTestSuite struct { - suite.Suite -} - -func (suite *OpenGraphTestSuite) TestParseDescription() { - tests := []struct { - name, in, exp string - }{ - {name: "shellcmd", in: `echo '\e]8;;http://example.com\e\This is a link\e]8;;\e'`, exp: `echo '\e]8;;http://example.com\e\This is a link\e]8;;\e'`}, - {name: "newlines", in: "test\n\ntest\ntest", exp: "test test test"}, - } - - for _, tt := range tests { - tt := tt - suite.Run(tt.name, func() { - suite.Equal(fmt.Sprintf("content=\"%s\"", tt.exp), parseDescription(tt.in)) - }) - } -} - -func (suite *OpenGraphTestSuite) TestWithAccountWithNote() { - baseMeta := ogBase(&apimodel.InstanceV1{ - AccountDomain: "example.org", - Languages: []string{"en"}, - }) - - accountMeta := baseMeta.withAccount(&apimodel.Account{ - Acct: "example_account", - DisplayName: "example person!!", - URL: "https://example.org/@example_account", - Note: "

This is my profile, read it and weep! Weep then!

", - Username: "example_account", - }) - - suite.EqualValues(ogMeta{ - Title: "example person!! (@example_account@example.org)", - Type: "profile", - Locale: "en", - URL: "https://example.org/@example_account", - SiteName: "example.org", - Description: "content=\"This is my profile, read it and weep! Weep then!\"", - Image: "", - ImageWidth: "", - ImageHeight: "", - ImageAlt: "Avatar for example_account", - ArticlePublisher: "", - ArticleAuthor: "", - ArticleModifiedTime: "", - ArticlePublishedTime: "", - ProfileUsername: "example_account", - }, *accountMeta) -} - -func (suite *OpenGraphTestSuite) TestWithAccountNoNote() { - baseMeta := ogBase(&apimodel.InstanceV1{ - AccountDomain: "example.org", - Languages: []string{"en"}, - }) - - accountMeta := baseMeta.withAccount(&apimodel.Account{ - Acct: "example_account", - DisplayName: "example person!!", - URL: "https://example.org/@example_account", - Note: "", // <- empty - Username: "example_account", - }) - - suite.EqualValues(ogMeta{ - Title: "example person!! (@example_account@example.org)", - Type: "profile", - Locale: "en", - URL: "https://example.org/@example_account", - SiteName: "example.org", - Description: "content=\"This GoToSocial user hasn't written a bio yet!\"", - Image: "", - ImageWidth: "", - ImageHeight: "", - ImageAlt: "Avatar for example_account", - ArticlePublisher: "", - ArticleAuthor: "", - ArticleModifiedTime: "", - ArticlePublishedTime: "", - ProfileUsername: "example_account", - }, *accountMeta) -} - -func TestOpenGraphTestSuite(t *testing.T) { - suite.Run(t, &OpenGraphTestSuite{}) -} -- cgit v1.2.3