public void GetCultures_ReturnsCultureClosure(string cultureName, string[] expected) { // Arrange var culture = new CultureInfo(cultureName); // Act var actual = SatelliteResourcesLoader.GetCultures(culture); // Assert Assert.Equal(expected, actual); }
public async Task LoadCurrentCultureResourcesAsync_DoesNotReadAssembliesWhenThereAreNone() { // Arrange using var cultureReplacer = new CultureReplacer("en-GB"); var invoker = new Mock <WebAssemblyJSRuntimeInvoker>(); invoker.Setup(i => i.InvokeUnmarshalled <string[], object, object, Task <object> >(GetSatelliteAssemblies, new[] { "en-GB", "en" }, null, null)) .Returns(Task.FromResult <object>(0)) .Verifiable(); var loader = new SatelliteResourcesLoader(invoker.Object); // Act await loader.LoadCurrentCultureResourcesAsync(); // Assert invoker.Verify(i => i.InvokeUnmarshalled <object, object, object, object[]>(ReadSatelliteAssemblies, null, null, null), Times.Never()); }
public async Task LoadCurrentCultureResourcesAsync_ReadsAssemblies() { // Arrange using var cultureReplacer = new CultureReplacer("en-GB"); var invoker = new Mock <WebAssemblyJSRuntimeInvoker>(); invoker.Setup(i => i.InvokeUnmarshalled <string[], object, object, Task <object> >(GetSatelliteAssemblies, new[] { "en-GB", "en" }, null, null)) .Returns(Task.FromResult <object>(1)) .Verifiable(); invoker.Setup(i => i.InvokeUnmarshalled <object, object, object, object[]>(ReadSatelliteAssemblies, null, null, null)) .Returns(new object[] { File.ReadAllBytes(GetType().Assembly.Location) }) .Verifiable(); var loader = new SatelliteResourcesLoader(invoker.Object); // Act await loader.LoadCurrentCultureResourcesAsync(); // Assert invoker.Verify(); }