Exemple #1
0
        public async Task TestRun_DBWithNotifications()
        {
            var testDB = DbServices.GetEmptyTestDB(typeof(UserCardVersionsNotifierTests));

            var user1 = await CreateUserAsync(testDB);

            var user2 = await CreateUserAsync(testDB);

            var user3 = await CreateUserAsync(testDB);

            var card1 = await CreateCardAsync(testDB, user1);

            var card2 = await CreateCardAsync(testDB, user1);

            var card3 = await CreateCardAsync(testDB, user2);

            await CreateCardNotificationAsync(testDB, user3.Id, card1.Id);
            await CreateCardNotificationAsync(testDB, user3.Id, card2.Id);
            await CreateCardNotificationAsync(testDB, user3.Id, card3.Id);
            await CreateCardNotificationAsync(testDB, user1.Id, card2.Id);

            using (var dbContext = new MemCheckDbContext(testDB))
            {
                var getter = new UsersToNotifyGetter(dbContext);
                var users  = getter.Run();
                Assert.AreEqual(2, users.Length);
                Assert.IsTrue(users.Any(u => u.Id == user3.Id));
                Assert.IsTrue(users.Any(u => u.Id == user1.Id));
            }
        }
        public void TestRun_EmptyDB()
        {
            var testDB = DbHelper.GetEmptyTestDB();

            using var dbContext = new MemCheckDbContext(testDB);
            var users = new UsersToNotifyGetter(dbContext.AsCallContext()).Run();

            Assert.AreEqual(0, users.Length);
        }
Exemple #3
0
        public void TestRun_EmptyDB()
        {
            var testDB = DbServices.GetEmptyTestDB(typeof(UserCardVersionsNotifierTests));

            using (var dbContext = new MemCheckDbContext(testDB))
            {
                var getter = new UsersToNotifyGetter(dbContext);
                var users  = getter.Run();
                Assert.AreEqual(0, users.Length);
            }
        }
        public async Task TestRun_DBWithUserNotToNotify()
        {
            var testDB = DbHelper.GetEmptyTestDB();

            await UserHelper.CreateInDbAsync(testDB, 1, new DateTime(2020, 11, 29, 20, 00, 00));

            using var dbContext = new MemCheckDbContext(testDB);
            var users = new UsersToNotifyGetter(dbContext.AsCallContext()).Run(new DateTime(2020, 11, 30, 13, 30, 00));

            Assert.AreEqual(0, users.Length);
        }
Exemple #5
0
        public async Task TestRun_DBWithUsersAndCardsButNoNotification()
        {
            var testDB = DbServices.GetEmptyTestDB(typeof(UserCardVersionsNotifierTests));
            var user1  = await CreateUserAsync(testDB);

            await CreateCardAsync(testDB, user1);

            using (var dbContext = new MemCheckDbContext(testDB))
            {
                var getter = new UsersToNotifyGetter(dbContext);
                var users  = getter.Run();
                Assert.AreEqual(0, users.Length);
            }
        }
        public async Task TestRun_DBWithOneUserToNotify()
        {
            var testDB = DbHelper.GetEmptyTestDB();

            await UserHelper.CreateInDbAsync(testDB, 1, new DateTime(2020, 11, 10));

            await UserHelper.CreateInDbAsync(testDB, 10, new DateTime(2020, 11, 1));

            var userToNotify = await UserHelper.CreateInDbAsync(testDB, 9, new DateTime(2020, 11, 1));

            await UserHelper.CreateInDbAsync(testDB);

            using var dbContext = new MemCheckDbContext(testDB);
            var users = new UsersToNotifyGetter(dbContext.AsCallContext()).Run(new DateTime(2020, 11, 10));

            Assert.AreEqual(1, users.Length);
            Assert.AreEqual(userToNotify, users[0].Id);
        }
        public async Task TestRun_DBWithTwoUsersToNotify()
        {
            var testDB = DbHelper.GetEmptyTestDB();

            var userToNotify1 = await UserHelper.CreateInDbAsync(testDB, 1, new DateTime(2030, 10, 19));

            await UserHelper.CreateInDbAsync(testDB);

            await UserHelper.CreateInDbAsync(testDB, 2, new DateTime(2030, 10, 19));

            var userToNotify2 = await UserHelper.CreateInDbAsync(testDB, 30, new DateTime(2030, 9, 20));

            using var dbContext = new MemCheckDbContext(testDB);
            var users = new UsersToNotifyGetter(dbContext.AsCallContext()).Run(new DateTime(2030, 10, 20));

            Assert.AreEqual(2, users.Length);
            Assert.IsTrue(users.Any(u => u.Id == userToNotify1));
            Assert.IsTrue(users.Any(u => u.Id == userToNotify2));
        }