public async Task BadPassTest() { var httpClient = new HttpClientMockBuilder(_uri) .WithBasicAuthentication(_basicAuthHash) .Build(); var client = new HaystackClient(httpClient, new BasicAuthenticator(_user, "wrongPass"), _uri); await client.OpenAsync(); }
public async Task Read() { var grid = new HaystackGrid() .AddColumn("site") .AddRow(new HaystackMarker()); var httpClient = new HttpClientMockBuilder(_uri) .WithBasicAuthentication(_basicAuthHash) .WithReadAsync("site", grid) .Build(); var client = new HaystackClient(httpClient, new BasicAuthenticator(_user, _pass), _uri); await client.OpenAsync(); await client.ReadAsync("site"); }
public async Task ItShouldSetupWebAssemblyHttpHostedLocalizerAsync(string cultureName, string key, string arg, string expected) { var cultureInfo = CultureInfo.GetCultureInfo(cultureName); var cultureInfoServiceMock = new Mock <ICultureInfoService>(); cultureInfoServiceMock.SetupGet(s => s.CurrentUICulture).Returns(cultureInfo); var services = new ServiceCollection(); services.AddTestLogging(this.testOutputHelper); using var httpClient = new HttpClientMockBuilder() .WithBaseAddress(new Uri("http://test.com")) .WithRequest("/_content/SoloX.BlazorJsonLocalization.ITests/Resources/JsonLocalyserWebAssemblySetupTest.json") .Responding(request => { var response = new HttpResponseMessage(); response.Content = new StreamContent(new MemoryStream(Encoding.UTF8.GetBytes("{\"Test\": \"This is a test...\", \"TestWithArg\": \"This is a test with an argument: {0}...\"}"))); return(response); }) .WithRequest("/_content/SoloX.BlazorJsonLocalization.ITests/Resources/JsonLocalyserWebAssemblySetupTest-fr.json") .Responding(request => { var response = new HttpResponseMessage(); response.Content = new StreamContent(new MemoryStream(Encoding.UTF8.GetBytes("{\"Test\": \"C'est un test...\", \"TestWithArg\": \"C'est un test avec un argument: {0}...\"}"))); return(response); }) .Build(); services.AddSingleton(httpClient); services.AddWebAssemblyJsonLocalization( builder => builder.UseHttpHostedJson(options => options.ResourcesPath = "Resources")); services.AddSingleton(cultureInfoServiceMock.Object); using var provider = services.BuildServiceProvider(); var localizer = provider.GetService <IStringLocalizer <JsonLocalyserWebAssemblySetupTest> >(); Assert.NotNull(localizer); await localizer.LoadAsync().ConfigureAwait(false); var localized = string.IsNullOrEmpty(arg) ? localizer[key] : localizer[key, arg]; Assert.Equal(expected, localized.Value); }
public async Task SetResponseContent_ForGivenString_ContentIsExpectedString() { // Arrange var httpClientMockBuilder = new HttpClientMockBuilder(); var httpClient = httpClientMockBuilder.SetResponseContent("test").Build(); // Act var asyncResult = await httpClient.GetAsync("https://www.foo.bar.com/").ConfigureAwait(false); var contentResult = await asyncResult.Content.ReadAsStringAsync().ConfigureAwait(false); // Assert Assert.Equal("test", contentResult); }
public async Task SetResponseStatusCode_ForGivenStatusCode_ExpectedStatusCode() { // Arrange var httpClientMockBuilder = new HttpClientMockBuilder(); httpClientMockBuilder.SetResponseStatusCode(HttpStatusCode.Ambiguous); var httpClient = httpClientMockBuilder.Build(); // Act var asyncResult = await httpClient.GetAsync("https://www.foo.bar.com/").ConfigureAwait(false); var statusCode = asyncResult.StatusCode; // Assert Assert.Equal(HttpStatusCode.Ambiguous, statusCode); }
public async Task SetResponseContent_Null_ContentIsEmptyString() { // Arrange var httpClientMockBuilder = new HttpClientMockBuilder(); httpClientMockBuilder.SetResponseContent(null); var httpClient = httpClientMockBuilder.Build(); // Act var asyncResult = await httpClient.GetAsync("https://foo.bar.com/").ConfigureAwait(false); var contentResult = await asyncResult.Content.ReadAsStringAsync().ConfigureAwait(false); // Assert Assert.Equal(string.Empty, contentResult); }
public async Task Build_NoPropertiesSet_ContentIsEmptyStringAndStatusCodeIsAccepted() { // Arrange var httpClientMockBuilder = new HttpClientMockBuilder(); var httpClient = httpClientMockBuilder.Build(); // Act var asyncResult = await httpClient.GetAsync("https://foo.bar.com/").ConfigureAwait(false); var contentResult = await asyncResult.Content.ReadAsStringAsync().ConfigureAwait(false); var statusCode = asyncResult.StatusCode; // Assert Assert.Equal(string.Empty, contentResult); Assert.Equal(HttpStatusCode.Accepted, statusCode); }
public async Task ItShouldLoadJsonFileFromHttpClientAsync( string cultureName, string key, string expectedText, bool expectedSuccess, string resourcePath) { var cultureInfo = CultureInfo.GetCultureInfo(cultureName); using var httpClient = new HttpClientMockBuilder() .WithBaseAddress(new Uri("http://test.com")) .WithRequest("/_content/SoloX.BlazorJsonLocalization.WebAssembly.UTests/Resources/HttpHostedJsonLocalizationExtensionServiceTest.json") .Responding(request => { var response = new HttpResponseMessage(); response.Content = new StreamContent(new MemoryStream(Encoding.UTF8.GetBytes("{\"Test\": \"English test.\"}"))); return(response); }) .WithRequest("/_content/SoloX.BlazorJsonLocalization.WebAssembly.UTests/Resources/HttpHostedJsonLocalizationExtensionServiceTest-fr.json") .Responding(request => { var response = new HttpResponseMessage(); response.Content = new StreamContent(new MemoryStream(Encoding.UTF8.GetBytes("{\"Test\": \"French test.\"}"))); return(response); }) .Build(); var service = new HttpHostedJsonLocalizationExtensionService(httpClient, Logger); var options = new HttpHostedJsonLocalizationOptions() { ResourcesPath = resourcePath, }; var map = await service.TryLoadAsync(options, Assembly, BaseName, cultureInfo).ConfigureAwait(false); if (expectedSuccess) { Assert.NotNull(map); Assert.Equal(expectedText, map[key]); } else { Assert.Null(map); } }