package linking // import ( // "context" // "net/url" // "testing" // "github.com/bluesky-social/indigo/api/atproto" // "github.com/bluesky-social/indigo/api/bsky" // lexutil "github.com/bluesky-social/indigo/lex/util" // "github.com/stretchr/testify/require" // "stream.place/streamplace/pkg/streamplace" // ) // func TestNewLinker(t *testing.T) { // linker, err := NewLinker(context.Background(), []byte(input)) // require.NoError(t, err) // require.NotNil(t, linker) // } // func TestGenerateLinkCard(t *testing.T) { // linker, err := NewLinker(context.Background(), []byte(input)) // require.NoError(t, err) // require.NotNil(t, linker) // u, err := url.Parse("https://stream.place/iame.li") // require.NoError(t, err) // sp := "https://stream.place" // ls := &streamplace.Livestream{ // CreatedAt: "2025-03-25T00:39:49.121Z", // Post: &atproto.RepoStrongRef{ // Cid: "bafyreiczmyne5jd4lpax5ttyb5p2fbcageyt6fsthdpyymecokcsmyh4a4", // Uri: "at://did:plc:2zmxikig2sj7gqaezl5gntae/app.bsky.feed.post/3ll5zuomua22x", // }, // Title: "We're back up! Once again water in the firehose. Link cards if this stays stable", // Url: &sp, // } // lsv := &streamplace.Livestream_LivestreamView{ // Author: &bsky.ActorDefs_ProfileViewBasic{ // Handle: "iame.li", // Did: "did:plc:2zmxikig2sj7gqaezl5gntae", // }, // Cid: "bafyreib2ohz45jileumnuwa3wdoo3o7caikfyq467eanleqcscouh5wery", // IndexedAt: "2025-03-25T01:16:14Z", // Record: &lexutil.LexiconTypeDecoder{Val: ls}, // Uri: "at://did:plc:2zmxikig2sj7gqaezl5gntae/place.stream.livestream/3ll5zuop2k22x", // } // linkCard, err := linker.GenerateStreamerCard(context.Background(), u, lsv) // require.NoError(t, err) // require.Equal(t, outputStreamerCard, string(linkCard)) // } // func TestGenerateDefaultCard(t *testing.T) { // linker, err := NewLinker(context.Background(), []byte(input)) // require.NoError(t, err) // require.NotNil(t, linker) // u, err := url.Parse("https://stream.place/iame.li") // require.NoError(t, err) // linkCard, err := linker.GenerateDefaultCard(context.Background(), u) // require.NoError(t, err) // require.Equal(t, outputDefaultCard, string(linkCard)) // } // const input string = ` // //
// // // //