53 lines
1.6 KiB
Go
53 lines
1.6 KiB
Go
package scraper_test
|
|
|
|
import (
|
|
"encoding/json"
|
|
"os"
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
"github.com/stretchr/testify/require"
|
|
|
|
. "gitlab.com/offline-twitter/twitter_offline_engine/pkg/scraper"
|
|
)
|
|
|
|
func TestParseAPIVideo(t *testing.T) {
|
|
assert := assert.New(t)
|
|
require := require.New(t)
|
|
data, err := os.ReadFile("test_responses/tweet_content/video.json")
|
|
require.NoError(err)
|
|
|
|
var apivideo APIExtendedMedia
|
|
err = json.Unmarshal(data, &apivideo)
|
|
require.NoError(err)
|
|
|
|
tweet_id := TweetID(28)
|
|
video := ParseAPIVideo(apivideo, tweet_id)
|
|
assert.Equal(VideoID(1418951950020845568), video.ID)
|
|
assert.Equal(tweet_id, video.TweetID)
|
|
assert.Equal(1280, video.Height)
|
|
assert.Equal(720, video.Width)
|
|
assert.Equal("https://video.twimg.com/ext_tw_video/1418951950020845568/pu/vid/720x1280/sm4iL9_f8Lclh0aa.mp4?tag=12", video.RemoteURL)
|
|
assert.Equal("sm/sm4iL9_f8Lclh0aa.mp4", video.LocalFilename)
|
|
assert.Equal("https://pbs.twimg.com/ext_tw_video_thumb/1418951950020845568/pu/img/eUTaYYfuAJ8FyjUi.jpg", video.ThumbnailRemoteUrl)
|
|
assert.Equal("eU/eUTaYYfuAJ8FyjUi.jpg", video.ThumbnailLocalPath)
|
|
assert.Equal(275952, video.ViewCount)
|
|
assert.Equal(88300, video.Duration)
|
|
assert.False(video.IsDownloaded)
|
|
}
|
|
|
|
func TestParseGeoblockedVideo(t *testing.T) {
|
|
assert := assert.New(t)
|
|
require := require.New(t)
|
|
data, err := os.ReadFile("test_responses/tweet_content/video_geoblocked.json")
|
|
require.NoError(err)
|
|
|
|
var apivideo APIExtendedMedia
|
|
err = json.Unmarshal(data, &apivideo)
|
|
require.NoError(err)
|
|
|
|
tweet_id := TweetID(28)
|
|
video := ParseAPIVideo(apivideo, tweet_id)
|
|
assert.True(video.IsGeoblocked)
|
|
}
|