Ejemplo n.º 1
0
        public void InstantiatesCorrectly_WhenAllDependenciesAreNotNull()
        {
            var mockedRepo = new Mock <IDbRepository <User> >();
            var mockedUow  = new Mock <IUnitOfWork>();
            var service    = new UsersService(mockedRepo.Object, mockedUow.Object);
            var users      = new List <User>();

            mockedRepo.Setup(x => x.All()).Returns(users.AsQueryable());

            var all = service.AllUsers();

            mockedRepo.Verify(x => x.All(), Times.Once);
        }
Ejemplo n.º 2
0
        public async Task UnRestrictUserShouldReturnFalseOnTryingUnRestrictingCurrentUser()
        {
            var userRepo = new Mock <IRepository <User> >();

            userRepo.Setup(r => r.All()).Returns(new List <User>
            {
                new User
                {
                    Id             = "1",
                    UserName       = "******",
                    PurchaseOrders = new List <Order>(),
                    Reports        = new List <Report>(),
                    MyProducts     = new List <Product>(),
                    IsRestricted   = true
                },
                new User
                {
                    Id             = "2",
                    UserName       = "******",
                    PurchaseOrders = new List <Order>(),
                    Reports        = new List <Report>(),
                    MyProducts     = new List <Product>(),
                    IsRestricted   = true
                },
                new User
                {
                    Id             = "3",
                    UserName       = "******",
                    PurchaseOrders = new List <Order>(),
                    Reports        = new List <Report>(),
                    MyProducts     = new List <Product>(),
                    IsRestricted   = true
                }
            }.AsQueryable());

            var service = new UsersService(userRepo.Object, null, null);
            var result  = await service.UnRestrictUser("1", "stamat");

            var users = service.AllUsers("4");

            Assert.DoesNotContain(users, u => !u.IsRestricted);
            Assert.False(result);
            userRepo.Verify(r => r.SaveChangesAsync(), Times.Never);
        }
Ejemplo n.º 3
0
        public async Task RestrictUserShouldWorkWithExistingUser()
        {
            var userRepo = new Mock <IRepository <User> >();

            userRepo.Setup(r => r.All()).Returns(new List <User>
            {
                new User
                {
                    Id             = "1",
                    UserName       = "******",
                    PurchaseOrders = new List <Order>(),
                    Reports        = new List <Report>(),
                    MyProducts     = new List <Product>(),
                    IsRestricted   = false
                },
                new User
                {
                    Id             = "2",
                    UserName       = "******",
                    PurchaseOrders = new List <Order>(),
                    Reports        = new List <Report>(),
                    MyProducts     = new List <Product>(),
                    IsRestricted   = false
                },
                new User
                {
                    Id             = "3",
                    UserName       = "******",
                    PurchaseOrders = new List <Order>(),
                    Reports        = new List <Report>(),
                    MyProducts     = new List <Product>(),
                    IsRestricted   = false
                }
            }.AsQueryable());

            var service = new UsersService(userRepo.Object, null, null);
            var result  = await service.RestrictUser("1", "nqkuv");

            var users = service.AllUsers("4");

            Assert.Contains(users, u => u.IsRestricted);
            Assert.True(result);
            userRepo.Verify(r => r.SaveChangesAsync(), Times.Once);
        }
Ejemplo n.º 4
0
        public void IsUserRestrictedShouldReturnFalseForNonExistingUser()
        {
            var userRepo = new Mock <IRepository <User> >();

            userRepo.Setup(r => r.All()).Returns(new List <User>
            {
                new User
                {
                    Id             = "1",
                    UserName       = "******",
                    PurchaseOrders = new List <Order>(),
                    Reports        = new List <Report>(),
                    MyProducts     = new List <Product>(),
                    IsRestricted   = false
                },
                new User
                {
                    Id             = "2",
                    UserName       = "******",
                    PurchaseOrders = new List <Order>(),
                    Reports        = new List <Report>(),
                    MyProducts     = new List <Product>(),
                    IsRestricted   = false
                },
                new User
                {
                    Id             = "3",
                    UserName       = "******",
                    PurchaseOrders = new List <Order>(),
                    Reports        = new List <Report>(),
                    MyProducts     = new List <Product>(),
                    IsRestricted   = false
                }
            }.AsQueryable());

            var service = new UsersService(userRepo.Object, null, null);
            var result  = service.IsUserRestricted("nqkuv");

            var users = service.AllUsers("nqkuv");

            Assert.DoesNotContain(users, u => u.IsRestricted);
            Assert.False(result);
        }
Ejemplo n.º 5
0
        public void AllUsersShouldReturnAllUsersExceptCurrentOne()
        {
            var userRepo = new Mock <IRepository <User> >();

            userRepo.Setup(r => r.All()).Returns(new List <User>
            {
                new User
                {
                    UserName       = "******",
                    PurchaseOrders = new List <Order>(),
                    Reports        = new List <Report>(),
                    MyProducts     = new List <Product>()
                },
                new User
                {
                    UserName       = "******",
                    PurchaseOrders = new List <Order>(),
                    Reports        = new List <Report>(),
                    MyProducts     = new List <Product>()
                },
                new User
                {
                    UserName       = "******",
                    PurchaseOrders = new List <Order>(),
                    Reports        = new List <Report>(),
                    MyProducts     = new List <Product>()
                }
            }.AsQueryable());

            var service = new UsersService(userRepo.Object, null, null);
            var users   = service.AllUsers("stamat");

            Assert.Equal(2, users.Count);
            Assert.DoesNotContain(users, u => u.UserName == "stamat");
            userRepo.Verify(r => r.All(), Times.Once);
        }