Skip to content

Commit 93cd065

Browse files
committed
[#493] [edit] test
1 parent 3f63e56 commit 93cd065

File tree

4 files changed

+107
-12
lines changed

4 files changed

+107
-12
lines changed

src/Simplify.Templates.Tests/Simplify.Templates.Tests.csproj

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@
2424
<None Remove="TestTemplates\Embedded\LocalizationTest.tpl-en.xml" />
2525
<None Remove="TestTemplates\Embedded\LocalizationTest.tpl-ru.xml" />
2626
<None Remove="TestTemplates\Embedded\TestFile.txt" />
27+
<None Remove="TestTemplates\Embedded\PerformanceTemplate.tpl" />
28+
<None Remove="TestTemplates\Embedded\PerformanceTemplateResult.tpl" />
2729
</ItemGroup>
2830
<ItemGroup>
2931
<EmbeddedResource Include="TestTemplates\Embedded\EmptyFIle.txt">
@@ -41,6 +43,12 @@
4143
<EmbeddedResource Include="TestTemplates\Embedded\TestFile.txt">
4244
<CopyToOutputDirectory>Never</CopyToOutputDirectory>
4345
</EmbeddedResource>
46+
<EmbeddedResource Include="TestTemplates\Embedded\PerformanceTemplate.tpl">
47+
<CopyToOutputDirectory>Never</CopyToOutputDirectory>
48+
</EmbeddedResource>
49+
<EmbeddedResource Include="TestTemplates\Embedded\PerformanceTemplateResult.tpl">
50+
<CopyToOutputDirectory>Never</CopyToOutputDirectory>
51+
</EmbeddedResource>
4452
</ItemGroup>
4553
<ItemGroup>
4654
<None Update="TestTemplates\Local\LocalizationTest.tpl">

src/Simplify.Templates.Tests/TemplatePerformanceTests.cs

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,6 @@ public void MeasurePerformance_MultipleReplacements()
1414

1515
const int iterations = 1000000;
1616

17-
var template = @"Lorem ipsum dolor sit amet {var1} consectetur adipiscing elit {var2},
18-
sed do eiusmod tempor incididunt {var3} ut labore et dolore magna aliqua.
19-
Ut enim ad minim veniam {var4}, quis nostrud exercitation ullamco {var5}
20-
laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in {var1}
21-
reprehenderit in voluptate {var2} velit esse cillum dolore eu fugiat {var3}
22-
nulla pariatur. Excepteur sint occaecat {var4} cupidatat non proident {var5},
23-
sunt in culpa qui officia deserunt {var1} mollit anim id est laborum {var2}.
24-
Multiple replacements: {var3} {var4} {var5} {var1} {var2} {var3} {var4} {var5}";
25-
2617
var sw = new Stopwatch();
2718

2819
// Force GC collect before test
@@ -38,15 +29,23 @@ sunt in culpa qui officia deserunt {var1} mollit anim id est laborum {var2}.
3829

3930
for (var i = 0; i < iterations; i++)
4031
{
41-
var testData = TemplateBuilder
42-
.FromString(template)
32+
var tpl = TemplateBuilder
33+
.FromCurrentAssembly("TestTemplates/Embedded/PerformanceTemplate.tpl")
34+
.Build();
35+
36+
var checkData = TemplateBuilder
37+
.FromCurrentAssembly("TestTemplates/Embedded/PerformanceTemplateResult.tpl")
4338
.Build()
44-
.Set("var1", "test1")
39+
.Get();
40+
41+
tpl.Set("var1", "test1")
4542
.Set("var2", "test2")
4643
.Set("var3", "test3")
4744
.Set("var4", "test4")
4845
.Set("var5", "test5")
4946
.Get();
47+
48+
Assert.That(tpl.Get(), Is.EqualTo(checkData));
5049
}
5150

5251
sw.Stop();
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
Lorem ipsum dolor sit amet {var1} consectetur adipiscing elit {var2},
2+
sed do eiusmod tempor incididunt {var3} ut labore et dolore magna aliqua.
3+
Ut enim ad minim veniam {var4}, quis nostrud exercitation ullamco {var5}
4+
laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in {var1}
5+
reprehenderit in voluptate {var2} velit esse cillum dolore eu fugiat {var3}
6+
nulla pariatur. Excepteur sint occaecat {var4} cupidatat non proident {var5},
7+
sunt in culpa qui officia deserunt {var1} mollit anim id est laborum {var2}.
8+
Multiple replacements: {var3} {var4} {var5} {var1} {var2} {var3} {var4} {var5}
9+
10+
Lorem ipsum dolor sit amet {var1} consectetur adipiscing elit {var2},
11+
sed do eiusmod tempor incididunt {var3} ut labore et dolore magna aliqua.
12+
Ut enim ad minim veniam {var4}, quis nostrud exercitation ullamco {var5}
13+
laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in {var1}
14+
reprehenderit in voluptate {var2} velit esse cillum dolore eu fugiat {var3}
15+
nulla pariatur. Excepteur sint occaecat {var4} cupidatat non proident {var5},
16+
sunt in culpa qui officia deserunt {var1} mollit anim id est laborum {var2}.
17+
Multiple replacements: {var3} {var4} {var5} {var1} {var2} {var3} {var4} {var5}
18+
19+
Lorem ipsum dolor sit amet {var1} consectetur adipiscing elit {var2},
20+
sed do eiusmod tempor incididunt {var3} ut labore et dolore magna aliqua.
21+
Ut enim ad minim veniam {var4}, quis nostrud exercitation ullamco {var5}
22+
laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in {var1}
23+
reprehenderit in voluptate {var2} velit esse cillum dolore eu fugiat {var3}
24+
nulla pariatur. Excepteur sint occaecat {var4} cupidatat non proident {var5},
25+
sunt in culpa qui officia deserunt {var1} mollit anim id est laborum {var2}.
26+
Multiple replacements: {var3} {var4} {var5} {var1} {var2} {var3} {var4} {var5}
27+
28+
Lorem ipsum dolor sit amet {var1} consectetur adipiscing elit {var2},
29+
sed do eiusmod tempor incididunt {var3} ut labore et dolore magna aliqua.
30+
Ut enim ad minim veniam {var4}, quis nostrud exercitation ullamco {var5}
31+
laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in {var1}
32+
reprehenderit in voluptate {var2} velit esse cillum dolore eu fugiat {var3}
33+
nulla pariatur. Excepteur sint occaecat {var4} cupidatat non proident {var5},
34+
sunt in culpa qui officia deserunt {var1} mollit anim id est laborum {var2}.
35+
Multiple replacements: {var3} {var4} {var5} {var1} {var2} {var3} {var4} {var5}
36+
37+
Lorem ipsum dolor sit amet {var1} consectetur adipiscing elit {var2},
38+
sed do eiusmod tempor incididunt {var3} ut labore et dolore magna aliqua.
39+
Ut enim ad minim veniam {var4}, quis nostrud exercitation ullamco {var5}
40+
laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in {var1}
41+
reprehenderit in voluptate {var2} velit esse cillum dolore eu fugiat {var3}
42+
nulla pariatur. Excepteur sint occaecat {var4} cupidatat non proident {var5},
43+
sunt in culpa qui officia deserunt {var1} mollit anim id est laborum {var2}.
44+
Multiple replacements: {var3} {var4} {var5} {var1} {var2} {var3} {var4} {var5}
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
Lorem ipsum dolor sit amet test1 consectetur adipiscing elit test2,
2+
sed do eiusmod tempor incididunt test3 ut labore et dolore magna aliqua.
3+
Ut enim ad minim veniam test4, quis nostrud exercitation ullamco test5
4+
laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in test1
5+
reprehenderit in voluptate test2 velit esse cillum dolore eu fugiat test3
6+
nulla pariatur. Excepteur sint occaecat test4 cupidatat non proident test5,
7+
sunt in culpa qui officia deserunt test1 mollit anim id est laborum test2.
8+
Multiple replacements: test3 test4 test5 test1 test2 test3 test4 test5
9+
10+
Lorem ipsum dolor sit amet test1 consectetur adipiscing elit test2,
11+
sed do eiusmod tempor incididunt test3 ut labore et dolore magna aliqua.
12+
Ut enim ad minim veniam test4, quis nostrud exercitation ullamco test5
13+
laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in test1
14+
reprehenderit in voluptate test2 velit esse cillum dolore eu fugiat test3
15+
nulla pariatur. Excepteur sint occaecat test4 cupidatat non proident test5,
16+
sunt in culpa qui officia deserunt test1 mollit anim id est laborum test2.
17+
Multiple replacements: test3 test4 test5 test1 test2 test3 test4 test5
18+
19+
Lorem ipsum dolor sit amet test1 consectetur adipiscing elit test2,
20+
sed do eiusmod tempor incididunt test3 ut labore et dolore magna aliqua.
21+
Ut enim ad minim veniam test4, quis nostrud exercitation ullamco test5
22+
laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in test1
23+
reprehenderit in voluptate test2 velit esse cillum dolore eu fugiat test3
24+
nulla pariatur. Excepteur sint occaecat test4 cupidatat non proident test5,
25+
sunt in culpa qui officia deserunt test1 mollit anim id est laborum test2.
26+
Multiple replacements: test3 test4 test5 test1 test2 test3 test4 test5
27+
28+
Lorem ipsum dolor sit amet test1 consectetur adipiscing elit test2,
29+
sed do eiusmod tempor incididunt test3 ut labore et dolore magna aliqua.
30+
Ut enim ad minim veniam test4, quis nostrud exercitation ullamco test5
31+
laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in test1
32+
reprehenderit in voluptate test2 velit esse cillum dolore eu fugiat test3
33+
nulla pariatur. Excepteur sint occaecat test4 cupidatat non proident test5,
34+
sunt in culpa qui officia deserunt test1 mollit anim id est laborum test2.
35+
Multiple replacements: test3 test4 test5 test1 test2 test3 test4 test5
36+
37+
Lorem ipsum dolor sit amet test1 consectetur adipiscing elit test2,
38+
sed do eiusmod tempor incididunt test3 ut labore et dolore magna aliqua.
39+
Ut enim ad minim veniam test4, quis nostrud exercitation ullamco test5
40+
laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in test1
41+
reprehenderit in voluptate test2 velit esse cillum dolore eu fugiat test3
42+
nulla pariatur. Excepteur sint occaecat test4 cupidatat non proident test5,
43+
sunt in culpa qui officia deserunt test1 mollit anim id est laborum test2.
44+
Multiple replacements: test3 test4 test5 test1 test2 test3 test4 test5

0 commit comments

Comments
 (0)