diff --git a/src/AngleSharp.Js.Tests/DomTests.cs b/src/AngleSharp.Js.Tests/DomTests.cs index 88b41b7..e14fe45 100644 --- a/src/AngleSharp.Js.Tests/DomTests.cs +++ b/src/AngleSharp.Js.Tests/DomTests.cs @@ -68,5 +68,19 @@ public async Task NumericIndexerOfTokenListYieldsTheToken() var result = await "new DOMParser().parseFromString(`
`, 'text/html').body.firstChild.classList[1]".EvalScriptAsync(); Assert.AreEqual("b", result); } + + [Test] + public async Task ConsoleIsTheSameObjectOnEveryAccess() + { + var result = await "window.console === window.console".EvalScriptAsync(); + Assert.AreEqual("True", result); + } + + [Test] + public async Task ConsoleKeepsPropertiesAssignedToIt() + { + var result = await "(function () { window.console.marker = 'kept'; return window.console.marker; })()".EvalScriptAsync(); + Assert.AreEqual("kept", result); + } } } diff --git a/src/AngleSharp.Js/Dom/WindowExtensions.cs b/src/AngleSharp.Js/Dom/WindowExtensions.cs index 27835b9..679ae9d 100644 --- a/src/AngleSharp.Js/Dom/WindowExtensions.cs +++ b/src/AngleSharp.Js/Dom/WindowExtensions.cs @@ -7,6 +7,7 @@ namespace AngleSharp.Js.Dom using AngleSharp.Html.Dom; using AngleSharp.Js.Attributes; using System; + using System.Runtime.CompilerServices; ///