mirror of
https://github.com/NicolasConstant/BirdsiteLive
synced 2025-06-05 21:49:16 +02:00
added movedTo support in db
This commit is contained in:
@@ -17,6 +17,7 @@ namespace BirdsiteLive.ActivityPub
|
|||||||
public string name { get; set; }
|
public string name { get; set; }
|
||||||
public string summary { get; set; }
|
public string summary { get; set; }
|
||||||
public string url { get; set; }
|
public string url { get; set; }
|
||||||
|
public string movedTo { get; set; }
|
||||||
public bool manuallyApprovesFollowers { get; set; }
|
public bool manuallyApprovesFollowers { get; set; }
|
||||||
public string inbox { get; set; }
|
public string inbox { get; set; }
|
||||||
public bool? discoverable { get; set; } = true;
|
public bool? discoverable { get; set; } = true;
|
||||||
|
@@ -90,6 +90,7 @@ namespace BirdsiteLive.Domain
|
|||||||
summary = description,
|
summary = description,
|
||||||
url = actorUrl,
|
url = actorUrl,
|
||||||
manuallyApprovesFollowers = twitterUser.Protected,
|
manuallyApprovesFollowers = twitterUser.Protected,
|
||||||
|
discoverable = false,
|
||||||
publicKey = new PublicKey()
|
publicKey = new PublicKey()
|
||||||
{
|
{
|
||||||
id = $"{actorUrl}#main-key",
|
id = $"{actorUrl}#main-key",
|
||||||
|
@@ -49,12 +49,12 @@ namespace BirdsiteLive.Pipeline.Processors
|
|||||||
{
|
{
|
||||||
var tweetId = tweets.Last().Id;
|
var tweetId = tweets.Last().Id;
|
||||||
var now = DateTime.UtcNow;
|
var now = DateTime.UtcNow;
|
||||||
await _twitterUserDal.UpdateTwitterUserAsync(user.Id, tweetId, tweetId, user.FetchingErrorCount, now);
|
await _twitterUserDal.UpdateTwitterUserAsync(user.Id, tweetId, tweetId, user.FetchingErrorCount, now, user.MovedTo, user.MovedToAcct);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
var now = DateTime.UtcNow;
|
var now = DateTime.UtcNow;
|
||||||
await _twitterUserDal.UpdateTwitterUserAsync(user.Id, user.LastTweetPostedId, user.LastTweetSynchronizedForAllFollowersId, user.FetchingErrorCount, now);
|
await _twitterUserDal.UpdateTwitterUserAsync(user.Id, user.LastTweetPostedId, user.LastTweetSynchronizedForAllFollowersId, user.FetchingErrorCount, now, user.MovedTo, user.MovedToAcct);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -48,7 +48,7 @@ namespace BirdsiteLive.Pipeline.Processors
|
|||||||
var lastPostedTweet = userWithTweetsToSync.Tweets.Select(x => x.Id).Max();
|
var lastPostedTweet = userWithTweetsToSync.Tweets.Select(x => x.Id).Max();
|
||||||
var minimumSync = followingSyncStatuses.Min();
|
var minimumSync = followingSyncStatuses.Min();
|
||||||
var now = DateTime.UtcNow;
|
var now = DateTime.UtcNow;
|
||||||
await _twitterUserDal.UpdateTwitterUserAsync(userId, lastPostedTweet, minimumSync, userWithTweetsToSync.User.FetchingErrorCount, now);
|
await _twitterUserDal.UpdateTwitterUserAsync(userId, lastPostedTweet, minimumSync, userWithTweetsToSync.User.FetchingErrorCount, now, userWithTweetsToSync.User.MovedTo, userWithTweetsToSync.User.MovedToAcct);
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
|
@@ -23,7 +23,7 @@ namespace BirdsiteLive.DAL.Postgres.DataAccessLayers
|
|||||||
public class DbInitializerPostgresDal : PostgresBase, IDbInitializerDal
|
public class DbInitializerPostgresDal : PostgresBase, IDbInitializerDal
|
||||||
{
|
{
|
||||||
private readonly PostgresTools _tools;
|
private readonly PostgresTools _tools;
|
||||||
private readonly Version _currentVersion = new Version(2, 4);
|
private readonly Version _currentVersion = new Version(2, 5);
|
||||||
private const string DbVersionType = "db-version";
|
private const string DbVersionType = "db-version";
|
||||||
|
|
||||||
#region Ctor
|
#region Ctor
|
||||||
@@ -135,7 +135,8 @@ namespace BirdsiteLive.DAL.Postgres.DataAccessLayers
|
|||||||
new Tuple<Version, Version>(new Version(2,0), new Version(2,1)),
|
new Tuple<Version, Version>(new Version(2,0), new Version(2,1)),
|
||||||
new Tuple<Version, Version>(new Version(2,1), new Version(2,2)),
|
new Tuple<Version, Version>(new Version(2,1), new Version(2,2)),
|
||||||
new Tuple<Version, Version>(new Version(2,2), new Version(2,3)),
|
new Tuple<Version, Version>(new Version(2,2), new Version(2,3)),
|
||||||
new Tuple<Version, Version>(new Version(2,3), new Version(2,4))
|
new Tuple<Version, Version>(new Version(2,3), new Version(2,4)),
|
||||||
|
new Tuple<Version, Version>(new Version(2,4), new Version(2,5))
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -172,6 +173,14 @@ namespace BirdsiteLive.DAL.Postgres.DataAccessLayers
|
|||||||
var alterPostingError = $@"ALTER TABLE {_settings.FollowersTableName} ALTER COLUMN postingErrorCount TYPE INTEGER";
|
var alterPostingError = $@"ALTER TABLE {_settings.FollowersTableName} ALTER COLUMN postingErrorCount TYPE INTEGER";
|
||||||
await _tools.ExecuteRequestAsync(alterPostingError);
|
await _tools.ExecuteRequestAsync(alterPostingError);
|
||||||
}
|
}
|
||||||
|
else if (from == new Version(2, 4) && to == new Version(2, 5))
|
||||||
|
{
|
||||||
|
var addMovedTo = $@"ALTER TABLE {_settings.TwitterUserTableName} ADD movedTo VARCHAR(2048)";
|
||||||
|
await _tools.ExecuteRequestAsync(addMovedTo);
|
||||||
|
|
||||||
|
var addMovedToAcct = $@"ALTER TABLE {_settings.TwitterUserTableName} ADD movedToAcct VARCHAR(305)";
|
||||||
|
await _tools.ExecuteRequestAsync(addMovedToAcct);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
throw new NotImplementedException();
|
throw new NotImplementedException();
|
||||||
|
@@ -18,7 +18,7 @@ namespace BirdsiteLive.DAL.Postgres.DataAccessLayers
|
|||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
public async Task CreateTwitterUserAsync(string acct, long lastTweetPostedId)
|
public async Task CreateTwitterUserAsync(string acct, long lastTweetPostedId, string movedTo = null, string movedToAcct = null)
|
||||||
{
|
{
|
||||||
acct = acct.ToLowerInvariant();
|
acct = acct.ToLowerInvariant();
|
||||||
|
|
||||||
@@ -27,8 +27,15 @@ namespace BirdsiteLive.DAL.Postgres.DataAccessLayers
|
|||||||
dbConnection.Open();
|
dbConnection.Open();
|
||||||
|
|
||||||
await dbConnection.ExecuteAsync(
|
await dbConnection.ExecuteAsync(
|
||||||
$"INSERT INTO {_settings.TwitterUserTableName} (acct,lastTweetPostedId,lastTweetSynchronizedForAllFollowersId) VALUES(@acct,@lastTweetPostedId,@lastTweetSynchronizedForAllFollowersId)",
|
$"INSERT INTO {_settings.TwitterUserTableName} (acct,lastTweetPostedId,lastTweetSynchronizedForAllFollowersId, movedTo, movedToAcct) VALUES(@acct,@lastTweetPostedId,@lastTweetSynchronizedForAllFollowersId,@movedTo,@movedToAcct)",
|
||||||
new { acct, lastTweetPostedId, lastTweetSynchronizedForAllFollowersId = lastTweetPostedId });
|
new
|
||||||
|
{
|
||||||
|
acct,
|
||||||
|
lastTweetPostedId,
|
||||||
|
lastTweetSynchronizedForAllFollowersId = lastTweetPostedId,
|
||||||
|
movedTo,
|
||||||
|
movedToAcct
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -62,7 +69,7 @@ namespace BirdsiteLive.DAL.Postgres.DataAccessLayers
|
|||||||
|
|
||||||
public async Task<int> GetTwitterUsersCountAsync()
|
public async Task<int> GetTwitterUsersCountAsync()
|
||||||
{
|
{
|
||||||
var query = $"SELECT COUNT(*) FROM {_settings.TwitterUserTableName}";
|
var query = $"SELECT COUNT(*) FROM {_settings.TwitterUserTableName} WHERE (movedTo = '') IS NOT FALSE";
|
||||||
|
|
||||||
using (var dbConnection = Connection)
|
using (var dbConnection = Connection)
|
||||||
{
|
{
|
||||||
@@ -75,7 +82,7 @@ namespace BirdsiteLive.DAL.Postgres.DataAccessLayers
|
|||||||
|
|
||||||
public async Task<int> GetFailingTwitterUsersCountAsync()
|
public async Task<int> GetFailingTwitterUsersCountAsync()
|
||||||
{
|
{
|
||||||
var query = $"SELECT COUNT(*) FROM {_settings.TwitterUserTableName} WHERE fetchingErrorCount > 0";
|
var query = $"SELECT COUNT(*) FROM {_settings.TwitterUserTableName} WHERE fetchingErrorCount > 0 AND (movedTo = '') IS NOT FALSE";
|
||||||
|
|
||||||
using (var dbConnection = Connection)
|
using (var dbConnection = Connection)
|
||||||
{
|
{
|
||||||
@@ -88,7 +95,7 @@ namespace BirdsiteLive.DAL.Postgres.DataAccessLayers
|
|||||||
|
|
||||||
public async Task<SyncTwitterUser[]> GetAllTwitterUsersAsync(int maxNumber)
|
public async Task<SyncTwitterUser[]> GetAllTwitterUsersAsync(int maxNumber)
|
||||||
{
|
{
|
||||||
var query = $"SELECT * FROM {_settings.TwitterUserTableName} ORDER BY lastSync ASC NULLS FIRST LIMIT @maxNumber";
|
var query = $"SELECT * FROM {_settings.TwitterUserTableName} WHERE (movedTo = '') IS NOT FALSE ORDER BY lastSync ASC NULLS FIRST LIMIT @maxNumber";
|
||||||
|
|
||||||
using (var dbConnection = Connection)
|
using (var dbConnection = Connection)
|
||||||
{
|
{
|
||||||
@@ -101,7 +108,7 @@ namespace BirdsiteLive.DAL.Postgres.DataAccessLayers
|
|||||||
|
|
||||||
public async Task<SyncTwitterUser[]> GetAllTwitterUsersAsync()
|
public async Task<SyncTwitterUser[]> GetAllTwitterUsersAsync()
|
||||||
{
|
{
|
||||||
var query = $"SELECT * FROM {_settings.TwitterUserTableName}";
|
var query = $"SELECT * FROM {_settings.TwitterUserTableName} WHERE (movedTo = '') IS NOT FALSE";
|
||||||
|
|
||||||
using (var dbConnection = Connection)
|
using (var dbConnection = Connection)
|
||||||
{
|
{
|
||||||
@@ -112,26 +119,35 @@ namespace BirdsiteLive.DAL.Postgres.DataAccessLayers
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task UpdateTwitterUserAsync(int id, long lastTweetPostedId, long lastTweetSynchronizedForAllFollowersId, int fetchingErrorCount, DateTime lastSync)
|
public async Task UpdateTwitterUserAsync(int id, long lastTweetPostedId, long lastTweetSynchronizedForAllFollowersId, int fetchingErrorCount, DateTime lastSync, string movedTo, string movedToAcct)
|
||||||
{
|
{
|
||||||
if(id == default) throw new ArgumentException("id");
|
if(id == default) throw new ArgumentException("id");
|
||||||
if(lastTweetPostedId == default) throw new ArgumentException("lastTweetPostedId");
|
if(lastTweetPostedId == default) throw new ArgumentException("lastTweetPostedId");
|
||||||
if(lastTweetSynchronizedForAllFollowersId == default) throw new ArgumentException("lastTweetSynchronizedForAllFollowersId");
|
if(lastTweetSynchronizedForAllFollowersId == default) throw new ArgumentException("lastTweetSynchronizedForAllFollowersId");
|
||||||
if(lastSync == default) throw new ArgumentException("lastSync");
|
if(lastSync == default) throw new ArgumentException("lastSync");
|
||||||
|
|
||||||
var query = $"UPDATE {_settings.TwitterUserTableName} SET lastTweetPostedId = @lastTweetPostedId, lastTweetSynchronizedForAllFollowersId = @lastTweetSynchronizedForAllFollowersId, fetchingErrorCount = @fetchingErrorCount, lastSync = @lastSync WHERE id = @id";
|
var query = $"UPDATE {_settings.TwitterUserTableName} SET lastTweetPostedId = @lastTweetPostedId, lastTweetSynchronizedForAllFollowersId = @lastTweetSynchronizedForAllFollowersId, fetchingErrorCount = @fetchingErrorCount, lastSync = @lastSync, movedTo = @movedTo, movedToAcct = @movedToAcct WHERE id = @id";
|
||||||
|
|
||||||
using (var dbConnection = Connection)
|
using (var dbConnection = Connection)
|
||||||
{
|
{
|
||||||
dbConnection.Open();
|
dbConnection.Open();
|
||||||
|
|
||||||
await dbConnection.QueryAsync(query, new { id, lastTweetPostedId, lastTweetSynchronizedForAllFollowersId, fetchingErrorCount, lastSync = lastSync.ToUniversalTime() });
|
await dbConnection.QueryAsync(query, new
|
||||||
|
{
|
||||||
|
id,
|
||||||
|
lastTweetPostedId,
|
||||||
|
lastTweetSynchronizedForAllFollowersId,
|
||||||
|
fetchingErrorCount,
|
||||||
|
lastSync = lastSync.ToUniversalTime(),
|
||||||
|
movedTo,
|
||||||
|
movedToAcct
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task UpdateTwitterUserAsync(SyncTwitterUser user)
|
public async Task UpdateTwitterUserAsync(SyncTwitterUser user)
|
||||||
{
|
{
|
||||||
await UpdateTwitterUserAsync(user.Id, user.LastTweetPostedId, user.LastTweetSynchronizedForAllFollowersId, user.FetchingErrorCount, user.LastSync);
|
await UpdateTwitterUserAsync(user.Id, user.LastTweetPostedId, user.LastTweetSynchronizedForAllFollowersId, user.FetchingErrorCount, user.LastSync, user.MovedTo, user.MovedToAcct);
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task DeleteTwitterUserAsync(string acct)
|
public async Task DeleteTwitterUserAsync(string acct)
|
||||||
|
@@ -6,12 +6,13 @@ namespace BirdsiteLive.DAL.Contracts
|
|||||||
{
|
{
|
||||||
public interface ITwitterUserDal
|
public interface ITwitterUserDal
|
||||||
{
|
{
|
||||||
Task CreateTwitterUserAsync(string acct, long lastTweetPostedId);
|
Task CreateTwitterUserAsync(string acct, long lastTweetPostedId, string movedTo = null,
|
||||||
|
string movedToAcct = null);
|
||||||
Task<SyncTwitterUser> GetTwitterUserAsync(string acct);
|
Task<SyncTwitterUser> GetTwitterUserAsync(string acct);
|
||||||
Task<SyncTwitterUser> GetTwitterUserAsync(int id);
|
Task<SyncTwitterUser> GetTwitterUserAsync(int id);
|
||||||
Task<SyncTwitterUser[]> GetAllTwitterUsersAsync(int maxNumber);
|
Task<SyncTwitterUser[]> GetAllTwitterUsersAsync(int maxNumber);
|
||||||
Task<SyncTwitterUser[]> GetAllTwitterUsersAsync();
|
Task<SyncTwitterUser[]> GetAllTwitterUsersAsync();
|
||||||
Task UpdateTwitterUserAsync(int id, long lastTweetPostedId, long lastTweetSynchronizedForAllFollowersId, int fetchingErrorCount, DateTime lastSync);
|
Task UpdateTwitterUserAsync(int id, long lastTweetPostedId, long lastTweetSynchronizedForAllFollowersId, int fetchingErrorCount, DateTime lastSync, string movedTo, string movedToAcct);
|
||||||
Task UpdateTwitterUserAsync(SyncTwitterUser user);
|
Task UpdateTwitterUserAsync(SyncTwitterUser user);
|
||||||
Task DeleteTwitterUserAsync(string acct);
|
Task DeleteTwitterUserAsync(string acct);
|
||||||
Task DeleteTwitterUserAsync(int id);
|
Task DeleteTwitterUserAsync(int id);
|
||||||
|
@@ -12,6 +12,9 @@ namespace BirdsiteLive.DAL.Models
|
|||||||
|
|
||||||
public DateTime LastSync { get; set; }
|
public DateTime LastSync { get; set; }
|
||||||
|
|
||||||
public int FetchingErrorCount { get; set; } //TODO: update DAL
|
public int FetchingErrorCount { get; set; }
|
||||||
|
|
||||||
|
public string MovedTo { get; set; }
|
||||||
|
public string MovedToAcct { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
@@ -87,7 +87,7 @@ namespace BirdsiteLive.DAL.Postgres.Tests.DataAccessLayers
|
|||||||
var updatedLastSyncId = 1550L;
|
var updatedLastSyncId = 1550L;
|
||||||
var now = DateTime.Now;
|
var now = DateTime.Now;
|
||||||
var errors = 15;
|
var errors = 15;
|
||||||
await dal.UpdateTwitterUserAsync(result.Id, updatedLastTweetId, updatedLastSyncId, errors, now);
|
await dal.UpdateTwitterUserAsync(result.Id, updatedLastTweetId, updatedLastSyncId, errors, now, null, null);
|
||||||
|
|
||||||
result = await dal.GetTwitterUserAsync(acct);
|
result = await dal.GetTwitterUserAsync(acct);
|
||||||
|
|
||||||
@@ -96,6 +96,8 @@ namespace BirdsiteLive.DAL.Postgres.Tests.DataAccessLayers
|
|||||||
Assert.AreEqual(updatedLastSyncId, result.LastTweetSynchronizedForAllFollowersId);
|
Assert.AreEqual(updatedLastSyncId, result.LastTweetSynchronizedForAllFollowersId);
|
||||||
Assert.AreEqual(errors, result.FetchingErrorCount);
|
Assert.AreEqual(errors, result.FetchingErrorCount);
|
||||||
Assert.IsTrue(Math.Abs((now.ToUniversalTime() - result.LastSync).Milliseconds) < 100);
|
Assert.IsTrue(Math.Abs((now.ToUniversalTime() - result.LastSync).Milliseconds) < 100);
|
||||||
|
Assert.AreEqual(null, result.MovedTo);
|
||||||
|
Assert.AreEqual(null, result.MovedToAcct);
|
||||||
}
|
}
|
||||||
|
|
||||||
[TestMethod]
|
[TestMethod]
|
||||||
@@ -167,7 +169,7 @@ namespace BirdsiteLive.DAL.Postgres.Tests.DataAccessLayers
|
|||||||
public async Task Update_NoId()
|
public async Task Update_NoId()
|
||||||
{
|
{
|
||||||
var dal = new TwitterUserPostgresDal(_settings);
|
var dal = new TwitterUserPostgresDal(_settings);
|
||||||
await dal.UpdateTwitterUserAsync(default, default, default, default, DateTime.UtcNow);
|
await dal.UpdateTwitterUserAsync(default, default, default, default, DateTime.UtcNow, null, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
[TestMethod]
|
[TestMethod]
|
||||||
@@ -175,7 +177,7 @@ namespace BirdsiteLive.DAL.Postgres.Tests.DataAccessLayers
|
|||||||
public async Task Update_NoLastTweetPostedId()
|
public async Task Update_NoLastTweetPostedId()
|
||||||
{
|
{
|
||||||
var dal = new TwitterUserPostgresDal(_settings);
|
var dal = new TwitterUserPostgresDal(_settings);
|
||||||
await dal.UpdateTwitterUserAsync(12, default, default, default, DateTime.UtcNow);
|
await dal.UpdateTwitterUserAsync(12, default, default, default, DateTime.UtcNow, null, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
[TestMethod]
|
[TestMethod]
|
||||||
@@ -183,7 +185,7 @@ namespace BirdsiteLive.DAL.Postgres.Tests.DataAccessLayers
|
|||||||
public async Task Update_NoLastTweetSynchronizedForAllFollowersId()
|
public async Task Update_NoLastTweetSynchronizedForAllFollowersId()
|
||||||
{
|
{
|
||||||
var dal = new TwitterUserPostgresDal(_settings);
|
var dal = new TwitterUserPostgresDal(_settings);
|
||||||
await dal.UpdateTwitterUserAsync(12, 9556, default, default, DateTime.UtcNow);
|
await dal.UpdateTwitterUserAsync(12, 9556, default, default, DateTime.UtcNow, null, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
[TestMethod]
|
[TestMethod]
|
||||||
@@ -191,7 +193,7 @@ namespace BirdsiteLive.DAL.Postgres.Tests.DataAccessLayers
|
|||||||
public async Task Update_NoLastSync()
|
public async Task Update_NoLastSync()
|
||||||
{
|
{
|
||||||
var dal = new TwitterUserPostgresDal(_settings);
|
var dal = new TwitterUserPostgresDal(_settings);
|
||||||
await dal.UpdateTwitterUserAsync(12, 9556, 65, default, default);
|
await dal.UpdateTwitterUserAsync(12, 9556, 65, default, default, null, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
[TestMethod]
|
[TestMethod]
|
||||||
@@ -318,7 +320,7 @@ namespace BirdsiteLive.DAL.Postgres.Tests.DataAccessLayers
|
|||||||
{
|
{
|
||||||
var user = allUsers[i];
|
var user = allUsers[i];
|
||||||
var date = i % 2 == 0 ? oldest : newest;
|
var date = i % 2 == 0 ? oldest : newest;
|
||||||
await dal.UpdateTwitterUserAsync(user.Id, user.LastTweetPostedId, user.LastTweetSynchronizedForAllFollowersId, 0, date);
|
await dal.UpdateTwitterUserAsync(user.Id, user.LastTweetPostedId, user.LastTweetSynchronizedForAllFollowersId, 0, date, null, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
var result = await dal.GetAllTwitterUsersAsync(10);
|
var result = await dal.GetAllTwitterUsersAsync(10);
|
||||||
@@ -382,7 +384,7 @@ namespace BirdsiteLive.DAL.Postgres.Tests.DataAccessLayers
|
|||||||
if (i == 0 || i == 2 || i == 3)
|
if (i == 0 || i == 2 || i == 3)
|
||||||
{
|
{
|
||||||
var t = await dal.GetTwitterUserAsync(acct);
|
var t = await dal.GetTwitterUserAsync(acct);
|
||||||
await dal.UpdateTwitterUserAsync(t.Id ,1L,2L, 50+i*2, DateTime.Now);
|
await dal.UpdateTwitterUserAsync(t.Id ,1L,2L, 50+i*2, DateTime.Now, null, null);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -77,7 +77,9 @@ namespace BirdsiteLive.Domain.Tests.BusinessUseCases
|
|||||||
twitterUserDalMock
|
twitterUserDalMock
|
||||||
.Setup(x => x.CreateTwitterUserAsync(
|
.Setup(x => x.CreateTwitterUserAsync(
|
||||||
It.Is<string>(y => y == twitterName),
|
It.Is<string>(y => y == twitterName),
|
||||||
It.Is<long>(y => y == -1)))
|
It.Is<long>(y => y == -1),
|
||||||
|
It.Is<string>(y => y == null),
|
||||||
|
It.Is<string>(y => y == null)))
|
||||||
.Returns(Task.CompletedTask);
|
.Returns(Task.CompletedTask);
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
@@ -64,7 +64,9 @@ namespace BirdsiteLive.Pipeline.Tests.Processors
|
|||||||
It.Is<long>(y => y == tweets.Last().Id),
|
It.Is<long>(y => y == tweets.Last().Id),
|
||||||
It.Is<long>(y => y == tweets.Last().Id),
|
It.Is<long>(y => y == tweets.Last().Id),
|
||||||
It.Is<int>(y => y == 0),
|
It.Is<int>(y => y == 0),
|
||||||
It.IsAny<DateTime>()
|
It.IsAny<DateTime>(),
|
||||||
|
It.Is<string>(y => y == null),
|
||||||
|
It.Is<string>(y => y == null)
|
||||||
))
|
))
|
||||||
.Returns(Task.CompletedTask);
|
.Returns(Task.CompletedTask);
|
||||||
|
|
||||||
|
@@ -66,7 +66,9 @@ namespace BirdsiteLive.Pipeline.Tests.Processors
|
|||||||
It.Is<long>(y => y == tweet2.Id),
|
It.Is<long>(y => y == tweet2.Id),
|
||||||
It.Is<long>(y => y == tweet2.Id),
|
It.Is<long>(y => y == tweet2.Id),
|
||||||
It.Is<int>(y => y == 0),
|
It.Is<int>(y => y == 0),
|
||||||
It.IsAny<DateTime>()
|
It.IsAny<DateTime>(),
|
||||||
|
It.Is<string>(y => y == null),
|
||||||
|
It.Is<string>(y => y == null)
|
||||||
))
|
))
|
||||||
.Returns(Task.CompletedTask);
|
.Returns(Task.CompletedTask);
|
||||||
|
|
||||||
@@ -133,7 +135,9 @@ namespace BirdsiteLive.Pipeline.Tests.Processors
|
|||||||
It.Is<long>(y => y == tweet2.Id),
|
It.Is<long>(y => y == tweet2.Id),
|
||||||
It.Is<long>(y => y == tweet2.Id),
|
It.Is<long>(y => y == tweet2.Id),
|
||||||
It.Is<int>(y => y == 0),
|
It.Is<int>(y => y == 0),
|
||||||
It.IsAny<DateTime>()
|
It.IsAny<DateTime>(),
|
||||||
|
It.Is<string>(y => y == null),
|
||||||
|
It.Is<string>(y => y == null)
|
||||||
))
|
))
|
||||||
.Throws(new ArgumentException());
|
.Throws(new ArgumentException());
|
||||||
|
|
||||||
@@ -202,7 +206,9 @@ namespace BirdsiteLive.Pipeline.Tests.Processors
|
|||||||
It.Is<long>(y => y == tweet3.Id),
|
It.Is<long>(y => y == tweet3.Id),
|
||||||
It.Is<long>(y => y == tweet2.Id),
|
It.Is<long>(y => y == tweet2.Id),
|
||||||
It.Is<int>(y => y == 0),
|
It.Is<int>(y => y == 0),
|
||||||
It.IsAny<DateTime>()
|
It.IsAny<DateTime>(),
|
||||||
|
It.Is<string>(y => y == null),
|
||||||
|
It.Is<string>(y => y == null)
|
||||||
))
|
))
|
||||||
.Returns(Task.CompletedTask);
|
.Returns(Task.CompletedTask);
|
||||||
|
|
||||||
@@ -281,7 +287,9 @@ namespace BirdsiteLive.Pipeline.Tests.Processors
|
|||||||
It.Is<long>(y => y == tweet3.Id),
|
It.Is<long>(y => y == tweet3.Id),
|
||||||
It.Is<long>(y => y == tweet2.Id),
|
It.Is<long>(y => y == tweet2.Id),
|
||||||
It.Is<int>(y => y == 0),
|
It.Is<int>(y => y == 0),
|
||||||
It.IsAny<DateTime>()
|
It.IsAny<DateTime>(),
|
||||||
|
It.Is<string>(y => y == null),
|
||||||
|
It.Is<string>(y => y == null)
|
||||||
))
|
))
|
||||||
.Returns(Task.CompletedTask);
|
.Returns(Task.CompletedTask);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user