public void Convert() { // Упорядочение using (ConverterController controller = new ConverterController(new MediaProvider(Directory.GetCurrentDirectory(), null), null)) { controller.Configuration = new HttpConfiguration(); controller.Request = new HttpRequestMessage(); HttpResponseMessage result = controller.Convert(new ConvertRequest() { Data = File.ReadAllBytes(Path.Combine(Directory.GetCurrentDirectory(), "demo.wav")), InFormat = "wav", OutFormat = "mp3" }).Result; // Утверждение Assert.AreEqual(result.StatusCode, HttpStatusCode.OK); string content = result.Content.ReadAsStringAsync().Result; ConvertRequest convertRequest = JsonConvert.DeserializeObject <ConvertRequest>(content); Assert.IsNotNull(convertRequest?.Data); } // Действие }
public void ConvertServiceTest() { var numberDetail = new NumberDetailRequest { Name = "Behnam karimi", Number = 3324.39m }; var result = _converterController.Convert(numberDetail) as HttpResponseMessage; result.EnsureSuccessStatusCode(); var resultContent = result.Content.ReadAsAsync <NumberDetail>().GetAwaiter().GetResult(); Assert.AreEqual(HttpStatusCode.OK, result.StatusCode); Assert.IsNotNull(resultContent); Assert.AreEqual(numberDetail.Name, resultContent.Name); Assert.AreEqual(numberDetail.Number, resultContent.Number); Assert.AreEqual("three thousand and three hundred and twenty-four dollars and thirty-nine cents", resultContent.ConvertedNumber); Assert.AreEqual(DateTime.UtcNow.Date, resultContent.DateCreated.Date); Assert.AreNotEqual(Guid.Empty, resultContent.Id); }
public void When_Convert_InValid_Params_Then_ThrowsNullException() { //Arrange ConvertInputModel input = new ConvertInputModel(); input.ConvertFrom = CurrencyType.GBP; input.ConvertTo = CurrencyType.USD; var sut = new ConverterController(logger, currencyService, countryService); //Assert Assert.ThrowsAsync <ArgumentNullException>(() => sut.Convert(input)); }
public void When_Convert_InValid_valueToConvert_Then_Response400BadRequestWithMessage(decimal testValue) { //Arrange ConvertInputModel input = new ConvertInputModel(); input.ConvertFrom = CurrencyType.GBP; input.ConvertTo = CurrencyType.USD; input.ValueToConvert = testValue; var sut = new ConverterController(logger, currencyService, countryService); //Act var actualResult = sut.Convert(input).GetAwaiter().GetResult() as BadRequestObjectResult; //Assert Assert.Equal("Invalid data", actualResult.Value); }
public void When_Convert_Valid_Params_Then_Response200OK() { //Arrange ConvertInputModel input = new ConvertInputModel(); input.ConvertFrom = CurrencyType.GBP; input.ConvertTo = CurrencyType.USD; input.ValueToConvert = 2; decimal testconvertRate = 1.60m * (input.ValueToConvert); var sut = new ConverterController(logger, currencyService, countryService); //Act var testResult = sut.Convert(input).GetAwaiter().GetResult() as OkObjectResult; //Assert Assert.NotNull(testResult); Assert.Equal("200", testResult.StatusCode.ToString()); Assert.Equal(testconvertRate, testResult.Value); }