Skip to content

Commit d69cd5a

Browse files
committed
In JavaScriptEngineSwitcher.Jint added support for the Jint version 3.0.0 Beta 2051
1 parent e75f83b commit d69cd5a

File tree

5 files changed

+45
-7
lines changed

5 files changed

+45
-7
lines changed

src/JavaScriptEngineSwitcher.Jint/JavaScriptEngineSwitcher.Jint.csproj

+3-3
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,15 @@
1717
<Import Project="../../build/nuget-for-dotnet-lib.props" />
1818

1919
<PropertyGroup>
20-
<Description>JavaScriptEngineSwitcher.Jint contains adapter `JintJsEngine` (wrapper for the Jint JavaScript Engine (http://github.com/sebastienros/jint) version 3.0.0 Beta 2050).</Description>
20+
<Description>JavaScriptEngineSwitcher.Jint contains adapter `JintJsEngine` (wrapper for the Jint JavaScript Engine (http://github.com/sebastienros/jint) version 3.0.0 Beta 2051).</Description>
2121
<PackageTags>$(PackageCommonTags);Jint</PackageTags>
2222
<PackageIconFullPath>../../Icons/JavaScriptEngineSwitcher_Jint_Logo128x128.png</PackageIconFullPath>
23-
<PackageReleaseNotes>Jint was updated to version 3.0.0 Beta 2050.</PackageReleaseNotes>
23+
<PackageReleaseNotes>Jint was updated to version 3.0.0 Beta 2051.</PackageReleaseNotes>
2424
</PropertyGroup>
2525

2626
<ItemGroup>
2727
<PackageReference Include="AdvancedStringBuilder" Version="0.1.0" />
28-
<PackageReference Include="Jint" Version="3.0.0-beta-2050" />
28+
<PackageReference Include="Jint" Version="3.0.0-beta-2051" />
2929

3030
<ProjectReference Include="../JavaScriptEngineSwitcher.Core/JavaScriptEngineSwitcher.Core.csproj" />
3131
</ItemGroup>

src/JavaScriptEngineSwitcher.Jint/JintJsEngine.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ public sealed class JintJsEngine : JsEngineBase
5151
/// <summary>
5252
/// Version of original JS engine
5353
/// </summary>
54-
private const string EngineVersion = "3.0.0 Beta 2050";
54+
private const string EngineVersion = "3.0.0 Beta 2051";
5555

5656
/// <summary>
5757
/// Jint JS engine

src/JavaScriptEngineSwitcher.Jint/readme.txt

+2-2
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,12 @@
1313
===========
1414
JavaScriptEngineSwitcher.Jint contains adapter `JintJsEngine` (wrapper for the
1515
Jint JavaScript Engine (http://github.com/sebastienros/jint) version
16-
3.0.0 Beta 2050).
16+
3.0.0 Beta 2051).
1717

1818
=============
1919
RELEASE NOTES
2020
=============
21-
Jint was updated to version 3.0.0 Beta 2050.
21+
Jint was updated to version 3.0.0 Beta 2051.
2222

2323
=============
2424
DOCUMENTATION

test/JavaScriptEngineSwitcher.Tests/JavaScriptEngineSwitcher.Tests.csproj

+1-1
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@
5858
</ItemGroup>
5959

6060
<ItemGroup Condition=" '$(TargetFramework)' != 'net452' And '$(TargetFramework)' != 'netcoreapp2.1' ">
61-
<PackageReference Include="Microsoft.NET.Test.Sdk" VersionOverride="17.7.1" />
61+
<PackageReference Include="Microsoft.NET.Test.Sdk" VersionOverride="17.7.2" />
6262
<PackageReference Include="xunit.runner.visualstudio" VersionOverride="2.4.5" />
6363
</ItemGroup>
6464

test/JavaScriptEngineSwitcher.Tests/Jint/InteropTests.cs

+38
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010

1111
using JavaScriptEngineSwitcher.Tests.Interop;
1212
using JavaScriptEngineSwitcher.Tests.Interop.Animals;
13+
using JavaScriptEngineSwitcher.Tests.Interop.Logging;
1314

1415
namespace JavaScriptEngineSwitcher.Tests.Jint
1516
{
@@ -462,6 +463,43 @@ string TestAllowReflectionSetting(bool allowReflection)
462463

463464
#endregion
464465

466+
#region Types with fields
467+
468+
[Fact]
469+
public override void EmbeddingOfCustomReferenceTypeWithField()
470+
{
471+
// Arrange
472+
Type defaultLoggerType = typeof(DefaultLogger);
473+
Type throwExceptionLoggerType = typeof(ThrowExceptionLogger);
474+
const string updateCode = @"var oldLogger = DefaultLogger.Current;
475+
DefaultLogger.Current = new ThrowExceptionLogger();";
476+
const string rollbackCode = "DefaultLogger.Current = oldLogger;";
477+
478+
const string input = "DefaultLogger.Current";
479+
const string targetOutput = "[throw exception logger]";
480+
481+
// Act
482+
string output;
483+
484+
using (var jsEngine = CreateJsEngine())
485+
{
486+
jsEngine.EmbedHostType("DefaultLogger", defaultLoggerType);
487+
jsEngine.EmbedHostType("ThrowExceptionLogger", throwExceptionLoggerType);
488+
489+
lock (DefaultLogger.SyncRoot)
490+
{
491+
jsEngine.Execute(updateCode);
492+
output = jsEngine.Evaluate<string>(input);
493+
jsEngine.Execute(rollbackCode);
494+
}
495+
}
496+
497+
// Assert
498+
Assert.Equal(targetOutput, output);
499+
}
500+
501+
#endregion
502+
465503
#region Types with methods
466504

467505
[Fact]

0 commit comments

Comments
 (0)