public void SetUp() { _service = Substitute.For <INumberToWordsService>(); _controller = new CurrencyConverterController(_service); //setup controller with default request and configuration _controller.Request = new HttpRequestMessage(); _controller.Request.SetConfiguration(new HttpConfiguration()); }
public void GetConvertedAmount_ShouldReturnSourceNotFound() { var controller = new CurrencyConverterController(); controller.Request = new System.Net.Http.HttpRequestMessage(HttpMethod.Get, "http://localhost:51090/CurrencyConverter?from=INR&to=USD&amount=150&source=FOO"); var result = controller.GetConvertedAmount(); Assert.IsInstanceOfType(result, typeof(NotFoundResult)); }
public void GetConvertedAmount_ShouldReturnBadFromCurrency() { string msg = "Bad From Currency"; var controller = new CurrencyConverterController(); controller.Request = new System.Net.Http.HttpRequestMessage(HttpMethod.Get, "http://localhost:51090/CurrencyConverter?from=foo&to=USD&amount=150&source=XE"); var result = controller.GetConvertedAmount(); Assert.IsInstanceOfType(result, typeof(BadRequestErrorMessageResult)); Assert.AreEqual((result as BadRequestErrorMessageResult).Message, msg); }
public void GetConvertedAmount_ShouldReturnSourceNotActive() { string msg = "Source is not Active"; var controller = new CurrencyConverterController(); controller.Request = new System.Net.Http.HttpRequestMessage(HttpMethod.Get, "http://localhost:51090/CurrencyConverter?from=INR&to=USD&amount=150&source=Yahoo"); var result = controller.GetConvertedAmount(); var content = result as OkNegotiatedContentResult <CroweCurrencyConversionAPI.DTOs.Response>; Assert.AreEqual(msg, content.Content.Error.ErrorDescription); }
public void UserYahooServiceProvider() { // Arrange CurrencyConverterController controller = new CurrencyConverterController(); controller.Request = new HttpRequestMessage(); //controller.Request.Headers.Add("Authorize", "Bearer E44jlg9gAp6QDTe26Ew5ar5mFAYSnO4eEMpXfGojQyopNAlx1zH2B4Jf5yDWO4XubSxu3Et4ujPSy6aGz11s4x37jM2qdxqSpBL7DJmPVayI9oX-l163SY1r4R-joQZxomEae3Zlk9fDGK5XXFMyL8vTPusyz-9RcuePuuPhtVhjA71FgeF1jWbuLDCa8e1VOklxURkxtOOXUXEXgbZyU-zcR-hfKfBdCcSm7vsjShryedPZYS4xZJ8_1m-KKh4YsPe44EDZeHB0-zvulY8mZbe-iwMhaV87lzRyBxzQgr1rC8iGP2h0qMApzZ04JtXYULqMqkfoaa3jecN8SCaNTQs3Y3J7mzKWvxG-wDX5uthhfc6GAjW1n3mEyZbRKmUFJkexO8yF-uiBk-zkJupPlGZdYjeXjnSPEIcbaCcrz-ua7O6mLKU_LAZ2tZpZAYcadBhF-gXgfMt51rJzxUBxaraskBrxkjMr9nBreiMdzHM3cdoP2c7KFfYQoUvQIyOO0"); controller.Configuration = new HttpConfiguration(); CroweCurrencyResponse response = controller.GetCurrencyConversionfromProvider("Yahoo", "USD", "INR", 1); Assert.IsNotNull(response); }
public void GetConvertedAmount_ShouldReturnConvertedAmount() { int convertedAmount = 200; var controller = new CurrencyConverterController(); controller.Request = new System.Net.Http.HttpRequestMessage(HttpMethod.Get, "http://localhost:51090/CurrencyConverter?from=INR&to=USD&amount=150&source=XE"); var result = controller.GetConvertedAmount(); var content = result as OkNegotiatedContentResult <CroweCurrencyConversionAPI.DTOs.Response>; Assert.AreEqual(convertedAmount, content.Content.Amount); }