public async Task WhenInvalidProductIdentifiersRequest_ThenPostProductIdentifiersReturnsBadRequest() { var exchangeSetResponse = new ExchangeSetResponse() { }; var exchangeSetServiceResponse = new ExchangeSetServiceResponse() { ExchangeSetResponse = exchangeSetResponse, HttpStatusCode = HttpStatusCode.BadRequest }; var validationMessage = new ValidationFailure("ProductIdentifiers", "Product Identifiers cannot be null or empty."); validationMessage.ErrorCode = HttpStatusCode.BadRequest.ToString(); A.CallTo(() => fakeProductDataService.ValidateProductDataByProductIdentifiers(A <ProductIdentifierRequest> .Ignored)) .Returns(new ValidationResult(new List <ValidationFailure> { validationMessage })); A.CallTo(() => fakeProductDataService.CreateProductDataByProductIdentifiers(A <ProductIdentifierRequest> .Ignored, A <AzureAdB2C> .Ignored)) .Returns(exchangeSetServiceResponse); string[] productIdentifiers = new string[] { "", "GB160060", "AU334550" }; string callbackUri = string.Empty; var result = (BadRequestObjectResult)await controller.PostProductIdentifiers(productIdentifiers, callbackUri); var errors = (ErrorDescription)result.Value; Assert.AreEqual(400, result.StatusCode); Assert.AreEqual("Product Identifiers cannot be null or empty.", errors.Errors.Single().Description); }