diff options
| author | 2025-03-24 11:56:42 +0100 | |
|---|---|---|
| committer | 2025-03-24 10:56:42 +0000 | |
| commit | 27171a78ded38a7142aecfcaa75ede86f73b7a5b (patch) | |
| tree | 6468899981ba4f6fd78cd95544ed1ded34120437 /internal/ap/resolve_test.go | |
| parent | [chore]: Bump github.com/golang-jwt/jwt/v5 from 5.2.1 to 5.2.2 (#3927) (diff) | |
| download | gotosocial-27171a78ded38a7142aecfcaa75ede86f73b7a5b.tar.xz | |
[feature] Parse funkwhale `Album` as Statusable to allow barebones interacting with bandwagon (#3931)
* bump activity version
* parse funkwhale / bandwagon album as statusable
Diffstat (limited to 'internal/ap/resolve_test.go')
| -rw-r--r-- | internal/ap/resolve_test.go | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/internal/ap/resolve_test.go b/internal/ap/resolve_test.go index aaf90ab0a..b70dba77b 100644 --- a/internal/ap/resolve_test.go +++ b/internal/ap/resolve_test.go @@ -80,6 +80,56 @@ func (suite *ResolveTestSuite) TestResolveNonAPJSONAsAccountable() { suite.Nil(accountable) } +func (suite *ResolveTestSuite) TestResolveBandwagonAlbumAsStatusable() { + b := []byte(`{ + "@context": [ + "https://www.w3.org/ns/activitystreams", + "https://w3id.org/security/v1", + { + "discoverable": "toot:discoverable", + "indexable": "toot:indexable", + "toot": "https://joinmastodon.org/ns#" + }, + "https://funkwhale.audio/ns" + ], + "artists": [ + { + "id": "https://bandwagon.fm/@67a0a0808121f77ed3466870", + "name": "Luka Prinčič", + "type": "Artist" + } + ], + "attachment": [ + { + "mediaType": "image/webp", + "name": "image", + "type": "Document", + "url": "https://bandwagon.fm/67a0a219f050061c8b4ce427/attachments/67a0a21bf050061c8b4ce429" + } + ], + "attributedTo": "https://bandwagon.fm/@67a0a0808121f77ed3466870", + "content": "... a transgenre mutation, a fluid entity, jagged pop, electro-funk, techno-cabaret, a schlager, and soft alternative, queer to the core, satire and tragedy, sharp and fun indulgence for the dance of bodies and brains, activism and hedonism, which would all like to steal your attention.\r\n\r\nDRAGX̶FUNK is pronounced /dɹæɡɑːfʌŋk/.\r\n\r\n---\r\n\r\n## Buy digital\r\n💳 [Stripe](https://buy.stripe.com/6oE8x52iG1Kq5pKeV3)\r\n\r\n---\r\n\r\n## Buy dl/merch\r\n🎵 [Bandcamp](https://lukaprincic.bandcamp.com/album/dragx-funk) \r\n\r\n---\r\n\r\n## More:\r\n🌐 [prin.lu](https://prin.lu/music/241205_dragx-funk/) \r\n👉 [kamizdat.si](https://kamizdat.si/releases/dragx-funk-2/)\r\n", + "context": "https://bandwagon.fm/67a0a219f050061c8b4ce427", + "id": "https://bandwagon.fm/67a0a219f050061c8b4ce427", + "library": "https://bandwagon.fm/67a0a219f050061c8b4ce427/pub/children", + "license": "CC-BY-NC-SA", + "name": "DRAGX̶FUNK", + "published": "2025-03-17T11:40:53Z", + "to": [ + "https://www.w3.org/ns/activitystreams#Public" + ], + "tracks": "https://bandwagon.fm/67a0a219f050061c8b4ce427/pub/children", + "type": "Album", + "url": "https://bandwagon.fm/67a0a219f050061c8b4ce427" +}`) + + statusable, err := ap.ResolveStatusable( + context.Background(), io.NopCloser(bytes.NewReader(b)), + ) + suite.NoError(err) + suite.NotNil(statusable) +} + func TestResolveTestSuite(t *testing.T) { suite.Run(t, &ResolveTestSuite{}) } |
