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

            using (var context = new TasksDbContext(options))
            {
                context.TaskGroups.AddRange(new TaskGroupEntity
                {
                    Name      = "TestGroup1",
                    UserTasks = new List <UserTaskEntity> {
                        new UserTaskEntity {
                            Name = "TestTask"
                        }
                    }
                }, new TaskGroupEntity
                {
                    Name = "TestGroup2"
                });
                context.SaveChanges();
            }

            using (var context = new TasksDbContext(options))
            {
                var taskGroupManager = new TaskGroupDbManager(context, _mapper);
                var result           = taskGroupManager.Get(1);

                Assert.That(result.Id, Is.EqualTo(1));
                Assert.That(result.Name, Is.EqualTo("TestGroup1"));
                Assert.That(result.UserTasks.ToList().Exists(t => t.Name == "TestTask"), Is.True);

                context.Database.EnsureDeleted();
            }
        }
コード例 #2
0
        public void Get_ShouldReturn_AllGroupsFromDb()
        {
            var options = new DbContextOptionsBuilder <TasksDbContext>()
                          .UseInMemoryDatabase(databaseName: "Get_all_groups")
                          .Options;

            using (var context = new TasksDbContext(options))
            {
                context.TaskGroups.AddRange(new TaskGroupEntity
                {
                    Name      = "TestGroup1",
                    UserTasks = new List <UserTaskEntity> {
                        new UserTaskEntity {
                            Name = "TestTask"
                        }
                    }
                }, new TaskGroupEntity
                {
                    Name = "TestGroup2"
                });
                context.SaveChanges();
            }

            using (var context = new TasksDbContext(options))
            {
                var taskGroupManager = new TaskGroupDbManager(context, _mapper);
                var result           = taskGroupManager.Get();

                Assert.That(result.Count, Is.EqualTo(2));
                Assert.That(result.Exists(group => group.Name == "TestGroup1" && group.Id == 1 && group.UserTasks.Count() == 1), Is.True);
                Assert.That(result.Exists(group => group.Name == "TestGroup2" && group.Id == 2 && !group.UserTasks.Any()), Is.True);

                context.Database.EnsureDeleted();
            }
        }