mirror of
https://github.com/superseriousbusiness/gotosocial
synced 2025-06-05 21:59:39 +02:00
[feature] Parse funkwhale Album
as Statusable to allow barebones interacting with bandwagon (#3931)
* bump activity version * parse funkwhale / bandwagon album as statusable
This commit is contained in:
@ -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{})
|
||||
}
|
||||
|
Reference in New Issue
Block a user