mirror of
https://github.com/mxpv/podsync.git
synced 2024-05-11 05:55:04 +00:00
42 lines
959 B
Go
42 lines
959 B
Go
package builder
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/mxpv/podsync/pkg/feed"
|
|
"github.com/stretchr/testify/assert"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestSC_BUILDFEED(t *testing.T) {
|
|
builder, err := NewSoundcloudBuilder()
|
|
require.NoError(t, err)
|
|
|
|
urls := []string{
|
|
"https://soundcloud.com/moby/sets/remixes",
|
|
"https://soundcloud.com/npr/sets/soundscapes",
|
|
}
|
|
|
|
for _, addr := range urls {
|
|
t.Run(addr, func(t *testing.T) {
|
|
feed, err := builder.Build(testCtx, &feed.Config{URL: addr})
|
|
require.NoError(t, err)
|
|
|
|
assert.NotEmpty(t, feed.Title)
|
|
assert.NotEmpty(t, feed.Description)
|
|
assert.NotEmpty(t, feed.Author)
|
|
assert.NotEmpty(t, feed.ItemURL)
|
|
|
|
assert.NotZero(t, len(feed.Episodes))
|
|
|
|
for _, item := range feed.Episodes {
|
|
assert.NotEmpty(t, item.Title)
|
|
assert.NotEmpty(t, item.VideoURL)
|
|
assert.NotZero(t, item.Duration)
|
|
assert.NotEmpty(t, item.Title)
|
|
assert.NotEmpty(t, item.Thumbnail)
|
|
}
|
|
})
|
|
}
|
|
}
|