Live video on the AT Protocol
79
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v0.7.21 63 lines 1.3 kB view raw
1package spxrpc 2 3import ( 4 "testing" 5 6 "github.com/stretchr/testify/require" 7) 8 9func TestFeedSkeletonRE(t *testing.T) { 10 tests := []struct { 11 feed string 12 name string 13 did string 14 want bool 15 }{ 16 { 17 feed: "at://did:plc:oio4hkxaop4ao4wz2pp3f4cr/app.bsky.feed.generator/atproto", 18 did: "did:plc:oio4hkxaop4ao4wz2pp3f4cr", 19 name: "atproto", 20 want: true, 21 }, 22 { 23 feed: "at://did:web:iame.li/app.bsky.feed.generator/feedwithnumbers123", 24 did: "did:web:iame.li", 25 name: "feedwithnumbers123", 26 want: true, 27 }, 28 { 29 feed: "at://did:web:iame.li/app.bsky.feed.generator/feed-with-dashes", 30 did: "did:web:iame.li", 31 name: "feed-with-dashes", 32 want: true, 33 }, 34 { 35 feed: "foo", 36 want: false, 37 }, 38 { 39 feed: "at:///app.bsky.feed.generator/feedwithnumbers123", 40 want: false, 41 }, 42 { 43 feed: "at://did:web:iame.li/app.bsky.feed.generator/", 44 want: false, 45 }, 46 { 47 feed: "at://did:web:iame.li/app.bsky.feed.generator/feedwithnumbers123/errantsuffix", 48 want: false, 49 }, 50 } 51 for _, test := range tests { 52 t.Run(test.name, func(t *testing.T) { 53 did, name, err := parseFeedSkeleton(test.feed) 54 if !test.want { 55 require.Error(t, err) 56 return 57 } 58 require.NoError(t, err) 59 require.Equal(t, test.did, did) 60 require.Equal(t, test.name, name) 61 }) 62 } 63}