public async Task CreateUserFollowerShouldDeleteUserFollowerIfExisting() { var options = new DbContextOptionsBuilder <AlexandriaDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options; var db = new AlexandriaDbContext(options); await db.UserFollowers.AddAsync( new UserFollower { UserId = "user1", FollowerId = "user2", }); await db.SaveChangesAsync(); var userFollowerService = new UserFollowersService(db); await userFollowerService.CreateUserFollowerAsync("user1", "user2"); var result = await db.UserFollowers.FirstOrDefaultAsync(); Assert.True(result.IsDeleted); Assert.NotNull(result.DeletedOn); }
public async Task CreateUserFollowerShouldAddInDatabaseIfNotExisting(string userId, string followerId) { var options = new DbContextOptionsBuilder <AlexandriaDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options; var db = new AlexandriaDbContext(options); var userFollowerService = new UserFollowersService(db); await userFollowerService.CreateUserFollowerAsync(userId, followerId); Assert.Equal(1, await db.UserFollowers.CountAsync()); }
public async Task GetFollowingCountShouldNotReturnDeleted() { var options = new DbContextOptionsBuilder <AlexandriaDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options; var db = new AlexandriaDbContext(options); var user1 = new ApplicationUser { Id = "user1", UserName = "******", IsDeleted = false }; var user2 = new ApplicationUser { Id = "user2", UserName = "******", IsDeleted = true }; var user3 = new ApplicationUser { Id = "user3", UserName = "******", IsDeleted = false }; await db.UserFollowers.AddRangeAsync( new UserFollower { User = user1, FollowerId = "follower1", }, new UserFollower { User = user2, FollowerId = "follower1", }, new UserFollower { User = user3, FollowerId = "follower1", IsDeleted = true, }); await db.SaveChangesAsync(); var userFollowerService = new UserFollowersService(db); var result = await userFollowerService.GetFollowingCountByUserIdAsync("follower1"); Assert.Equal(1, result); }
public async Task GetAllFollowingShouldReturnCorrectResultWithTakeAndSkip() { var options = new DbContextOptionsBuilder <AlexandriaDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options; var db = new AlexandriaDbContext(options); var user1 = new ApplicationUser { Id = "user1", UserName = "******", IsDeleted = false }; var user2 = new ApplicationUser { Id = "user2", UserName = "******", IsDeleted = false }; var user3 = new ApplicationUser { Id = "user3", UserName = "******", IsDeleted = false }; await db.UserFollowers.AddRangeAsync( new UserFollower { User = user1, FollowerId = "follower1", }, new UserFollower { User = user2, FollowerId = "follower1", }, new UserFollower { User = user3, FollowerId = "follower1", }); await db.SaveChangesAsync(); var userFollowerService = new UserFollowersService(db); var result = await userFollowerService.GetAllFollowingByUserIdAsync <UserFollowerTestModel>("follower1", 5, 1); Assert.Equal(2, result.Count()); }
public async Task DoesUserFollowUserShouldReturnTrueIfCorrect() { var options = new DbContextOptionsBuilder <AlexandriaDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options; var db = new AlexandriaDbContext(options); await db.UserFollowers.AddAsync( new UserFollower { UserId = "user1", FollowerId = "user2", }); await db.SaveChangesAsync(); var userFollowerService = new UserFollowersService(db); var result = await userFollowerService.DoesUserFollowUserAsync("user1", "user2"); Assert.True(result); }
public void SetUpFixture() { userFollowersService = new UserFollowersService(UserFollowersRepositoryMock.GetMock().Object); }