cloutier--bird.makeup/src/Tests/BirdsiteLive.Twitter.Tests/UsersTest.cs

45 lines
1.6 KiB
C#
Raw Normal View History

2022-12-28 14:50:08 -05:00
using Microsoft.VisualStudio.TestTools.UnitTesting;
using Microsoft.Extensions.Logging;
using System.Threading.Tasks;
using BirdsiteLive.Twitter;
using BirdsiteLive.Twitter.Tools;
using BirdsiteLive.Statistics.Domain;
using Moq;
using System.Net.Http;
2023-03-30 19:19:16 -04:00
using BirdsiteLive.Common.Settings;
2022-12-28 14:50:08 -05:00
namespace BirdsiteLive.ActivityPub.Tests
{
[TestClass]
public class UserTests
{
private ITwitterUserService _tweetService;
[TestInitialize]
public async Task TestInit()
{
var logger1 = new Mock<ILogger<TwitterAuthenticationInitializer>>(MockBehavior.Strict);
var logger2 = new Mock<ILogger<TwitterUserService>>(MockBehavior.Strict);
var logger3 = new Mock<ILogger<TwitterUserService>>();
var stats = new Mock<ITwitterStatisticsHandler>();
var httpFactory = new Mock<IHttpClientFactory>();
2023-03-30 19:19:16 -04:00
var settings = new InstanceSettings
{
Domain = "domain.name"
};
httpFactory.Setup(_ => _.CreateClient(string.Empty)).Returns(new HttpClient());
2023-03-30 19:19:16 -04:00
ITwitterAuthenticationInitializer auth = new TwitterAuthenticationInitializer(httpFactory.Object, settings, logger1.Object);
2022-12-28 14:50:08 -05:00
_tweetService = new TwitterUserService(auth, stats.Object, logger3.Object);
}
[TestMethod]
public async Task UserKobe()
2022-12-28 14:50:08 -05:00
{
var user = await _tweetService.GetUserAsync("kobebryant");
Assert.AreEqual(user.Name, "Kobe Bryant");
2022-12-28 15:17:48 -05:00
Assert.AreEqual(user.Acct, "kobebryant");
2022-12-28 14:50:08 -05:00
}
}
}