Skip to content

Commit dec788d

Browse files
committed
Added a benchmarks
1 parent 710fe68 commit dec788d

File tree

8 files changed

+798
-6
lines changed

8 files changed

+798
-6
lines changed

JavaScriptEngineSwitcher.NoSamples.sln

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Vr
7979
EndProject
8080
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.NiL", "src\JavaScriptEngineSwitcher.NiL\JavaScriptEngineSwitcher.NiL.csproj", "{F0BF7975-2E8A-4EC8-8DAA-760A4302F419}"
8181
EndProject
82+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Benchmarks", "test\JavaScriptEngineSwitcher.Benchmarks\JavaScriptEngineSwitcher.Benchmarks.csproj", "{24A8F6A6-EA4E-43A6-A2D7-E1916F8CB4EE}"
83+
EndProject
8284
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Tests", "test\JavaScriptEngineSwitcher.Tests\JavaScriptEngineSwitcher.Tests.csproj", "{E95FDEF6-18A0-4E26-8FDF-B4B590E6EDAF}"
8385
EndProject
8486
Global
@@ -163,6 +165,10 @@ Global
163165
{E95FDEF6-18A0-4E26-8FDF-B4B590E6EDAF}.Debug|Any CPU.Build.0 = Debug|Any CPU
164166
{E95FDEF6-18A0-4E26-8FDF-B4B590E6EDAF}.Release|Any CPU.ActiveCfg = Release|Any CPU
165167
{E95FDEF6-18A0-4E26-8FDF-B4B590E6EDAF}.Release|Any CPU.Build.0 = Release|Any CPU
168+
{24A8F6A6-EA4E-43A6-A2D7-E1916F8CB4EE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
169+
{24A8F6A6-EA4E-43A6-A2D7-E1916F8CB4EE}.Debug|Any CPU.Build.0 = Debug|Any CPU
170+
{24A8F6A6-EA4E-43A6-A2D7-E1916F8CB4EE}.Release|Any CPU.ActiveCfg = Release|Any CPU
171+
{24A8F6A6-EA4E-43A6-A2D7-E1916F8CB4EE}.Release|Any CPU.Build.0 = Release|Any CPU
166172
EndGlobalSection
167173
GlobalSection(SolutionProperties) = preSolution
168174
HideSolutionNode = FALSE
@@ -188,6 +194,7 @@ Global
188194
{238D7E69-7052-4DFC-83EF-79D3D124C12B} = {0C281F46-F1D2-4A1C-8560-375EDA65D680}
189195
{F0BF7975-2E8A-4EC8-8DAA-760A4302F419} = {0C281F46-F1D2-4A1C-8560-375EDA65D680}
190196
{E95FDEF6-18A0-4E26-8FDF-B4B590E6EDAF} = {53B43213-2E66-42C2-8476-600A2FD2DA75}
197+
{24A8F6A6-EA4E-43A6-A2D7-E1916F8CB4EE} = {53B43213-2E66-42C2-8476-600A2FD2DA75}
191198
EndGlobalSection
192199
GlobalSection(ExtensibilityGlobals) = postSolution
193200
SolutionGuid = {8184BE59-ACBC-4CD1-9419-D59A0FAC6131}

JavaScriptEngineSwitcher.sln

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Vr
8989
EndProject
9090
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.NiL", "src\JavaScriptEngineSwitcher.NiL\JavaScriptEngineSwitcher.NiL.csproj", "{F0BF7975-2E8A-4EC8-8DAA-760A4302F419}"
9191
EndProject
92+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Benchmarks", "test\JavaScriptEngineSwitcher.Benchmarks\JavaScriptEngineSwitcher.Benchmarks.csproj", "{41336A58-B332-4865-88DD-BF4F09443B09}"
93+
EndProject
9294
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Tests", "test\JavaScriptEngineSwitcher.Tests\JavaScriptEngineSwitcher.Tests.csproj", "{E95FDEF6-18A0-4E26-8FDF-B4B590E6EDAF}"
9395
EndProject
9496
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JavaScriptEngineSwitcher.Sample.Resources", "samples\JavaScriptEngineSwitcher.Sample.Resources\JavaScriptEngineSwitcher.Sample.Resources.csproj", "{62F0C0AD-15BC-42CE-9BD2-49F506FEAA54}"
@@ -153,6 +155,10 @@ Global
153155
{D2B4F490-E7A6-40A8-808E-6D7A30D3EBF5}.Debug|Any CPU.Build.0 = Debug|Any CPU
154156
{D2B4F490-E7A6-40A8-808E-6D7A30D3EBF5}.Release|Any CPU.ActiveCfg = Release|Any CPU
155157
{D2B4F490-E7A6-40A8-808E-6D7A30D3EBF5}.Release|Any CPU.Build.0 = Release|Any CPU
158+
{BB7BE2DF-C68C-4F82-8BAB-79A16D9AB812}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
159+
{BB7BE2DF-C68C-4F82-8BAB-79A16D9AB812}.Debug|Any CPU.Build.0 = Debug|Any CPU
160+
{BB7BE2DF-C68C-4F82-8BAB-79A16D9AB812}.Release|Any CPU.ActiveCfg = Release|Any CPU
161+
{BB7BE2DF-C68C-4F82-8BAB-79A16D9AB812}.Release|Any CPU.Build.0 = Release|Any CPU
156162
{A7363E31-A913-41B7-B1C0-06D12755DC8D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
157163
{A7363E31-A913-41B7-B1C0-06D12755DC8D}.Debug|Any CPU.Build.0 = Debug|Any CPU
158164
{A7363E31-A913-41B7-B1C0-06D12755DC8D}.Release|Any CPU.ActiveCfg = Release|Any CPU
@@ -205,10 +211,10 @@ Global
205211
{0342791E-6390-4F97-9163-5CE02E4CFF07}.Debug|Any CPU.Build.0 = Debug|Any CPU
206212
{0342791E-6390-4F97-9163-5CE02E4CFF07}.Release|Any CPU.ActiveCfg = Release|Any CPU
207213
{0342791E-6390-4F97-9163-5CE02E4CFF07}.Release|Any CPU.Build.0 = Release|Any CPU
208-
{BB7BE2DF-C68C-4F82-8BAB-79A16D9AB812}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
209-
{BB7BE2DF-C68C-4F82-8BAB-79A16D9AB812}.Debug|Any CPU.Build.0 = Debug|Any CPU
210-
{BB7BE2DF-C68C-4F82-8BAB-79A16D9AB812}.Release|Any CPU.ActiveCfg = Release|Any CPU
211-
{BB7BE2DF-C68C-4F82-8BAB-79A16D9AB812}.Release|Any CPU.Build.0 = Release|Any CPU
214+
{41336A58-B332-4865-88DD-BF4F09443B09}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
215+
{41336A58-B332-4865-88DD-BF4F09443B09}.Debug|Any CPU.Build.0 = Debug|Any CPU
216+
{41336A58-B332-4865-88DD-BF4F09443B09}.Release|Any CPU.ActiveCfg = Release|Any CPU
217+
{41336A58-B332-4865-88DD-BF4F09443B09}.Release|Any CPU.Build.0 = Release|Any CPU
212218
EndGlobalSection
213219
GlobalSection(SolutionProperties) = preSolution
214220
HideSolutionNode = FALSE
@@ -228,6 +234,7 @@ Global
228234
{2EFFFC6B-E642-477F-B537-4241EBD93410} = {0C281F46-F1D2-4A1C-8560-375EDA65D680}
229235
{F676D869-5715-46B0-A118-A162D9C9DEC6} = {0C281F46-F1D2-4A1C-8560-375EDA65D680}
230236
{D2B4F490-E7A6-40A8-808E-6D7A30D3EBF5} = {0C281F46-F1D2-4A1C-8560-375EDA65D680}
237+
{BB7BE2DF-C68C-4F82-8BAB-79A16D9AB812} = {0C281F46-F1D2-4A1C-8560-375EDA65D680}
231238
{A7363E31-A913-41B7-B1C0-06D12755DC8D} = {0C281F46-F1D2-4A1C-8560-375EDA65D680}
232239
{FF77615B-4182-4BE7-AE2B-0F9F75198490} = {0C281F46-F1D2-4A1C-8560-375EDA65D680}
233240
{893590AC-3D31-4DC8-A1B9-822BCC983A46} = {0C281F46-F1D2-4A1C-8560-375EDA65D680}
@@ -241,7 +248,7 @@ Global
241248
{C790AD7F-55C6-4106-8D8C-8F901B7FF245} = {E5989CB5-AACE-4D35-A8EE-26942F140DA3}
242249
{5CA92021-B75A-40AF-B5AA-500BAF76B4D6} = {E5989CB5-AACE-4D35-A8EE-26942F140DA3}
243250
{0342791E-6390-4F97-9163-5CE02E4CFF07} = {E5989CB5-AACE-4D35-A8EE-26942F140DA3}
244-
{BB7BE2DF-C68C-4F82-8BAB-79A16D9AB812} = {0C281F46-F1D2-4A1C-8560-375EDA65D680}
251+
{41336A58-B332-4865-88DD-BF4F09443B09} = {53B43213-2E66-42C2-8476-600A2FD2DA75}
245252
EndGlobalSection
246253
GlobalSection(ExtensibilityGlobals) = postSolution
247254
SolutionGuid = {8184BE59-ACBC-4CD1-9419-D59A0FAC6131}

build/common.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<GenerateAssemblyDescriptionAttribute>false</GenerateAssemblyDescriptionAttribute>
66
</PropertyGroup>
77

8-
<PropertyGroup Condition=" '$(TargetFramework)' == 'net40-client' Or '$(TargetFramework)' == 'net45' Or '$(TargetFramework)' == 'net451' Or '$(TargetFramework)' == 'net452' Or '$(TargetFramework)' == 'net471' ">
8+
<PropertyGroup Condition=" '$(TargetFramework)' == 'net40-client' Or '$(TargetFramework)' == 'net45' Or '$(TargetFramework)' == 'net451' Or '$(TargetFramework)' == 'net452' Or '$(TargetFramework)' == 'net46' Or '$(TargetFramework)' == 'net471' ">
99
<DefineConstants>$(DefineConstants);NETFULL</DefineConstants>
1010
</PropertyGroup>
1111

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
using System;
2+
using System.Text;
3+
4+
namespace JavaScriptEngineSwitcher.Benchmarks
5+
{
6+
internal static class Assert
7+
{
8+
public static void Equal(string expected, string actual)
9+
{
10+
if (actual != expected)
11+
{
12+
var messageBuilder = new StringBuilder();
13+
messageBuilder.AppendLine("Assert.Equal() Failure");
14+
messageBuilder.AppendLine();
15+
messageBuilder.AppendLine($"Expected: {expected}");
16+
messageBuilder.Append($"Actual: {actual}");
17+
18+
string errorMessage = messageBuilder.ToString();
19+
20+
throw new InvalidOperationException(errorMessage);
21+
}
22+
}
23+
}
24+
}
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
<Project Sdk="Microsoft.NET.Sdk">
2+
3+
<PropertyGroup>
4+
<Product>JS Engine Switcher: Benchmarks</Product>
5+
<VersionPrefix>3.0.0</VersionPrefix>
6+
<VersionSuffix>rc1</VersionSuffix>
7+
<TargetFrameworks>net46;netcoreapp2.0</TargetFrameworks>
8+
<OutputType>Exe</OutputType>
9+
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
10+
<IsPackable>false</IsPackable>
11+
</PropertyGroup>
12+
13+
<Import Project="../../build/common.props" />
14+
15+
<ItemGroup>
16+
<PackageReference Include="BenchmarkDotNet" Version="0.11.3" />
17+
<PackageReference Include="JavaScriptEngineSwitcher.ChakraCore.Native.win-arm" Version="3.0.0-rc1" />
18+
<PackageReference Include="JavaScriptEngineSwitcher.ChakraCore.Native.win-x64" Version="3.0.0-rc1" />
19+
<PackageReference Include="JavaScriptEngineSwitcher.ChakraCore.Native.win-x86" Version="3.0.0-rc1" />
20+
21+
<ProjectReference Include="../../src/JavaScriptEngineSwitcher.ChakraCore/JavaScriptEngineSwitcher.ChakraCore.csproj" />
22+
<ProjectReference Include="../../src/JavaScriptEngineSwitcher.Core/JavaScriptEngineSwitcher.Core.csproj" />
23+
<ProjectReference Include="../../src/JavaScriptEngineSwitcher.Jint/JavaScriptEngineSwitcher.Jint.csproj" />
24+
<ProjectReference Include="../../src/JavaScriptEngineSwitcher.Jurassic/JavaScriptEngineSwitcher.Jurassic.csproj" />
25+
<ProjectReference Include="../../src/JavaScriptEngineSwitcher.Msie/JavaScriptEngineSwitcher.Msie.csproj" />
26+
<ProjectReference Include="../../src/JavaScriptEngineSwitcher.NiL/JavaScriptEngineSwitcher.NiL.csproj" />
27+
<ProjectReference Include="../../src/JavaScriptEngineSwitcher.Vroom/JavaScriptEngineSwitcher.Vroom.csproj" />
28+
</ItemGroup>
29+
30+
<ItemGroup Condition=" '$(TargetFramework)' == 'net46' ">
31+
<PackageReference Include="JavaScriptEngineSwitcher.V8.Native.win-x64" Version="3.0.0-rc1" />
32+
<PackageReference Include="JavaScriptEngineSwitcher.V8.Native.win-x86" Version="3.0.0-rc1" />
33+
34+
<ProjectReference Include="../../src/JavaScriptEngineSwitcher.V8/JavaScriptEngineSwitcher.V8.csproj" />
35+
</ItemGroup>
36+
37+
<ItemGroup Condition=" '$(TargetFramework)' == 'netcoreapp2.0' ">
38+
<PackageReference Include="JavaScriptEngineSwitcher.ChakraCore.Native.linux-x64" Version="3.0.0-rc1" />
39+
<PackageReference Include="JavaScriptEngineSwitcher.ChakraCore.Native.osx-x64" Version="3.0.0-rc1" />
40+
</ItemGroup>
41+
42+
<ItemGroup>
43+
<EmbeddedResource Include="Resources/russian-translit.js" />
44+
</ItemGroup>
45+
46+
</Project>

0 commit comments

Comments
 (0)