diff options
author | 2023-02-03 20:03:05 +0000 | |
---|---|---|
committer | 2023-02-03 20:03:05 +0000 | |
commit | 33aee1b1e974e99182a95ce1a05e2be924d19bb2 (patch) | |
tree | 1471623039f70325a0b7a1c25dd4fe3afc883970 /internal/validate/account_test.go | |
parent | [feature/frogend] (Mastodon) domain block CSV import (#1390) (diff) | |
download | gotosocial-33aee1b1e974e99182a95ce1a05e2be924d19bb2.tar.xz |
[chore] reformat GetAccount() functionality, support updating accounts based on last_fetch (#1411)
* reformat GetAccount() functionality, and add UpdateAccount() function.
* use fetched_at instead of last_webfingered_at
* catch local "not found" errors. small formatting / error string changes
* remove now unused error type
* return nil when wrapping nil error
* update expected error messages
* return correct url for foss satan webfinger
* add AP model for Some_User
* normalize local domain
* return notretrievable where appropriate
* expose NewErrNotRetrievable
* ensure webfinger for new accounts searched by uri
* update local account short circuit
* allow enrich to fail for already-known accounts
* remove unused LastWebfingeredAt
* expose test maps on mock http client
* update Update test
* reformat GetAccount() functionality, and add UpdateAccount() function.
* use fetched_at instead of last_webfingered_at
* catch local "not found" errors. small formatting / error string changes
* remove nil error checks (we shouldn't be passing nil errors to newError() initializers)
* remove mutex unlock on transport init fail (it hasn't yet been locked!)
* woops add back the error wrapping to use ErrNotRetrievable
* caches were never being started... :see_no_evil:
---------
Signed-off-by: kim <grufwub@gmail.com>
Co-authored-by: tsmethurst <tobi.smethurst@protonmail.com>
Diffstat (limited to 'internal/validate/account_test.go')
-rw-r--r-- | internal/validate/account_test.go | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/internal/validate/account_test.go b/internal/validate/account_test.go index 5303b4126..3c918e1fc 100644 --- a/internal/validate/account_test.go +++ b/internal/validate/account_test.go @@ -66,7 +66,7 @@ func happyAccount() *gtsmodel.Account { StatusFormat: "plain", URI: "http://localhost:8080/users/the_mighty_zork", URL: "http://localhost:8080/@the_mighty_zork", - LastWebfingeredAt: time.Time{}, + FetchedAt: time.Time{}, InboxURI: "http://localhost:8080/users/the_mighty_zork/inbox", OutboxURI: "http://localhost:8080/users/the_mighty_zork/outbox", FollowersURI: "http://localhost:8080/users/the_mighty_zork/followers", @@ -117,14 +117,14 @@ func (suite *AccountValidateTestSuite) TestValidateAccountNoCreatedAt() { suite.NoError(err) } -// LastWebfingeredAt must be defined if remote account +// FetchedAt must be defined if remote account func (suite *AccountValidateTestSuite) TestValidateAccountNoWebfingeredAt() { a := happyAccount() a.Domain = "example.org" - a.LastWebfingeredAt = time.Time{} + a.FetchedAt = time.Time{} err := validate.Struct(*a) - suite.EqualError(err, "Key: 'Account.LastWebfingeredAt' Error:Field validation for 'LastWebfingeredAt' failed on the 'required_with' tag") + suite.EqualError(err, "Key: 'Account.FetchedAt' Error:Field validation for 'FetchedAt' failed on the 'required_with' tag") } // Username must be set @@ -139,7 +139,7 @@ func (suite *AccountValidateTestSuite) TestValidateAccountUsername() { // Domain must be either empty (for local accounts) or proper fqdn (for remote accounts) func (suite *AccountValidateTestSuite) TestValidateAccountDomain() { a := happyAccount() - a.LastWebfingeredAt = time.Now() + a.FetchedAt = time.Now() a.Domain = "" err := validate.Struct(*a) @@ -204,7 +204,7 @@ func (suite *AccountValidateTestSuite) TestValidateAttachmentRemoteURLs() { // Default privacy must be set if account is local func (suite *AccountValidateTestSuite) TestValidatePrivacy() { a := happyAccount() - a.LastWebfingeredAt = time.Now() + a.FetchedAt = time.Now() a.Privacy = "" err := validate.Struct(*a) @@ -261,7 +261,7 @@ func (suite *AccountValidateTestSuite) TestValidateAccountURI() { // ActivityPub URIs must be set on account if it's local func (suite *AccountValidateTestSuite) TestValidateAccountURIs() { a := happyAccount() - a.LastWebfingeredAt = time.Now() + a.FetchedAt = time.Now() a.InboxURI = "invalid-uri" a.OutboxURI = "invalid-uri" @@ -319,7 +319,7 @@ func (suite *AccountValidateTestSuite) TestValidateActorType() { // Private key must be set on local accounts func (suite *AccountValidateTestSuite) TestValidatePrivateKey() { a := happyAccount() - a.LastWebfingeredAt = time.Now() + a.FetchedAt = time.Now() a.PrivateKey = nil err := validate.Struct(*a) |