Esempio n. 1
0
        public void Should_Throw_Exception_On_Adding_Column_With_Old_Timestamp()
        {
            // Given
            var board   = context.KanbanBoards.FirstOrDefault();
            var user    = context.AppUsers.FirstOrDefault();
            var handler = new AddColumn(repository, CreateAccessServiceMock(false, false).Object);

            // When/Then
            Assert.CatchAsync <ForbiddenException>(
                async() => await handler.HandleAsync(
                    new AddColumn.Command(user.ID, board.ID, "New column")));
        }
Esempio n. 2
0
        public void Should_Throw_Exception_On_Adding_Column_With_Name_Duplicate()
        {
            // Given
            var board          = context.KanbanBoards.Include(x => x.Columns).FirstOrDefault();
            var user           = context.AppUsers.FirstOrDefault();
            var handler        = new AddColumn(repository, CreateAccessServiceMock().Object);
            var existingColumn = board.Columns.First();

            // When/Then
            Assert.CatchAsync <ArgumentException>(
                async() => await handler.HandleAsync(
                    new AddColumn.Command(user.ID, board.ID, existingColumn.Name)));
        }
Esempio n. 3
0
        public void Should_Add_Column_To_Board()
        {
            // Given
            var board         = context.KanbanBoards.Include(x => x.Columns).FirstOrDefault();
            var user          = context.AppUsers.FirstOrDefault();
            var handler       = new AddColumn(repository, CreateAccessServiceMock().Object);
            var columnsPreAdd = board.Columns.ToList();

            // When
            handler.HandleAsync(new AddColumn.Command(user.ID, board.ID, "New column")).Wait();

            // Then
            var indexes     = board.Columns.OrderBy(x => x.Index).Select(x => x.Index);
            var addedColumn = board.Columns.First(x => x.Name == "New column");

            CollectionAssert.AreEqual(new[] { 0, 1, 2, 3 }, indexes);
            Assert.IsNotNull(addedColumn);
            Assert.AreEqual(columnsPreAdd.Count, addedColumn.Index);
            Assert.IsTrue(board.Columns.Count == columnsPreAdd.Count + 1);
        }