コード例 #1
0
        public void DeleteShouldDeleteAndReturnTheDeletedUserRole()
        {
            var options = new DbContextOptionsBuilder <TasksDbContext>()
                          .UseInMemoryDatabase(databaseName: nameof(DeleteShouldDeleteAndReturnTheDeletedUserRole))
                          .Options;

            using (var context = new TasksDbContext(options))
            {
                var userRoleService = new UserRoleService(context);
                var addUserRole     = new UserRolePostDTO()
                {
                    Name        = "Newcomer",
                    Description = "A new guy..."
                };


                var actual               = userRoleService.Create(addUserRole);
                var afterDelete          = userRoleService.Delete(actual.Id);
                int numberOfUserRoleInDb = context.UserRoles.CountAsync().Result;
                var resultUR             = context.UserRoles.Find(actual.Id);


                Assert.IsNotNull(afterDelete);
                Assert.IsNull(resultUR);
                Assert.AreEqual(0, numberOfUserRoleInDb);
            }
        }
コード例 #2
0
        public void UpsertShouldModifyTheGivenUserRole()
        {
            var options = new DbContextOptionsBuilder <TasksDbContext>()
                          .UseInMemoryDatabase(databaseName: nameof(UpsertShouldModifyTheGivenUserRole))
                          .EnableSensitiveDataLogging()
                          .Options;

            using (var context = new TasksDbContext(options))
            {
                var userRoleService = new UserRoleService(context);
                var toAdd           = new UserRolePostDTO
                {
                    Name        = "Newcomer",
                    Description = "A new guy..."
                };

                var added = userRoleService.Create(toAdd);

                //context.Entry(added).State = EntityState.Detached;

                var update = new UserRolePostDTO
                {
                    Name = "Rouge"
                };

                //var updateResult = userRoleService.Upsert(added.Id, update);

                Assert.NotNull(added);
                Assert.AreEqual(toAdd.Name, toAdd.Name);
                Assert.AreNotEqual(update.Name, toAdd.Name);
            }
        }
コード例 #3
0
        public UserRoleGetDTO Create(UserRolePostDTO userRolePostDTO)
        {
            UserRole toAdd = UserRolePostDTO.ToUserRole(userRolePostDTO);

            context.UserRoles.Add(toAdd);
            context.SaveChanges();
            return(UserRoleGetDTO.FromUserRole(toAdd));
        }
コード例 #4
0
        public UserRoleGetDTO Upsert(int id, UserRolePostDTO userRolePostDTO)
        {
            var existing = context.UserRoles.AsNoTracking().FirstOrDefault(urole => urole.Id == id);

            if (existing == null)
            {
                UserRole toAdd = UserRolePostDTO.ToUserRole(userRolePostDTO);
                context.UserRoles.Add(toAdd);
                context.SaveChanges();
                return(UserRoleGetDTO.FromUserRole(toAdd));
            }

            UserRole Up = UserRolePostDTO.ToUserRole(userRolePostDTO);

            Up.Id = id;
            context.UserRoles.Update(Up);
            context.SaveChanges();
            return(UserRoleGetDTO.FromUserRole(Up));
        }
コード例 #5
0
        public void GetAllShouldReturnAllUserRoles()
        {
            var options = new DbContextOptionsBuilder <TasksDbContext>()
                          .UseInMemoryDatabase(databaseName: nameof(GetAllShouldReturnAllUserRoles))
                          .Options;

            using (var context = new TasksDbContext(options))
            {
                var userRoleService = new UserRoleService(context);
                var addUserRole     = new UserRolePostDTO()
                {
                    Name        = "Newcomer",
                    Description = "A new guy..."
                };


                var current  = userRoleService.Create(addUserRole);
                var allUsers = userRoleService.GetAll();
                Assert.IsNotNull(allUsers);
                Assert.AreEqual(1, allUsers.Count());
            }
        }
コード例 #6
0
        public void CreateShouldAddAndReturnTheCreatedUserRole()
        {
            var options = new DbContextOptionsBuilder <TasksDbContext>()
                          .UseInMemoryDatabase(databaseName: nameof(CreateShouldAddAndReturnTheCreatedUserRole))
                          .Options;

            using (var context = new TasksDbContext(options))
            {
                var userRoleService = new UserRoleService(context);
                var addUserRole     = new UserRolePostDTO()
                {
                    Name        = "Newcomer",
                    Description = "A new guy..."
                };


                var current = userRoleService.Create(addUserRole);


                Assert.IsNotNull(current);
                Assert.AreEqual("Newcomer", current.Name);
            }
        }
コード例 #7
0
        public void GetByIdShouldReturnUserRoleWithCorrectId()
        {
            var options = new DbContextOptionsBuilder <TasksDbContext>()
                          .UseInMemoryDatabase(databaseName: nameof(GetByIdShouldReturnUserRoleWithCorrectId))
                          .Options;

            using (var context = new TasksDbContext(options))
            {
                var userRoleService = new UserRoleService(context);
                var addUserRole     = new UserRolePostDTO()
                {
                    Name        = "Newcomer",
                    Description = "A new guy..."
                };


                var current  = userRoleService.Create(addUserRole);
                var expected = userRoleService.GetById(current.Id);

                Assert.IsNotNull(expected);
                Assert.AreEqual(expected.Name, current.Name);
                Assert.AreEqual(expected.Id, current.Id);
            }
        }
コード例 #8
0
 public void Post([FromBody] UserRolePostDTO userRolePostDTO)
 {
     userRoleService.Create(userRolePostDTO);
 }
コード例 #9
0
        public IActionResult Put(int id, [FromBody] UserRolePostDTO userRolePostDTO)
        {
            var result = userRoleService.Upsert(id, userRolePostDTO);

            return(Ok(result));
        }