REFACTOR: replace imports of the 'persistence' package in 'persistence_test' with dot-imports

This commit is contained in:
Alessio 2025-02-10 13:30:01 -08:00
parent 4132eb4bca
commit bbe098d6df
12 changed files with 118 additions and 118 deletions

View File

@ -6,7 +6,7 @@ import (
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence" . "gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence"
. "gitlab.com/offline-twitter/twitter_offline_engine/pkg/scraper" . "gitlab.com/offline-twitter/twitter_offline_engine/pkg/scraper"
) )
@ -15,10 +15,10 @@ func TestBuildUserFeed(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
c := persistence.NewUserFeedCursor(UserHandle("cernovich")) c := NewUserFeedCursor(UserHandle("cernovich"))
c.PageSize = 2 c.PageSize = 2
feed, err := profile.NextPage(c, UserID(0)) feed, err := profile.NextPage(c, UserID(0))
@ -56,12 +56,12 @@ func TestBuildUserFeedPage2(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
c := persistence.NewUserFeedCursor(UserHandle("cernovich")) c := NewUserFeedCursor(UserHandle("cernovich"))
c.PageSize = 2 c.PageSize = 2
c.CursorPosition = persistence.CURSOR_MIDDLE c.CursorPosition = CURSOR_MIDDLE
c.CursorValue = 1644107102000 c.CursorValue = 1644107102000
feed, err := profile.NextPage(c, UserID(0)) feed, err := profile.NextPage(c, UserID(0))
require.NoError(err) require.NoError(err)
@ -96,12 +96,12 @@ func TestBuildUserFeedEnd(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
c := persistence.NewUserFeedCursor(UserHandle("cernovich")) c := NewUserFeedCursor(UserHandle("cernovich"))
c.PageSize = 2 c.PageSize = 2
c.CursorPosition = persistence.CURSOR_MIDDLE c.CursorPosition = CURSOR_MIDDLE
c.CursorValue = 1 // Won't be anything c.CursorValue = 1 // Won't be anything
feed, err := profile.NextPage(c, UserID(0)) feed, err := profile.NextPage(c, UserID(0))
require.NoError(err) require.NoError(err)
@ -111,18 +111,18 @@ func TestBuildUserFeedEnd(t *testing.T) {
assert.Len(feed.Users, 0) assert.Len(feed.Users, 0)
require.Len(feed.Items, 0) require.Len(feed.Items, 0)
assert.Equal(feed.CursorBottom.CursorPosition, persistence.CURSOR_END) assert.Equal(feed.CursorBottom.CursorPosition, CURSOR_END)
} }
func TestUserFeedHasLikesInfo(t *testing.T) { func TestUserFeedHasLikesInfo(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
// Fetch @Peter_Nimitz user feed while logged in as @MysteryGrove // Fetch @Peter_Nimitz user feed while logged in as @MysteryGrove
c := persistence.NewUserFeedCursor(UserHandle("Peter_Nimitz")) c := NewUserFeedCursor(UserHandle("Peter_Nimitz"))
feed, err := profile.NextPage(c, UserID(1178839081222115328)) feed, err := profile.NextPage(c, UserID(1178839081222115328))
require.NoError(err) require.NoError(err)
@ -136,10 +136,10 @@ func TestUserFeedWithTombstone(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
c := persistence.NewUserFeedCursor(UserHandle("Heminator")) c := NewUserFeedCursor(UserHandle("Heminator"))
feed, err := profile.NextPage(c, UserID(0)) feed, err := profile.NextPage(c, UserID(0))
require.NoError(err) require.NoError(err)
tombstone_tweet := feed.Tweets[TweetID(31)] tombstone_tweet := feed.Tweets[TweetID(31)]
@ -150,12 +150,12 @@ func TestUserLikesFeed(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
// Fetch @Peter_Nimitz user feed while logged in as @MysteryGrove // Fetch @Peter_Nimitz user feed while logged in as @MysteryGrove
c := persistence.NewUserFeedLikesCursor(UserHandle("MysteryGrove")) c := NewUserFeedLikesCursor(UserHandle("MysteryGrove"))
require.Equal(c.SortOrder, persistence.SORT_ORDER_LIKED_AT) require.Equal(c.SortOrder, SORT_ORDER_LIKED_AT)
c.PageSize = 2 c.PageSize = 2
feed, err := profile.NextPage(c, UserID(0)) feed, err := profile.NextPage(c, UserID(0))
require.NoError(err) require.NoError(err)
@ -188,14 +188,14 @@ func TestUserLikesFeed(t *testing.T) {
_, is_ok := feed.Tweets[expected_tweet_id] _, is_ok := feed.Tweets[expected_tweet_id]
assert.True(is_ok) assert.True(is_ok)
} }
assert.Equal(feed.CursorBottom.CursorPosition, persistence.CURSOR_END) assert.Equal(feed.CursorBottom.CursorPosition, CURSOR_END)
} }
func TestTweetDetailWithReplies(t *testing.T) { func TestTweetDetailWithReplies(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
tweet_detail, err := profile.GetTweetDetail(TweetID(1413646595493568516), UserID(1178839081222115328)) tweet_detail, err := profile.GetTweetDetail(TweetID(1413646595493568516), UserID(1178839081222115328))
@ -248,7 +248,7 @@ func TestTweetDetailWithParents(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
tweet_detail, err := profile.GetTweetDetail(TweetID(1413773185296650241), UserID(1178839081222115328)) tweet_detail, err := profile.GetTweetDetail(TweetID(1413773185296650241), UserID(1178839081222115328))
@ -286,7 +286,7 @@ func TestTweetDetailWithThread(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
tweet_detail, err := profile.GetTweetDetail(TweetID(1698762403163304110), UserID(0)) tweet_detail, err := profile.GetTweetDetail(TweetID(1698762403163304110), UserID(0))
@ -322,7 +322,7 @@ func TestNotificationsFeed(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
feed := profile.GetNotificationsForUser(UserID(1488963321701171204), 0, 6) feed := profile.GetNotificationsForUser(UserID(1488963321701171204), 0, 6)
@ -353,7 +353,7 @@ func TestNotificationsFeed(t *testing.T) {
assert.Equal(feed.Items[5].NotificationID, NotificationID("FKncQJGVgAQAAAABSQ3bEaTgXL8f40e77r4")) assert.Equal(feed.Items[5].NotificationID, NotificationID("FKncQJGVgAQAAAABSQ3bEaTgXL8f40e77r4"))
assert.Equal(feed.Items[5].TweetID, TweetID(1826778617705115868)) assert.Equal(feed.Items[5].TweetID, TweetID(1826778617705115868))
assert.Equal(feed.CursorBottom.CursorPosition, persistence.CURSOR_MIDDLE) assert.Equal(feed.CursorBottom.CursorPosition, CURSOR_MIDDLE)
assert.Equal(feed.CursorBottom.CursorValue, 1723494244885) assert.Equal(feed.CursorBottom.CursorValue, 1723494244885)
// Paginated version // Paginated version
@ -368,7 +368,7 @@ func TestNotificationsFeed(t *testing.T) {
assert.Equal(feed.Items[1].NotificationID, NotificationID("FKncQJGVgAQAAAABSQ3bEaTgXL8VBxefepo")) assert.Equal(feed.Items[1].NotificationID, NotificationID("FKncQJGVgAQAAAABSQ3bEaTgXL8VBxefepo"))
assert.Equal(feed.Items[2].NotificationID, NotificationID("FKncQJGVgAQAAAABSQ3bEaTgXL_S11Ev36g")) assert.Equal(feed.Items[2].NotificationID, NotificationID("FKncQJGVgAQAAAABSQ3bEaTgXL_S11Ev36g"))
assert.Equal(feed.CursorBottom.CursorPosition, persistence.CURSOR_MIDDLE) assert.Equal(feed.CursorBottom.CursorPosition, CURSOR_MIDDLE)
assert.Equal(feed.CursorBottom.CursorValue, 1724251072880) assert.Equal(feed.CursorBottom.CursorValue, 1724251072880)
// At end of feed // At end of feed
@ -377,5 +377,5 @@ func TestNotificationsFeed(t *testing.T) {
// cursor = last notification's sort index // cursor = last notification's sort index
feed = profile.GetNotificationsForUser(UserID(1488963321701171204), 1723494244885, 3) feed = profile.GetNotificationsForUser(UserID(1488963321701171204), 1723494244885, 3)
assert.Len(feed.Items, 0) assert.Len(feed.Items, 0)
assert.Equal(feed.CursorBottom.CursorPosition, persistence.CURSOR_END) assert.Equal(feed.CursorBottom.CursorPosition, CURSOR_END)
} }

View File

@ -8,7 +8,7 @@ import (
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence" . "gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence"
. "gitlab.com/offline-twitter/twitter_offline_engine/pkg/scraper" . "gitlab.com/offline-twitter/twitter_offline_engine/pkg/scraper"
) )
@ -16,7 +16,7 @@ func TestTokenizeSearchString(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
c, err := persistence.NewCursorFromSearchQuery("think") c, err := NewCursorFromSearchQuery("think")
require.NoError(err) require.NoError(err)
assert.Len(c.Keywords, 1) assert.Len(c.Keywords, 1)
assert.Equal(c.Keywords[0], "think") assert.Equal(c.Keywords[0], "think")
@ -26,7 +26,7 @@ func TestTokenizeSearchStringMultipleWords(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
c, err := persistence.NewCursorFromSearchQuery("think tank") c, err := NewCursorFromSearchQuery("think tank")
require.NoError(err) require.NoError(err)
assert.Len(c.Keywords, 2) assert.Len(c.Keywords, 2)
assert.Equal(c.Keywords[0], "think") assert.Equal(c.Keywords[0], "think")
@ -37,7 +37,7 @@ func TestTokenizeSearchStringQuotedTokens(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
c, err := persistence.NewCursorFromSearchQuery("\"think tank\"") c, err := NewCursorFromSearchQuery("\"think tank\"")
require.NoError(err) require.NoError(err)
assert.Len(c.Keywords, 1) assert.Len(c.Keywords, 1)
assert.Equal("think tank", c.Keywords[0]) assert.Equal("think tank", c.Keywords[0])
@ -47,7 +47,7 @@ func TestTokenizeSearchStringFromUser(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
c, err := persistence.NewCursorFromSearchQuery("from:cernovich retweeted_by:blehbleh to:somebody") c, err := NewCursorFromSearchQuery("from:cernovich retweeted_by:blehbleh to:somebody")
require.NoError(err) require.NoError(err)
assert.Len(c.Keywords, 0) assert.Len(c.Keywords, 0)
assert.Equal(c.FromUserHandle, UserHandle("cernovich")) assert.Equal(c.FromUserHandle, UserHandle("cernovich"))
@ -59,7 +59,7 @@ func TestComplexSearchString(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
c, err := persistence.NewCursorFromSearchQuery("stupid \"think tank\" from:kashi") c, err := NewCursorFromSearchQuery("stupid \"think tank\" from:kashi")
require.NoError(err) require.NoError(err)
assert.Len(c.Keywords, 2) assert.Len(c.Keywords, 2)
assert.Equal("stupid", c.Keywords[0]) assert.Equal("stupid", c.Keywords[0])
@ -71,17 +71,17 @@ func TestSearchStringBadQuotes(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
_, err := persistence.NewCursorFromSearchQuery("asdf \"fjk") _, err := NewCursorFromSearchQuery("asdf \"fjk")
require.Error(err) require.Error(err)
assert.ErrorIs(err, persistence.ErrUnmatchedQuotes) assert.ErrorIs(err, ErrUnmatchedQuotes)
assert.ErrorIs(err, persistence.ErrInvalidQuery) assert.ErrorIs(err, ErrInvalidQuery)
} }
func TestSearchWithDates(t *testing.T) { func TestSearchWithDates(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
c, err := persistence.NewCursorFromSearchQuery("since:2020-01-01 until:2020-05-01") c, err := NewCursorFromSearchQuery("since:2020-01-01 until:2020-05-01")
require.NoError(err) require.NoError(err)
assert.Equal(c.SinceTimestamp.Time, time.Date(2020, 1, 1, 0, 0, 0, 0, time.UTC)) assert.Equal(c.SinceTimestamp.Time, time.Date(2020, 1, 1, 0, 0, 0, 0, time.UTC))
assert.Equal(c.UntilTimestamp.Time, time.Date(2020, 5, 1, 0, 0, 0, 0, time.UTC)) assert.Equal(c.UntilTimestamp.Time, time.Date(2020, 5, 1, 0, 0, 0, 0, time.UTC))
@ -91,16 +91,16 @@ func TestSearchWithInvalidDates(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
_, err := persistence.NewCursorFromSearchQuery("since:fawejk") _, err := NewCursorFromSearchQuery("since:fawejk")
require.Error(err) require.Error(err)
assert.ErrorIs(err, persistence.ErrInvalidQuery) assert.ErrorIs(err, ErrInvalidQuery)
} }
func TestSearchContentFilters(t *testing.T) { func TestSearchContentFilters(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
c, err := persistence.NewCursorFromSearchQuery("filter:links filter:videos filter:images filter:polls filter:spaces") c, err := NewCursorFromSearchQuery("filter:links filter:videos filter:images filter:polls filter:spaces")
require.NoError(err) require.NoError(err)
assert.Equal(c.FilterLinks, persistence.REQUIRE) assert.Equal(c.FilterLinks, persistence.REQUIRE)
assert.Equal(c.FilterVideos, persistence.REQUIRE) assert.Equal(c.FilterVideos, persistence.REQUIRE)

View File

@ -8,7 +8,7 @@ import (
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence" . "gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence"
. "gitlab.com/offline-twitter/twitter_offline_engine/pkg/scraper" . "gitlab.com/offline-twitter/twitter_offline_engine/pkg/scraper"
) )
@ -17,13 +17,13 @@ func TestCursorSearchByNewest(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
c := persistence.NewCursor() c := NewCursor()
c.PageSize = 3 c.PageSize = 3
c.Keywords = []string{"think"} c.Keywords = []string{"think"}
c.SortOrder = persistence.SORT_ORDER_NEWEST c.SortOrder = SORT_ORDER_NEWEST
feed, err := profile.NextPage(c, UserID(0)) feed, err := profile.NextPage(c, UserID(0))
require.NoError(err) require.NoError(err)
@ -35,7 +35,7 @@ func TestCursorSearchByNewest(t *testing.T) {
assert.Equal(feed.Items[2].TweetID, TweetID(1428939163961790466)) assert.Equal(feed.Items[2].TweetID, TweetID(1428939163961790466))
next_cursor := feed.CursorBottom next_cursor := feed.CursorBottom
assert.Equal(next_cursor.CursorPosition, persistence.CURSOR_MIDDLE) assert.Equal(next_cursor.CursorPosition, CURSOR_MIDDLE)
assert.Equal(next_cursor.SortOrder, c.SortOrder) assert.Equal(next_cursor.SortOrder, c.SortOrder)
assert.Equal(next_cursor.Keywords, c.Keywords) assert.Equal(next_cursor.Keywords, c.Keywords)
assert.Equal(next_cursor.PageSize, c.PageSize) assert.Equal(next_cursor.PageSize, c.PageSize)
@ -50,7 +50,7 @@ func TestCursorSearchByNewest(t *testing.T) {
assert.Equal(feed.Items[1].TweetID, TweetID(1343633011364016128)) assert.Equal(feed.Items[1].TweetID, TweetID(1343633011364016128))
next_cursor = feed.CursorBottom next_cursor = feed.CursorBottom
assert.Equal(next_cursor.CursorPosition, persistence.CURSOR_END) assert.Equal(next_cursor.CursorPosition, CURSOR_END)
} }
// Search retweets, sorted by oldest // Search retweets, sorted by oldest
@ -58,14 +58,14 @@ func TestCursorSearchWithRetweets(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
c := persistence.NewCursor() c := NewCursor()
c.PageSize = 3 c.PageSize = 3
c.RetweetedByUserHandle = "cernovich" c.RetweetedByUserHandle = "cernovich"
c.FilterRetweets = persistence.REQUIRE c.FilterRetweets = REQUIRE
c.SortOrder = persistence.SORT_ORDER_OLDEST c.SortOrder = SORT_ORDER_OLDEST
feed, err := profile.NextPage(c, UserID(0)) feed, err := profile.NextPage(c, UserID(0))
require.NoError(err) require.NoError(err)
@ -77,7 +77,7 @@ func TestCursorSearchWithRetweets(t *testing.T) {
assert.Equal(feed.Items[2].RetweetID, TweetID(1490135787144237058)) assert.Equal(feed.Items[2].RetweetID, TweetID(1490135787144237058))
next_cursor := feed.CursorBottom next_cursor := feed.CursorBottom
assert.Equal(next_cursor.CursorPosition, persistence.CURSOR_MIDDLE) assert.Equal(next_cursor.CursorPosition, CURSOR_MIDDLE)
assert.Equal(next_cursor.SortOrder, c.SortOrder) assert.Equal(next_cursor.SortOrder, c.SortOrder)
assert.Equal(next_cursor.Keywords, c.Keywords) assert.Equal(next_cursor.Keywords, c.Keywords)
assert.Equal(next_cursor.PageSize, c.PageSize) assert.Equal(next_cursor.PageSize, c.PageSize)
@ -88,7 +88,7 @@ func TestCursorSearchWithRetweets(t *testing.T) {
assert.Len(feed.Items, 0) assert.Len(feed.Items, 0)
next_cursor = feed.CursorBottom next_cursor = feed.CursorBottom
assert.Equal(next_cursor.CursorPosition, persistence.CURSOR_END) assert.Equal(next_cursor.CursorPosition, CURSOR_END)
} }
// Offline Following Timeline // Offline Following Timeline
@ -96,10 +96,10 @@ func TestTimeline(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
c := persistence.NewTimelineCursor() c := NewTimelineCursor()
c.PageSize = 6 c.PageSize = 6
feed, err := profile.NextPage(c, UserID(0)) feed, err := profile.NextPage(c, UserID(0))
@ -115,7 +115,7 @@ func TestTimeline(t *testing.T) {
assert.Equal(feed.Items[5].TweetID, TweetID(1453461248142495744)) assert.Equal(feed.Items[5].TweetID, TweetID(1453461248142495744))
next_cursor := feed.CursorBottom next_cursor := feed.CursorBottom
assert.Equal(next_cursor.CursorPosition, persistence.CURSOR_MIDDLE) assert.Equal(next_cursor.CursorPosition, CURSOR_MIDDLE)
assert.Equal(next_cursor.SortOrder, c.SortOrder) assert.Equal(next_cursor.SortOrder, c.SortOrder)
assert.Equal(next_cursor.Keywords, c.Keywords) assert.Equal(next_cursor.Keywords, c.Keywords)
assert.Equal(next_cursor.PageSize, c.PageSize) assert.Equal(next_cursor.PageSize, c.PageSize)
@ -139,9 +139,9 @@ func TestKeywordSearch(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
c := persistence.NewCursor() c := NewCursor()
// Multiple words without quotes // Multiple words without quotes
c.Keywords = []string{"who", "are"} c.Keywords = []string{"who", "are"}
@ -167,9 +167,9 @@ func TestSearchReplyingToUser(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
c := persistence.NewCursor() c := NewCursor()
// Replying to a user // Replying to a user
c.ToUserHandles = []UserHandle{"spacex"} c.ToUserHandles = []UserHandle{"spacex"}
@ -191,10 +191,10 @@ func TestSearchDateFilters(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
c := persistence.NewCursor() c := NewCursor()
c.SortOrder = persistence.SORT_ORDER_MOST_LIKES c.SortOrder = SORT_ORDER_MOST_LIKES
// Since timestamp // Since timestamp
c.SinceTimestamp.Time = time.Date(2021, 10, 1, 0, 0, 0, 0, time.UTC) c.SinceTimestamp.Time = time.Date(2021, 10, 1, 0, 0, 0, 0, time.UTC)
@ -220,13 +220,13 @@ func TestSearchMediaFilters(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
// Links // Links
c := persistence.NewCursor() c := NewCursor()
c.SortOrder = persistence.SORT_ORDER_MOST_LIKES c.SortOrder = SORT_ORDER_MOST_LIKES
c.FilterLinks = persistence.REQUIRE c.FilterLinks = REQUIRE
feed, err := profile.NextPage(c, UserID(0)) feed, err := profile.NextPage(c, UserID(0))
require.NoError(err) require.NoError(err)
assert.Len(feed.Items, 2) assert.Len(feed.Items, 2)
@ -234,9 +234,9 @@ func TestSearchMediaFilters(t *testing.T) {
assert.Equal(feed.Items[1].TweetID, TweetID(1413665734866186243)) assert.Equal(feed.Items[1].TweetID, TweetID(1413665734866186243))
// Images // Images
c = persistence.NewCursor() c = NewCursor()
c.SortOrder = persistence.SORT_ORDER_MOST_LIKES c.SortOrder = SORT_ORDER_MOST_LIKES
c.FilterImages = persistence.REQUIRE c.FilterImages = REQUIRE
feed, err = profile.NextPage(c, UserID(0)) feed, err = profile.NextPage(c, UserID(0))
require.NoError(err) require.NoError(err)
assert.Len(feed.Items, 2) assert.Len(feed.Items, 2)
@ -244,9 +244,9 @@ func TestSearchMediaFilters(t *testing.T) {
assert.Equal(feed.Items[1].TweetID, TweetID(1426669666928414720)) assert.Equal(feed.Items[1].TweetID, TweetID(1426669666928414720))
// Videos // Videos
c = persistence.NewCursor() c = NewCursor()
c.SortOrder = persistence.SORT_ORDER_MOST_LIKES c.SortOrder = SORT_ORDER_MOST_LIKES
c.FilterVideos = persistence.REQUIRE c.FilterVideos = REQUIRE
feed, err = profile.NextPage(c, UserID(0)) feed, err = profile.NextPage(c, UserID(0))
require.NoError(err) require.NoError(err)
assert.Len(feed.Items, 2) assert.Len(feed.Items, 2)
@ -254,9 +254,9 @@ func TestSearchMediaFilters(t *testing.T) {
assert.Equal(feed.Items[1].TweetID, TweetID(1453461248142495744)) assert.Equal(feed.Items[1].TweetID, TweetID(1453461248142495744))
// Media (generic) // Media (generic)
c = persistence.NewCursor() c = NewCursor()
c.SortOrder = persistence.SORT_ORDER_MOST_LIKES c.SortOrder = SORT_ORDER_MOST_LIKES
c.FilterMedia = persistence.REQUIRE c.FilterMedia = REQUIRE
feed, err = profile.NextPage(c, UserID(0)) feed, err = profile.NextPage(c, UserID(0))
require.NoError(err) require.NoError(err)
assert.Len(feed.Items, 4) assert.Len(feed.Items, 4)
@ -266,24 +266,24 @@ func TestSearchMediaFilters(t *testing.T) {
assert.Equal(feed.Items[3].TweetID, TweetID(1453461248142495744)) assert.Equal(feed.Items[3].TweetID, TweetID(1453461248142495744))
// Polls // Polls
c = persistence.NewCursor() c = NewCursor()
c.FilterPolls = persistence.REQUIRE c.FilterPolls = REQUIRE
feed, err = profile.NextPage(c, UserID(0)) feed, err = profile.NextPage(c, UserID(0))
require.NoError(err) require.NoError(err)
assert.Len(feed.Items, 1) assert.Len(feed.Items, 1)
assert.Equal(feed.Items[0].TweetID, TweetID(1465534109573390348)) assert.Equal(feed.Items[0].TweetID, TweetID(1465534109573390348))
// Spaces // Spaces
c = persistence.NewCursor() c = NewCursor()
c.FilterSpaces = persistence.REQUIRE c.FilterSpaces = REQUIRE
feed, err = profile.NextPage(c, UserID(0)) feed, err = profile.NextPage(c, UserID(0))
require.NoError(err) require.NoError(err)
assert.Len(feed.Items, 1) assert.Len(feed.Items, 1)
assert.Equal(feed.Items[0].TweetID, TweetID(1624833173514293249)) assert.Equal(feed.Items[0].TweetID, TweetID(1624833173514293249))
// Negative filter (images) // Negative filter (images)
c = persistence.NewCursor() c = NewCursor()
c.FilterImages = persistence.EXCLUDE c.FilterImages = EXCLUDE
c.FromUserHandle = UserHandle("covfefeanon") c.FromUserHandle = UserHandle("covfefeanon")
feed, err = profile.NextPage(c, UserID(0)) feed, err = profile.NextPage(c, UserID(0))
require.NoError(err) require.NoError(err)

View File

@ -8,7 +8,7 @@ import (
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence" . "gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence"
. "gitlab.com/offline-twitter/twitter_offline_engine/pkg/scraper" . "gitlab.com/offline-twitter/twitter_offline_engine/pkg/scraper"
) )
@ -161,7 +161,7 @@ func TestGetChatRoomsPreview(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
chat_view := profile.GetChatRoomsPreview(UserID(1458284524761075714)) chat_view := profile.GetChatRoomsPreview(UserID(1458284524761075714))
@ -194,7 +194,7 @@ func TestGetChatRoomContents(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
room_id := DMChatRoomID("1458284524761075714-1488963321701171204") room_id := DMChatRoomID("1458284524761075714-1488963321701171204")
@ -263,7 +263,7 @@ func TestGetChatRoomContentsAfterTimestamp(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
room_id := DMChatRoomID("1488963321701171204-1178839081222115328") room_id := DMChatRoomID("1488963321701171204-1178839081222115328")
@ -288,7 +288,7 @@ func TestGetUnreadConversations(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
offline_twatter_unreads := profile.GetUnreadConversations(UserID(1488963321701171204)) offline_twatter_unreads := profile.GetUnreadConversations(UserID(1488963321701171204))

View File

@ -6,7 +6,7 @@ import (
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence" . "gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence"
. "gitlab.com/offline-twitter/twitter_offline_engine/pkg/scraper" . "gitlab.com/offline-twitter/twitter_offline_engine/pkg/scraper"
) )
@ -14,7 +14,7 @@ func TestSaveAndLoadFollows(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
follower := create_dummy_user() follower := create_dummy_user()
@ -47,7 +47,7 @@ func TestIsFollowing(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
assert.True(profile.IsXFollowingY(UserID(1178839081222115328), UserID(1488963321701171204))) assert.True(profile.IsXFollowingY(UserID(1178839081222115328), UserID(1488963321701171204)))

View File

@ -9,7 +9,7 @@ import (
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence" . "gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence"
. "gitlab.com/offline-twitter/twitter_offline_engine/pkg/scraper" . "gitlab.com/offline-twitter/twitter_offline_engine/pkg/scraper"
) )
@ -17,7 +17,7 @@ func TestSaveAndLoadOfflineList(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
// Create an offline list // Create an offline list
@ -38,7 +38,7 @@ func TestRenameOfflineList(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
// Create an offline list // Create an offline list
@ -62,7 +62,7 @@ func TestSaveAndLoadOnlineList(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
// Create an online list // Create an online list
@ -84,7 +84,7 @@ func TestRenameOnlineList(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
// Create an online list // Create an online list
@ -108,7 +108,7 @@ func TestRenameOnlineList(t *testing.T) {
func TestNoOnlineListWithoutID(t *testing.T) { func TestNoOnlineListWithoutID(t *testing.T) {
require := require.New(t) require := require.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
// Creating an online list with no OnlineID should fail // Creating an online list with no OnlineID should fail
@ -126,7 +126,7 @@ func TestAddAndRemoveUserToList(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
// Create a list // Create a list
@ -161,7 +161,7 @@ func TestGetAllLists(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
// Create a list // Create a list
@ -177,7 +177,7 @@ func TestGetAllLists(t *testing.T) {
func TestDeleteList(t *testing.T) { func TestDeleteList(t *testing.T) {
require := require.New(t) require := require.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
// Create an offline list // Create an offline list

View File

@ -7,7 +7,7 @@ import (
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence" . "gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence"
. "gitlab.com/offline-twitter/twitter_offline_engine/pkg/scraper" . "gitlab.com/offline-twitter/twitter_offline_engine/pkg/scraper"
) )
@ -30,7 +30,7 @@ func TestGetUnreadNotificationsCount(t *testing.T) {
require := require.New(t) require := require.New(t)
assert := assert.New(t) assert := assert.New(t)
profile, err := persistence.LoadProfile("../../sample_data/profile") profile, err := LoadProfile("../../sample_data/profile")
require.NoError(err) require.NoError(err)
unread_notifs_count := profile.GetUnreadNotificationsCount(UserID(1488963321701171204), 1724372973735) unread_notifs_count := profile.GetUnreadNotificationsCount(UserID(1488963321701171204), 1724372973735)

View File

@ -9,7 +9,7 @@ import (
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence" . "gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence"
) )
// DUPE 1 // DUPE 1
@ -35,10 +35,10 @@ func TestNewProfileInvalidPath(t *testing.T) {
err := os.Mkdir(gibberish_path, 0755) err := os.Mkdir(gibberish_path, 0755)
require.NoError(err) require.NoError(err)
_, err = persistence.NewProfile(gibberish_path) _, err = NewProfile(gibberish_path)
require.Error(err, "Should have failed to create a profile in an already existing directory!") require.Error(err, "Should have failed to create a profile in an already existing directory!")
assert.ErrorIs(t, err, persistence.ErrTargetAlreadyExists) assert.ErrorIs(t, err, ErrTargetAlreadyExists)
} }
// Should correctly create a new Profile // Should correctly create a new Profile
@ -52,7 +52,7 @@ func TestNewProfile(t *testing.T) {
require.NoError(err) require.NoError(err)
} }
profile, err := persistence.NewProfile(profile_path) profile, err := NewProfile(profile_path)
require.NoError(err) require.NoError(err)
assert.Equal(profile_path, profile.ProfileDir) assert.Equal(profile_path, profile.ProfileDir)
@ -82,7 +82,7 @@ func TestNewProfile(t *testing.T) {
// Check database version is initialized // Check database version is initialized
version, err := profile.GetDatabaseVersion() version, err := profile.GetDatabaseVersion()
require.NoError(err) require.NoError(err)
assert.Equal(persistence.ENGINE_DATABASE_VERSION, version) assert.Equal(ENGINE_DATABASE_VERSION, version)
} }
// Should correctly load the Profile // Should correctly load the Profile
@ -95,10 +95,10 @@ func TestLoadProfile(t *testing.T) {
require.NoError(err) require.NoError(err)
} }
_, err := persistence.NewProfile(profile_path) _, err := NewProfile(profile_path)
require.NoError(err) require.NoError(err)
profile, err := persistence.LoadProfile(profile_path) profile, err := LoadProfile(profile_path)
require.NoError(err) require.NoError(err)
assert.Equal(t, profile_path, profile.ProfileDir) assert.Equal(t, profile_path, profile.ProfileDir)

View File

@ -8,7 +8,7 @@ import (
"github.com/go-test/deep" "github.com/go-test/deep"
"gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence" . "gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence"
. "gitlab.com/offline-twitter/twitter_offline_engine/pkg/scraper" . "gitlab.com/offline-twitter/twitter_offline_engine/pkg/scraper"
) )
@ -334,5 +334,5 @@ func TestLoadMissingTweet(t *testing.T) {
_, err := profile.GetTweetById(TweetID(6234234)) // Random number _, err := profile.GetTweetById(TweetID(6234234)) // Random number
require.Error(t, err) require.Error(t, err)
assert.ErrorIs(t, err, persistence.ErrNotInDatabase) assert.ErrorIs(t, err, ErrNotInDatabase)
} }

View File

@ -11,7 +11,7 @@ import (
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence" . "gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence"
. "gitlab.com/offline-twitter/twitter_offline_engine/pkg/scraper" . "gitlab.com/offline-twitter/twitter_offline_engine/pkg/scraper"
) )
@ -170,7 +170,7 @@ func TestInsertUserWithDuplicateHandle(t *testing.T) {
user2 := create_dummy_user() user2 := create_dummy_user()
user2.Handle = user1.Handle user2.Handle = user1.Handle
err = profile.SaveUser(&user2) err = profile.SaveUser(&user2)
var conflict_err persistence.ErrConflictingUserHandle var conflict_err ErrConflictingUserHandle
require.ErrorAs(err, &conflict_err) require.ErrorAs(err, &conflict_err)
require.Equal(conflict_err.ConflictingUserID, user1.ID) require.Equal(conflict_err.ConflictingUserID, user1.ID)
@ -213,7 +213,7 @@ func TestReviveDeletedUserWithDuplicateHandle(t *testing.T) {
// Reactivate the 1st user; should return the 2nd user's ID as a conflict // Reactivate the 1st user; should return the 2nd user's ID as a conflict
user1.IsDeleted = false user1.IsDeleted = false
err = profile.SaveUser(&user1) err = profile.SaveUser(&user1)
var conflict_err persistence.ErrConflictingUserHandle var conflict_err ErrConflictingUserHandle
require.ErrorAs(err, &conflict_err) require.ErrorAs(err, &conflict_err)
require.Equal(conflict_err.ConflictingUserID, user2.ID) require.Equal(conflict_err.ConflictingUserID, user2.ID)

View File

@ -5,17 +5,17 @@ import (
"math/rand" "math/rand"
"time" "time"
"gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence" . "gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence"
. "gitlab.com/offline-twitter/twitter_offline_engine/pkg/scraper" . "gitlab.com/offline-twitter/twitter_offline_engine/pkg/scraper"
) )
// Load a test profile, or create it if it doesn't exist. // Load a test profile, or create it if it doesn't exist.
func create_or_load_profile(profile_path string) persistence.Profile { func create_or_load_profile(profile_path string) Profile {
var profile persistence.Profile var profile Profile
var err error var err error
if !file_exists(profile_path) { if !file_exists(profile_path) {
profile, err = persistence.NewProfile(profile_path) profile, err = NewProfile(profile_path)
if err != nil { if err != nil {
panic(err) panic(err)
} }
@ -34,7 +34,7 @@ func create_or_load_profile(profile_path string) persistence.Profile {
} }
err = profile.SaveChatRoom(create_stable_chat_room()) err = profile.SaveChatRoom(create_stable_chat_room())
} else { } else {
profile, err = persistence.LoadProfile(profile_path) profile, err = LoadProfile(profile_path)
} }
if err != nil { if err != nil {
panic(err) panic(err)

View File

@ -7,7 +7,7 @@ import (
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence" . "gitlab.com/offline-twitter/twitter_offline_engine/pkg/persistence"
. "gitlab.com/offline-twitter/twitter_offline_engine/pkg/scraper" . "gitlab.com/offline-twitter/twitter_offline_engine/pkg/scraper"
) )
@ -25,8 +25,8 @@ func TestVersionUpgrade(t *testing.T) {
require.False(profile.IsTweetInDatabase(test_tweet_id), "Test tweet shouldn't be in db yet") require.False(profile.IsTweetInDatabase(test_tweet_id), "Test tweet shouldn't be in db yet")
persistence.MIGRATIONS = append(persistence.MIGRATIONS, test_migration) MIGRATIONS = append(MIGRATIONS, test_migration)
err := profile.UpgradeFromXToY(persistence.ENGINE_DATABASE_VERSION, persistence.ENGINE_DATABASE_VERSION+1) err := profile.UpgradeFromXToY(ENGINE_DATABASE_VERSION, ENGINE_DATABASE_VERSION+1)
require.NoError(err) require.NoError(err)
require.True(profile.IsTweetInDatabase(test_tweet_id), "Migration should have created the tweet, but it didn't") require.True(profile.IsTweetInDatabase(test_tweet_id), "Migration should have created the tweet, but it didn't")