From 563a62dc7f53eeb2c9d737f1595a0a2e7d187c15 Mon Sep 17 00:00:00 2001 From: Norbert Bietsch Date: Tue, 5 Jan 2021 15:00:06 +0100 Subject: [PATCH 1/3] Fixes #7025 --- .../Volo/Abp/TextTemplating/TemplateRenderer.cs | 1 + .../Volo.Abp.TextTemplating.Tests.csproj | 4 ++++ .../SampleTemplates/ShowDecimalNumber.tpl | 1 + .../Abp/TextTemplating/TemplateRenderer_Tests.cs | 15 +++++++++++++++ .../TestTemplateDefinitionProvider.cs | 8 ++++++++ .../Volo/Abp/TextTemplating/TestTemplates.cs | 1 + 6 files changed, 30 insertions(+) create mode 100644 framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/SampleTemplates/ShowDecimalNumber.tpl diff --git a/framework/src/Volo.Abp.TextTemplating/Volo/Abp/TextTemplating/TemplateRenderer.cs b/framework/src/Volo.Abp.TextTemplating/Volo/Abp/TextTemplating/TemplateRenderer.cs index c7d7b9d016..1d89dc3b68 100644 --- a/framework/src/Volo.Abp.TextTemplating/Volo/Abp/TextTemplating/TemplateRenderer.cs +++ b/framework/src/Volo.Abp.TextTemplating/Volo/Abp/TextTemplating/TemplateRenderer.cs @@ -144,6 +144,7 @@ namespace Volo.Abp.TextTemplating } context.PushGlobal(scriptObject); + context.PushCulture(System.Globalization.CultureInfo.CurrentCulture); return context; } diff --git a/framework/test/Volo.Abp.TextTemplating.Tests/Volo.Abp.TextTemplating.Tests.csproj b/framework/test/Volo.Abp.TextTemplating.Tests/Volo.Abp.TextTemplating.Tests.csproj index 555c2934b0..23a817b16b 100644 --- a/framework/test/Volo.Abp.TextTemplating.Tests/Volo.Abp.TextTemplating.Tests.csproj +++ b/framework/test/Volo.Abp.TextTemplating.Tests/Volo.Abp.TextTemplating.Tests.csproj @@ -15,6 +15,10 @@ + + + + diff --git a/framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/SampleTemplates/ShowDecimalNumber.tpl b/framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/SampleTemplates/ShowDecimalNumber.tpl new file mode 100644 index 0000000000..1c54056382 --- /dev/null +++ b/framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/SampleTemplates/ShowDecimalNumber.tpl @@ -0,0 +1 @@ +{{ model.amount}} \ No newline at end of file diff --git a/framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/TemplateRenderer_Tests.cs b/framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/TemplateRenderer_Tests.cs index fef287a2b1..74566442c3 100644 --- a/framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/TemplateRenderer_Tests.cs +++ b/framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/TemplateRenderer_Tests.cs @@ -91,6 +91,21 @@ namespace Volo.Abp.TextTemplating cultureName: "tr" )).ShouldBe("*BEGIN*Merhaba John, nasılsın?. Please click to the following link to get an email to reset your password!*END*"); } + + [Fact] + public async Task Should_Get_Localized_Numbers() + { + (await _templateRenderer.RenderAsync( + TestTemplates.ShowDecimalNumber, + new Dictionary(new List>{new("amount", 123.45M)}), + cultureName: "en" + )).ShouldBe("*BEGIN*123.45*END*"); + + (await _templateRenderer.RenderAsync( + TestTemplates.ShowDecimalNumber, + new Dictionary(new List>{new("amount", 123.45M)}), + cultureName: "de" + )).ShouldBe("*BEGIN*123,45*END*"); } private class WelcomeEmailModel { diff --git a/framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/TestTemplateDefinitionProvider.cs b/framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/TestTemplateDefinitionProvider.cs index af6386e9f7..9db711d70c 100644 --- a/framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/TestTemplateDefinitionProvider.cs +++ b/framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/TestTemplateDefinitionProvider.cs @@ -27,6 +27,14 @@ namespace Volo.Abp.TextTemplating isLayout: true ).WithVirtualFilePath("/SampleTemplates/TestTemplateLayout1.tpl", true) ); + + context.Add( + new TemplateDefinition( + TestTemplates.ShowDecimalNumber, + localizationResource: typeof(TestLocalizationSource), + layout: TestTemplates.TestTemplateLayout1 + ).WithVirtualFilePath("/SampleTemplates/ShowDecimalNumber.tpl", true) + ); } } } diff --git a/framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/TestTemplates.cs b/framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/TestTemplates.cs index a2b605c213..29a8604f3b 100644 --- a/framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/TestTemplates.cs +++ b/framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/TestTemplates.cs @@ -5,5 +5,6 @@ public const string WelcomeEmail = "WelcomeEmail"; public const string ForgotPasswordEmail = "ForgotPasswordEmail"; public const string TestTemplateLayout1 = "TestTemplateLayout1"; + public const string ShowDecimalNumber = "ShowDecimalNumber"; } } \ No newline at end of file From c883e24cd5c7b9c3cfd957efeaea2e73cc4c925a Mon Sep 17 00:00:00 2001 From: GameBelial <243387971@qq.com> Date: Wed, 6 Jan 2021 17:14:11 +0800 Subject: [PATCH 2/3] Fix the problem of path under UNIX-like. --- .../VirtualFiles/LocalizedTemplateContentReaderFactory_Tests.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/VirtualFiles/LocalizedTemplateContentReaderFactory_Tests.cs b/framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/VirtualFiles/LocalizedTemplateContentReaderFactory_Tests.cs index b1dba4bdb5..63e526ac1d 100644 --- a/framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/VirtualFiles/LocalizedTemplateContentReaderFactory_Tests.cs +++ b/framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/VirtualFiles/LocalizedTemplateContentReaderFactory_Tests.cs @@ -23,7 +23,7 @@ namespace Volo.Abp.TextTemplating.VirtualFiles var localizedTemplateContentReaderFactory = new LocalizedTemplateContentReaderFactory( new PhysicalFileVirtualFileProvider( new PhysicalFileProvider(Path.Combine(Directory.GetCurrentDirectory(), - @"Volo\Abp\TextTemplating\")))); + "Volo", "Abp", "TextTemplating")))); var reader = await localizedTemplateContentReaderFactory.CreateAsync(_templateDefinitionManager.Get(TestTemplates.WelcomeEmail)); From 76846b6cac3e1fa9bf0f7e9a897f4a0b8e676567 Mon Sep 17 00:00:00 2001 From: GameBelial <243387971@qq.com> Date: Wed, 6 Jan 2021 17:15:38 +0800 Subject: [PATCH 3/3] Clean up the code. --- .../Volo.Abp.TextTemplating.Tests.csproj | 4 ---- .../Volo/Abp/TextTemplating/TemplateRenderer_Tests.cs | 7 ++++--- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/framework/test/Volo.Abp.TextTemplating.Tests/Volo.Abp.TextTemplating.Tests.csproj b/framework/test/Volo.Abp.TextTemplating.Tests/Volo.Abp.TextTemplating.Tests.csproj index 23a817b16b..555c2934b0 100644 --- a/framework/test/Volo.Abp.TextTemplating.Tests/Volo.Abp.TextTemplating.Tests.csproj +++ b/framework/test/Volo.Abp.TextTemplating.Tests/Volo.Abp.TextTemplating.Tests.csproj @@ -15,10 +15,6 @@ - - - - diff --git a/framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/TemplateRenderer_Tests.cs b/framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/TemplateRenderer_Tests.cs index 74566442c3..ca4ae3e3fd 100644 --- a/framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/TemplateRenderer_Tests.cs +++ b/framework/test/Volo.Abp.TextTemplating.Tests/Volo/Abp/TextTemplating/TemplateRenderer_Tests.cs @@ -97,15 +97,16 @@ namespace Volo.Abp.TextTemplating { (await _templateRenderer.RenderAsync( TestTemplates.ShowDecimalNumber, - new Dictionary(new List>{new("amount", 123.45M)}), + new Dictionary(new List> {new("amount", 123.45M)}), cultureName: "en" )).ShouldBe("*BEGIN*123.45*END*"); (await _templateRenderer.RenderAsync( TestTemplates.ShowDecimalNumber, - new Dictionary(new List>{new("amount", 123.45M)}), + new Dictionary(new List> {new("amount", 123.45M)}), cultureName: "de" - )).ShouldBe("*BEGIN*123,45*END*"); } + )).ShouldBe("*BEGIN*123,45*END*"); + } private class WelcomeEmailModel {