private CheckoutService CreateCheckoutService(ProcessedCart cart) { var mockedLookupService = new Mock <ILookupService>(); var mockedImageService = new Mock <IImageService>(); mockedLookupService.Setup(a => a.GetLookupDisplayNamesAsync(It.IsAny <GetLookupDisplayNamesParam>())).ReturnsAsync( new Dictionary <string, string> { { "Cash", "TestDisplayName" } }); mockedImageService.Setup(a => a.GetImageUrlsAsync(It.IsAny <IEnumerable <LineItem> >())).ReturnsAsync(new List <ProductMainImage>()); _container.Use(mockedImageService); _container.Use(mockedLookupService); var mockedDamProvider = new Mock <IDamProvider>(); mockedDamProvider.Setup(x => x.GetProductMainImagesAsync(It.IsAny <GetProductMainImagesParam>())) .ReturnsAsync(new List <ProductMainImage>()); _container.Use(mockedDamProvider); var mockedAddressRepository = new Mock <IAddressRepository>(); var address = new Address() { PropertyBag = new PropertyBag(), FirstName = GetRandom.String(5), LastName = GetRandom.String(5), AddressName = GetRandom.String(5), Line2 = GetRandom.String(5), Line1 = GetRandom.String(5), CountryCode = GetRandom.String(3), City = GetRandom.String(5), PostalCode = GetRandom.String(5), PhoneNumber = GetRandom.String(5), RegionCode = GetRandom.String(5), Email = GetRandom.String(5), PhoneExtension = GetRandom.String(5), }; mockedAddressRepository.Setup(x => x.GetAddressByIdAsync(It.IsAny <Guid>())) .Returns((Guid id) => { var result = address; result.Id = id; return(Task.FromResult(result)); }); _container.Use(mockedAddressRepository); _container.Use <ILocalizationProvider>(LocalizationProviderFactory.Create()); _container.Use <IViewModelMapper>(ViewModelMapper); _container.Use <ICartRepository>(new CartRepositoryUpdateCartMock { CurrentCart = cart }); _container.Use <IComposerJsonSerializer>(new ComposerJsonSerializerMock(MetadataRegistry.Object, ViewModelMapper)); var cartViewModelFactory = _container.CreateInstance <CartViewModelFactory>(); _container.Use <ICartViewModelFactory>(cartViewModelFactory); return(_container.CreateInstance <CheckoutService>()); }
public void SetUp() { Container = new AutoMocker(); Container.Use(ViewModelMapperFactory.Create()); Container.Use(LocalizationProviderFactory.Create()); Container.Use(CartViewModelFactoryMock.Create()); }
public void SetUp() { Container = new AutoMocker(); Container.Use(_mapper); Container.Use(LocalizationProviderFactory.Create()); }
public void SetUp() { //Arrange _container = new AutoMocker(); _container.Use(ViewModelMapperFactory.Create()); _container.Use(CartRepositoryFactory.Create()); _container.Use(CartViewModelFactoryMock.Create()); _container.Use(CountryServiceMock.Create()); _container.Use(LocalizationProviderFactory.Create()); }
public void WHEN_Passing_NULL_Culture_SHOULD_throw_ArgumentNullException() { //Arrange var localizationProvider = LocalizationProviderFactory.CreateFromTestAssets(); // Act var exception = Assert.ThrowsAsync <ArgumentNullException>(() => localizationProvider.GetLocalizationTreeAsync(null)); //Assert exception.ParamName.Should().BeSameAs("culture"); exception.Message.Should().Contain("culture"); }
public async Task WHEN_Passing_Any_Culture_Resulting_LocalizationCategories_SHOULD_Not_Be_Null() { //Arrange var localizationProvider = LocalizationProviderFactory.CreateFromTestAssets(); CultureInfo culture = CultureInfo.GetCultureInfo("es-MX"); //Act LocalizationTree tree = await localizationProvider.GetLocalizationTreeAsync(culture); //Assert tree.LocalizedCategories.Should().NotBeNull(); }
public async Task WHEN_Passing_Any_Culture_SHOULD_Contain_All_Categories(string expectedCategory) { //Arrange var localizationProvider = LocalizationProviderFactory.CreateFromTestAssets(); CultureInfo culture = CultureInfo.GetCultureInfo("es-US"); //Act LocalizationTree tree = await localizationProvider.GetLocalizationTreeAsync(culture); //Assert tree.LocalizedCategories.Values.Should().Contain(c => c.CategoryName == expectedCategory); tree.LocalizedCategories.Should().ContainKey(expectedCategory.ToLowerInvariant(), "Because Javascript expect lowercase for case insentivity"); }
public void load_all() { write("localization1", new CultureInfo("en-US"), @" a=us-a b=us-b f=us-f "); write("localization2", new CultureInfo("en-US"), @" c=us-c d=us-d "); write("localization3", new CultureInfo("en-US"), @" e=us-e "); write("localization1", new CultureInfo("en-GB"), @" a=gb-a b=gb-b f=gb-f "); write("localization2", new CultureInfo("en-GB"), @" c=gb-c d=gb-d "); var source = new XmlDirectoryLocalizationStorage(new[] { "localization1", "localization2", "localization3" }); var factory = new LocalizationProviderFactory(source, null, new LocalizationCache()); factory.LoadAll(x => { }); factory.BuildProvider(new CultureInfo("en-US")) .GetTextForKey(StringToken.FromKeyString("a")) .ShouldBe("us-a"); factory.BuildProvider(new CultureInfo("en-US")) .GetTextForKey(StringToken.FromKeyString("e")) .ShouldBe("us-e"); factory.BuildProvider(new CultureInfo("en-GB")) .GetTextForKey(StringToken.FromKeyString("a")) .ShouldBe("gb-a"); }
public void put_it_all_together() { write("localization1", new CultureInfo("en-US"), @" a=us-a b=us-b f=us-f "); write("localization2", new CultureInfo("en-US"), @" c=us-c d=us-d "); write("localization3", new CultureInfo("en-US"), @" e=us-e "); write("localization1", new CultureInfo("en-GB"), @" a=gb-a b=gb-b f=gb-f "); write("localization2", new CultureInfo("en-GB"), @" c=gb-c d=gb-d "); var source = new XmlDirectoryLocalizationStorage(new[] { "localization1", "localization2", "localization3" }); var factory = new LocalizationProviderFactory(source, new LocalizationMissingHandler(source, new CultureInfo("en-US")), new LocalizationCache()); factory.LoadAll(x => { }); factory.ApplyToLocalizationManager(); var token = StringToken.FromKeyString("a", "Wrong!"); Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US"); token.ToString().ShouldBe("us-a"); Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-GB"); token.ToString().ShouldBe("gb-a"); }
public void WHEN_ValueContains_XHTML_SHOULD_use_SafeString_to_render_XHTML_asis(string categoryName, string keyName, string expectedResult) { //Arrange var localizationProvider = LocalizationProviderFactory.CreateFromTestAssets(); var helpers = new LocalizeHelper(localizationProvider); Handlebars.RegisterHelper(helpers.HelperName, helpers.HelperFunction); var template = Handlebars.Compile("{{localize CategoryName KeyName}}"); //Act var result = template.Invoke(new { CategoryName = categoryName, KeyName = keyName }); //Assert result.Should().BeEquivalentTo(expectedResult); }
public void SetUp() { Container = new AutoMocker(); Container.Use(_mapper); var contextStub = new Mock <IComposerContext>(); contextStub.SetupGet(mock => mock.ScopeCurrencyIso).Returns("CAD"); Container.Use(contextStub); var currencyProvider = new Mock <ICurrencyProvider>(); currencyProvider.Setup(c => c.GetCurrency()).Returns("CAD").Verifiable(); Container.Use(currencyProvider); Container.Use(LocalizationProviderFactory.Create()); }
public async Task WHEN_Passing_A_Given_Culture_SHOULD_Contain_The_Most_Relevant_Value_For_Each_Keys(string cultureName, string category, string key, string expectedValue) { //Arrange var localizationProvider = LocalizationProviderFactory.CreateFromTestAssets(); CultureInfo culture = CultureInfo.GetCultureInfo(cultureName); //Act LocalizationTree tree = await localizationProvider.GetLocalizationTreeAsync(culture); //Assert tree.LocalizedCategories.Values.Should().Contain(c => c.CategoryName == category); tree.LocalizedCategories.Should().ContainKey(category.ToLowerInvariant(), "Because Javascript expect lowercase for case insentivity"); tree.LocalizedCategories[category.ToLowerInvariant()].LocalizedValues.Should().ContainKey(key); tree.LocalizedCategories[category.ToLowerInvariant()].LocalizedValues[key].Should().BeEquivalentTo(expectedValue); }
public void WHEN_Category_Key_Resolve_To_WhiteSpaces_SHOULD_Render_Primary_Template(string categoryName, string keyName) { //Arrange var localizationProvider = LocalizationProviderFactory.CreateFromTestAssets(); var helpers = new IfIsLocalizedBlockHelper(localizationProvider); Handlebars.RegisterHelper(helpers.HelperName, helpers.HelperFunction); var template = Handlebars.Compile("{{#if_localized CategoryName KeyName}}Primary{{else}}Inverse{{/if_localized}}"); //Act var result = template.Invoke(new { CategoryName = categoryName, KeyName = keyName }); //Assert result.Should().Be("Primary"); }
public void WHEN_Localized_Value_Is_Not_Found_SHOULD_Render_Formatted_Key_Hint() { //Arrange var localizationProvider = LocalizationProviderFactory.CreateKnowsNothing(); var helpers = new LocalizeHelper(localizationProvider.Object); Handlebars.RegisterHelper(helpers.HelperName, helpers.HelperFunction); string categoryName = GetRandom.String(32); string keyName = GetRandom.String(32); var template = Handlebars.Compile("{{localize CategoryName KeyName}}"); //Act var result = template.Invoke(new { CategoryName = categoryName, KeyName = keyName }); result.Should().Be(string.Format("[{0}.{1}]", categoryName, keyName), "Because this is the formatted value hint"); }
public void WHEN_Localized_Value_Is_Not_Null_Or_Empty_Found_SHOULD_Render_Primary_Template() { //Arrange var localizationProvider = LocalizationProviderFactory.CreateKnowsItAll(); var helpers = new IfIsLocalizedBlockHelper(localizationProvider.Object); Handlebars.RegisterHelper(helpers.HelperName, helpers.HelperFunction); string categoryName = GetRandom.String(32); string keyName = GetRandom.String(32); var template = Handlebars.Compile("{{#if_localized CategoryName KeyName}}Primary{{else}}Inverse{{/if_localized}}"); //Act var result = template.Invoke(new { CategoryName = categoryName, KeyName = keyName }); //Assert result.Should().Be("Primary"); }
public void WHEN_Localized_Value_Is_Found_SHOULD_Render_LocalizedValue() { //Arrange var localizationProvider = LocalizationProviderFactory.CreateKnowsItAll(); var helpers = new LocalizeHelper(localizationProvider.Object); Handlebars.RegisterHelper(helpers.HelperName, helpers.HelperFunction); string cultureName = "en-CA"; string categoryName = GetRandom.String(32); string keyName = GetRandom.String(32); var template = Handlebars.Compile("{{localize CategoryName KeyName}}"); //Act Thread.CurrentThread.CurrentCulture = CultureInfo.GetCultureInfo(cultureName); var result = template.Invoke(new { CategoryName = categoryName, KeyName = keyName }); result.Should().Be(string.Format("{0}:{1}.{2}", cultureName, categoryName, keyName), "Because this is the mocked value"); }
public void WHEN_Using_The_Helper_The_Culture_From_The_UIThread_SHOULD_Be_Used(string expectedCultureName) { //Arrange var localizationProvider = LocalizationProviderFactory.CreateKnowsItAll(); var helpers = new LocalizeHelper(localizationProvider.Object); Handlebars.RegisterHelper(helpers.HelperName, helpers.HelperFunction); string categoryName = GetRandom.String(32); string keyName = GetRandom.String(32); var template = Handlebars.Compile("{{localize CategoryName KeyName}}"); //Act Thread.CurrentThread.CurrentCulture = CultureInfo.GetCultureInfo(expectedCultureName); var result = template.Invoke(new { CategoryName = categoryName, KeyName = keyName }); //Assert result.Should().Be(string.Format("{0}:{1}.{2}", expectedCultureName, categoryName, keyName), "Because no better solution was available at this time"); }
public void WHEN_Called_With_Variables_SHOULD_Render_Same_As_With_Literals() { //Arrange var localizationProvider = LocalizationProviderFactory.CreateKnowsItAll(); var helpers = new LocalizeHelper(localizationProvider.Object); Handlebars.RegisterHelper(helpers.HelperName, helpers.HelperFunction); string categoryName = GetRandom.String(32); string keyName = GetRandom.String(32); var templateVariables = Handlebars.Compile("{{localize CategoryName KeyName}}"); var templateLiteral = Handlebars.Compile("{{localize '" + categoryName + "' '" + keyName + "'}}"); //Act var resultFromVariables = templateVariables.Invoke(new { CategoryName = categoryName, KeyName = keyName }); var resultFromLiteral = templateLiteral.Invoke(null); //Assert resultFromVariables.Should().BeEquivalentTo(resultFromLiteral); }
public void SetUp() { _localizationProvider = LocalizationProviderFactory.CreateFromTestAssets(); }
public void Setup() { _container = new AutoMocker(); _container.Use(LocalizationProviderFactory.CreateFromTestAssets()); _container.Use(ComposerContextFactory.Create()); }