public async Task SetPackageContactAsync_InvalidProjectId_ShouldThrowArgumentNullException(string projectId)
        {
            // Arrange
            var existingProject = new GetProjectPayload
            {
                Id = Guid.NewGuid().ToString(),
            };

            var existingPackage = new GetPackagePayload
            {
                Id        = Guid.NewGuid().ToString(),
                ProjectId = existingProject.Id,
            };

            var existingContact = new GetContactPayload
            {
                Id = Guid.NewGuid().ToString(),
            };

            var setContactAssociationRequest = new SetContactAssociationRequest(existingContact.Id);

            var packageApi = this.fixture.GetPackageApi();

            // Act
            Func <Task> act = async() => await packageApi.SetPackageContactAsync(projectId, existingPackage.Id, setContactAssociationRequest);

            // Assert
            await act.Should().ThrowAsync <ArgumentNullException>();
        }
Exemplo n.º 2
0
        public async Task GetContactAsync_ValidId_ShouldReturnExpectedContact()
        {
            // Arrange
            var existingContact = new GetContactPayload
            {
                Id = Guid.NewGuid().ToString(),
            };

            var expectedResponseContent =
                new StringContent(JsonConvert.SerializeObject(existingContact, this.fixture.JsonSerializerSettings));

            var expectedResponse = new HttpResponseMessage
            {
                Content = expectedResponseContent,
            };

            var contactApi = this.fixture.GetContactApi(expectedResponse);

            var getContactByIdResponse = new GetContactByIdResponse();

            // Act
            Func <Task> act = async() => getContactByIdResponse = await contactApi.GetContactByIdAsync(existingContact.Id);

            // Assert
            await act.Should().NotThrowAsync();

            getContactByIdResponse.Id.Should().Be(existingContact.Id);
        }
        public async Task SetPackageContactAsync_ValidRequest_ShouldReturnVoid()
        {
            // Arrange
            var existingProject = new GetProjectPayload
            {
                Id = Guid.NewGuid().ToString(),
            };

            var existingPackage = new GetPackagePayload
            {
                Id        = Guid.NewGuid().ToString(),
                ProjectId = existingProject.Id,
            };

            var existingContact = new GetContactPayload
            {
                Id = Guid.NewGuid().ToString(),
            };

            var setContactAssociationRequest = new SetContactAssociationRequest(existingContact.Id);

            var expectedResponseMessage = new HttpResponseMessage();

            var packageApi = this.fixture.GetPackageApi(expectedResponseMessage);

            // Act
            Func <Task> act = async() => await packageApi.SetPackageContactAsync(existingProject.Id, existingPackage.Id, setContactAssociationRequest);

            // Assert
            await act.Should().NotThrowAsync();
        }
Exemplo n.º 4
0
        public async Task UpdateContactAsync_ValidRequest_ShouldReturnUpdatedContact()
        {
            // Arrange
            var existingContact = new GetContactPayload
            {
                Id          = Guid.NewGuid().ToString(),
                Description = "TestDescription",
            };

            var updateContactRequest = new UpdateContactRequest
            {
                Description = "NewDescription",
            };

            var expectedUpdatedContact = new UpdateContactResponse
            {
                Id          = existingContact.Id,
                Description = updateContactRequest.Description,
            };

            var expectedResponseContent =
                new StringContent(JsonConvert.SerializeObject(expectedUpdatedContact, this.fixture.JsonSerializerSettings));

            var expectedResponse = new HttpResponseMessage
            {
                Content = expectedResponseContent,
            };

            var contactApi = this.fixture.GetContactApi(expectedResponse);

            var updateContactResponse = new UpdateContactResponse();

            // Act
            Func <Task> act = async() =>
                              updateContactResponse = await contactApi.UpdateContactAsync(existingContact.Id, updateContactRequest);

            // Assert
            await act.Should().NotThrowAsync();

            using (new AssertionScope())
            {
                updateContactResponse.Id.Should().Be(existingContact.Id);
                updateContactResponse.Description.Should().Be(expectedUpdatedContact.Description);
            }
        }