public async Task OnErrorShouldReturnErrorObject() { // Arrange // var faceSettings = TestHelper.GetFaceSettings(); var handler = new Mock <HttpMessageHandler>(); handler.SetupAnyRequest() .ReturnsResponse(HttpStatusCode.BadRequest); var client = new CurrencyConverterClient( TestHelper.GetLoggerMock <CurrencyConverterClient>().Object, handler.CreateClient(), faceSettings, TestHelper.GetMetricsMock().Object); // Act // var result = await client.RequestCurrencyConverter("EUR", "PHP"); // Assert // Assert.Equal(RequestStatusCode.Error, result.RequestStatus.StatusCode); Assert.Equal(400, result.RequestStatus.ErrorCode); }
public async Task OnSuccessShouldReturnValidObject() { // Arrange // var faceSettings = TestHelper.GetFaceSettings(); var handler = new Mock <HttpMessageHandler>(); var ccResponse = "{\"EUR_PHP\": 51.440375}"; handler.SetupRequest(HttpMethod.Get, faceSettings.BuildCurrencyConverterUrl("EUR", "PHP")) .ReturnsResponse(ccResponse, "application/json"); var client = new CurrencyConverterClient( TestHelper.GetLoggerMock <CurrencyConverterClient>().Object, handler.CreateClient(), faceSettings, TestHelper.GetMetricsMock().Object); // Act // var result = await client.RequestCurrencyConverter("EUR", "PHP"); // Assert // Assert.Equal(RequestStatusCode.Ok, result.RequestStatus.StatusCode); Assert.Equal((decimal)51.440375, result.ExchangeRate); }
public MainForm() { InitializeComponent(); CurrencyList curencyList = new CurrencyList(); client = new CurrencyConverterClient(); curencyList = client.GetCurrentcyList(); this.currencyListComboBox.DataSource = curencyList; }
public MainForm() { InitializeComponent(); CurrencyList curencyList = new CurrencyList(); client = new CurrencyConverterClient(); curencyList = client.GetCurrentcyList(); this.currencyListComboBox.DataSource = curencyList; }
private void Form1_Load(object sender, EventArgs e) { CurrencyConverterClient client = new CurrencyConverterClient(); List<string> liststr = new List<string>(); liststr = client.GetCurrentcyList(); for (int i = 0; i <liststr.Count ; i++) { currencyComboBox.Items.Add(liststr[i]); } }
public ExchangeRateCacheStrategy( ILogger <ExchangeRateCacheStrategy> logger, CurrencyConverterClient currencyConverterClient, ExchangeRateApiClient exchangeRateApiClient, FaceSettings faceSettings, IMetrics metrics) { _logger = logger; _faceSettings = faceSettings; _metrics = metrics; _currencyConverterClient = currencyConverterClient; _exchangeRateApiClient = exchangeRateApiClient; }
static void Main() { CurrencyConverterClient client = new CurrencyConverterClient(); // Use the 'client' variable to call operations on the service. double result = client.DollarsToPounds(10); double result2 = client.PoundsToDollars(10); double result3 = client.EurosToPounds(10); double result4 = client.PoundsToEuros(10); // Always close the client. client.Close(); }
public CurrencyConversionResponse GetCurrencyCoverted(string baseCurrency, string toCurrency) { CurrencyConverterClient client = new CurrencyConverterClient(new HttpClient()); var baseCR = MapEnum(baseCurrency); var toCR = MapEnum(toCurrency); var response = client.LatestAsync(baseCR.ToString()).Result; currency = new CurrencyConversionResponse(); currency.result = toCR switch { CurrencyEnum.CAD => response.Rates.CAD, CurrencyEnum.HKD => response.Rates.HKD, CurrencyEnum.ISK => response.Rates.ISK, CurrencyEnum.PHP => response.Rates.PHP, CurrencyEnum.DKK => response.Rates.DKK, CurrencyEnum.HUF => response.Rates.HUF, CurrencyEnum.CZK => response.Rates.CZK, CurrencyEnum.GBP => response.Rates.GBP, CurrencyEnum.RON => response.Rates.RON, CurrencyEnum.SEK => response.Rates.SEK, CurrencyEnum.IDR => response.Rates.IDR, CurrencyEnum.INR => response.Rates.INR, CurrencyEnum.BRL => response.Rates.BRL, CurrencyEnum.RUB => response.Rates.RUB, CurrencyEnum.HRK => response.Rates.HRK, CurrencyEnum.JPY => response.Rates.JPY, CurrencyEnum.THB => response.Rates.THB, CurrencyEnum.CHF => response.Rates.CHF, CurrencyEnum.EUR => response.Rates.EUR, CurrencyEnum.MYR => response.Rates.MYR, CurrencyEnum.BGN => response.Rates.BGN, CurrencyEnum.TRY => response.Rates.TRY, CurrencyEnum.CNY => response.Rates.CNY, CurrencyEnum.NOK => response.Rates.NOK, CurrencyEnum.NZD => response.Rates.NZD, CurrencyEnum.ZAR => response.Rates.ZAR, CurrencyEnum.USD => response.Rates.USD, CurrencyEnum.MXN => response.Rates.MXN, CurrencyEnum.SGD => response.Rates.SGD, CurrencyEnum.AUD => response.Rates.AUD, CurrencyEnum.ILS => response.Rates.ILS, CurrencyEnum.KRW => response.Rates.KRW, CurrencyEnum.PLN => response.Rates.PLN, _ => response.Rates.USD, }; return(currency); }
private void buttonChange_Click(object sender, EventArgs e) { DateTime temp; CurrencyConverterClient client = new CurrencyConverterClient(); if(DateTime.TryParse(dateBox.Text, out temp)) { textBoxResault.Text = Convert.ToString(client.Convert(currencyComboBox.Text, "UAH", Convert.ToDouble(this.numericUpDown1.Text), Convert.ToDateTime(this.dateBox.Text))); } else { MessageBox.Show(" Выберите дату ", " Ошибка! ", MessageBoxButtons.OK, MessageBoxIcon.Warning); } if(textBoxResault.Text != "Результат операции") { Form2 form2 = new Form2(); form2.Show(); MessageBeep(0x00000040); } }
public async Task OnAuthErrorShouldLogAuthIssue() { // Arrange // var loggerMock = TestHelper.GetLoggerMock <CurrencyConverterClient>(); var faceSettings = TestHelper.GetFaceSettings(); var handler = new Mock <HttpMessageHandler>(); handler.SetupAnyRequest() .ReturnsResponse(HttpStatusCode.Unauthorized); var client = new CurrencyConverterClient( loggerMock.Object, handler.CreateClient(), faceSettings, TestHelper.GetMetricsMock().Object); // Act // var result = await client.RequestCurrencyConverter("EUR", "PHP"); // Assert // Assert.Equal(RequestStatusCode.Error, result.RequestStatus.StatusCode); Assert.Equal(401, result.RequestStatus.ErrorCode); loggerMock.Verify( x => x.Log( It.IsAny <LogLevel>(), It.IsAny <EventId>(), It.Is <It.IsAnyType>((o, t) => string.Equals("Unauthorized access to currencyconverterapi.com", o.ToString(), StringComparison.InvariantCultureIgnoreCase)), It.IsAny <Exception>(), (Func <It.IsAnyType, Exception, string>)It.IsAny <object>()), Times.Once); }
public void Setup() { client = new CurrencyConverterClient(); }