示例#1
0
        public async Task GetBoard_IncludeColumnsAndCards_Test()
        {
            // Arrange
            var board   = CreateBoard();
            var column1 = AddColumn(board);

            AddCard(column1);
            AddCard(column1);
            var column2 = AddColumn(board);

            AddCard(column2);
            AddCard(column2);
            AddCard(column2);
            var column3 = AddColumn(board);

            AddCard(column3);
            AddCard(column3);
            AddCard(column3);
            AddCard(column3);

            // Act
            var response = await Client.GetAsync($"/boards/{board.Id}?include=columns,cards");

            // Assert
            var data = await AssertResponse.SuccessAsync(response);

            var actual  = JsonSerializer.Deserialize <Board>(data, new JsonSerializerOptions());
            var columns = actual.Columns.ToList();

            Assert.Equal(3, columns.Count());
            Assert.Equal(2, columns.First(x => x.Id == column1.Id).Cards.Count());
            Assert.Equal(3, columns.First(x => x.Id == column2.Id).Cards.Count());
            Assert.Equal(4, columns.First(x => x.Id == column3.Id).Cards.Count());
        }
示例#2
0
        public async Task GetColumns_BoardExistButNoColumns_Test()
        {
            // Arrange
            var board = CreateBoard();

            // Act
            var response = await Client.GetAsync($"/boards/{board.Id}/columns");

            // Assert
            var data = await AssertResponse.SuccessAsync(response);

            var columns = JsonSerializer.Deserialize <IEnumerable <Column> >(data, new JsonSerializerOptions());

            Assert.Empty(columns);
        }
示例#3
0
        public async Task GetExistingBoard_Test()
        {
            // Arrange
            var board = CreateBoard();

            // Act
            var response = await Client.GetAsync($"/boards/{board.Id}");

            // Assert
            var data = await AssertResponse.SuccessAsync(response);

            var actual = JsonSerializer.Deserialize <Board>(data, new JsonSerializerOptions());

            Assert.Equal(board.Id, actual.Id);
            Assert.Null(actual.Columns);
        }
示例#4
0
        public async Task GetCard_Test()
        {
            // Arrange
            var board  = CreateBoard();
            var column = AddColumn(board);
            var card   = AddCard(column);

            // Act
            var response = await Client.GetAsync($"/boards/{board.Id}/columns/{column.Id}/cards/{card.Id}");

            // Assert
            var data = await AssertResponse.SuccessAsync(response);

            var actual = JsonSerializer.Deserialize <Card>(data, new JsonSerializerOptions());

            Assert.Equal(card.Id, actual.Id);
        }
示例#5
0
        public async Task CreateBoard_Test()
        {
            // Arrange
            var board = new Board {
                Name = "Test Board"
            };

            // Act
            var response = await ClientPostAsync("/boards", board);

            // Assert
            var data = await AssertResponse.SuccessAsync(response);

            var createdBoard = JsonSerializer.Deserialize <Board>(data, new JsonSerializerOptions());

            Assert.NotEqual(0, createdBoard.Id);
            Assert.Equal("Test Board", createdBoard.Name);
        }
示例#6
0
        public async Task GetColumnsTest()
        {
            // Arrange
            var board = CreateBoard();

            AddColumn(board);
            AddColumn(board);
            AddColumn(board);

            // Act
            var response = await Client.GetAsync($"/boards/{board.Id}/columns");

            // Assert
            var data = await AssertResponse.SuccessAsync(response);

            var columns = JsonSerializer.Deserialize <IEnumerable <Column> >(data, new JsonSerializerOptions());

            Assert.Equal(3, columns.Count());
        }
示例#7
0
        public async Task GetBoards_Test()
        {
            // Arrange
            var board1 = CreateBoard();
            var board2 = CreateBoard();
            var board3 = CreateBoard();

            // Act
            var response = await Client.GetAsync("/boards");

            // Assert
            var data = await AssertResponse.SuccessAsync(response);

            var boards = JsonSerializer.Deserialize <IEnumerable <Board> >(data, new JsonSerializerOptions()).ToList();

            Assert.Equal(3, boards.Count());
            Assert.True(boards.Exists(x => x.Id == board1.Id));
            Assert.True(boards.Exists(x => x.Id == board2.Id));
            Assert.True(boards.Exists(x => x.Id == board3.Id));
        }
示例#8
0
        public async Task GetColumn_Test()
        {
            // Arrange
            var board = CreateBoard();

            ColumnService.AddColumn(board.Id, new Column {
                Id = "Start", Name = "Start"
            });

            // Act
            var response = await Client.GetAsync($"/boards/{board.Id}/columns/start");

            // Assert
            var data = await AssertResponse.SuccessAsync(response);

            var column = JsonSerializer.Deserialize <Column>(data, new JsonSerializerOptions());

            Assert.Equal(board.Id, column.BoardId);
            Assert.Equal("Start", column.Id);
        }
示例#9
0
        public async Task CreateBoard_ClientGeneratedId_Test()
        {
            // Arrange
            var board  = CreateBoard();
            var column = new Column {
                Id = "Test", Name = "Test Column"
            };

            // Act
            var response = await ClientPostAsync($"/boards/{board.Id}/columns", column);

            // Assert
            var data = await AssertResponse.SuccessAsync(response);

            var createdColumn = JsonSerializer.Deserialize <Column>(data, new JsonSerializerOptions());

            Assert.Equal(board.Id, createdColumn.BoardId);
            Assert.Equal("Test Column", createdColumn.Name);
            Assert.Equal("Test", createdColumn.Id);
        }
示例#10
0
        public async Task CreateColumn_Test()
        {
            // Arrange
            var board  = CreateBoard();
            var column = new Column {
                Name = "Test Column"
            };

            // Act
            var response = await ClientPostAsync($"/boards/{board.Id}/columns", column);

            // Assert
            var data = await AssertResponse.SuccessAsync(response);

            var createdColumn = JsonSerializer.Deserialize <Column>(data, new JsonSerializerOptions());

            Assert.Equal(board.Id, createdColumn.BoardId);
            Assert.Equal("Test Column", createdColumn.Name);
            Assert.False(string.IsNullOrEmpty(createdColumn.Id), "Expected the Id to be set");
        }
示例#11
0
        public async Task CreateCard_Test()
        {
            // Arrange
            var board  = CreateBoard();
            var column = AddColumn(board);
            var card   = new Card {
                Text = "Test Card"
            };

            // Act
            var response = await ClientPostAsync($"/boards/{board.Id}/columns/{column.Id}/cards/", card);

            // Assert
            var data = await AssertResponse.SuccessAsync(response);

            var actual = JsonSerializer.Deserialize <Card>(data, new JsonSerializerOptions());

            Assert.Equal(board.Id, actual.BoardId);
            Assert.Equal(column.Id, actual.ColumnId);
            Assert.True(actual.Id != null && actual.Id != Guid.Empty);
            Assert.Equal(card.Text, actual.Text);
        }
示例#12
0
        public async Task GetCards_Test()
        {
            // Arrange
            var board  = CreateBoard();
            var column = AddColumn(board);
            var card1  = AddCard(column);
            var card2  = AddCard(column);
            var card3  = AddCard(column);

            // Act
            var response = await Client.GetAsync($"/boards/{board.Id}/columns/{column.Id}/cards");

            // Assert
            var data = await AssertResponse.SuccessAsync(response);

            var cards = JsonSerializer.Deserialize <IEnumerable <Card> >(data, new JsonSerializerOptions()).ToList();

            Assert.Equal(3, cards.Count());
            Assert.True(cards.Exists(x => x.Id == card1.Id));
            Assert.True(cards.Exists(x => x.Id == card2.Id));
            Assert.True(cards.Exists(x => x.Id == card3.Id));
        }