Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hide, rename and move some methods #1719

Merged
merged 1 commit into from
Jan 5, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 1 addition & 1 deletion Jint.Tests.PublicInterface/ConstraintUsageTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ public void CanObserveConstraintsFromCustomCode()
for (var i = 0; i < 100; ++i)
{
Thread.Sleep(TimeSpan.FromMilliseconds(200));
engine.CheckConstraints();
engine.Constraints.Check();
}

return "didn't throw!";
Expand Down
9 changes: 8 additions & 1 deletion Jint.Tests.PublicInterface/RavenApiUsageTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ public void CanChangeMaxStatementValue()
{
var engine = new Engine(options => options.MaxStatements(123));

var constraint = engine.Advanced.FindConstraint<MaxStatementsConstraint>();
var constraint = engine.Constraints.Find<MaxStatementsConstraint>();
Assert.NotNull(constraint);

var oldMaxStatements = constraint.MaxStatements;
Expand Down Expand Up @@ -194,6 +194,13 @@ public void CanDefineCustomUndefined()
engine.SetValue("value", new CustomUndefined());
Assert.Equal("foo", engine.Evaluate("value ? value + 'bar' : 'foo'"));
}

[Fact]
public void CanResetCallStack()
{
var engine = new Engine();
engine.Advanced.ResetCallStack();
}
}

file sealed class CustomString : JsString
Expand Down
4 changes: 2 additions & 2 deletions Jint.Tests.Test262/Test262Test.cs
Original file line number Diff line number Diff line change
Expand Up @@ -89,8 +89,8 @@ private static void ExecuteTest(Engine engine, Test262File file)
if (file.Type == ProgramType.Module)
{
var specifier = "./" + Path.GetFileName(file.FileName);
engine.AddModule(specifier, builder => builder.AddSource(file.Program));
engine.ImportModule(specifier);
engine.Modules.Add(specifier, builder => builder.AddSource(file.Program));
engine.Modules.Import(specifier);
}
else
{
Expand Down
80 changes: 40 additions & 40 deletions Jint.Tests/Runtime/Debugger/BreakPointTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -55,17 +55,17 @@ public void BreakPointReplacesPreviousBreakPoint()
{
var engine = new Engine(options => options.DebugMode());

engine.DebugHandler.BreakPoints.Set(new BreakPoint(4, 5, "i === 1"));
Assert.Collection(engine.DebugHandler.BreakPoints,
engine.Debugger.BreakPoints.Set(new BreakPoint(4, 5, "i === 1"));
Assert.Collection(engine.Debugger.BreakPoints,
breakPoint =>
{
Assert.Equal(4, breakPoint.Location.Line);
Assert.Equal(5, breakPoint.Location.Column);
Assert.Equal("i === 1", breakPoint.Condition);
});

engine.DebugHandler.BreakPoints.Set(new BreakPoint(4, 5));
Assert.Collection(engine.DebugHandler.BreakPoints,
engine.Debugger.BreakPoints.Set(new BreakPoint(4, 5));
Assert.Collection(engine.Debugger.BreakPoints,
breakPoint =>
{
Assert.Equal(4, breakPoint.Location.Line);
Expand All @@ -79,15 +79,15 @@ public void BreakPointRemovesBasedOnLocationEquality()
{
var engine = new Engine(options => options.DebugMode());

engine.DebugHandler.BreakPoints.Set(new BreakPoint(4, 5, "i === 1"));
engine.DebugHandler.BreakPoints.Set(new BreakPoint(5, 6, "j === 2"));
engine.DebugHandler.BreakPoints.Set(new BreakPoint(10, 7, "x > 5"));
Assert.Equal(3, engine.DebugHandler.BreakPoints.Count);
engine.Debugger.BreakPoints.Set(new BreakPoint(4, 5, "i === 1"));
engine.Debugger.BreakPoints.Set(new BreakPoint(5, 6, "j === 2"));
engine.Debugger.BreakPoints.Set(new BreakPoint(10, 7, "x > 5"));
Assert.Equal(3, engine.Debugger.BreakPoints.Count);

engine.DebugHandler.BreakPoints.RemoveAt(new BreakLocation(null, 4, 5));
engine.DebugHandler.BreakPoints.RemoveAt(new BreakLocation(null, 10, 7));
engine.Debugger.BreakPoints.RemoveAt(new BreakLocation(null, 4, 5));
engine.Debugger.BreakPoints.RemoveAt(new BreakLocation(null, 10, 7));

Assert.Collection(engine.DebugHandler.BreakPoints,
Assert.Collection(engine.Debugger.BreakPoints,
breakPoint =>
{
Assert.Equal(5, breakPoint.Location.Line);
Expand All @@ -101,11 +101,11 @@ public void BreakPointContainsBasedOnLocationEquality()
{
var engine = new Engine(options => options.DebugMode());

engine.DebugHandler.BreakPoints.Set(new BreakPoint(4, 5, "i === 1"));
engine.DebugHandler.BreakPoints.Set(new BreakPoint(5, 6, "j === 2"));
engine.DebugHandler.BreakPoints.Set(new BreakPoint(10, 7, "x > 5"));
Assert.True(engine.DebugHandler.BreakPoints.Contains(new BreakLocation(null, 5, 6)));
Assert.False(engine.DebugHandler.BreakPoints.Contains(new BreakLocation(null, 8, 9)));
engine.Debugger.BreakPoints.Set(new BreakPoint(4, 5, "i === 1"));
engine.Debugger.BreakPoints.Set(new BreakPoint(5, 6, "j === 2"));
engine.Debugger.BreakPoints.Set(new BreakPoint(10, 7, "x > 5"));
Assert.True(engine.Debugger.BreakPoints.Contains(new BreakLocation(null, 5, 6)));
Assert.False(engine.Debugger.BreakPoints.Contains(new BreakLocation(null, 8, 9)));
}

[Fact]
Expand All @@ -120,15 +120,15 @@ public void BreakPointBreaksAtPosition()
var engine = new Engine(options => options.DebugMode());

bool didBreak = false;
engine.DebugHandler.Break += (sender, info) =>
engine.Debugger.Break += (sender, info) =>
{
Assert.Equal(4, info.Location.Start.Line);
Assert.Equal(5, info.Location.Start.Column);
didBreak = true;
return StepMode.None;
};

engine.DebugHandler.BreakPoints.Set(new BreakPoint(4, 5));
engine.Debugger.BreakPoints.Set(new BreakPoint(4, 5));
engine.Execute(script);
Assert.True(didBreak);
}
Expand All @@ -152,10 +152,10 @@ public void BreakPointBreaksInCorrectSource()

var engine = new Engine(options => { options.DebugMode(); });

engine.DebugHandler.BreakPoints.Set(new BreakPoint("script2", 3, 0));
engine.Debugger.BreakPoints.Set(new BreakPoint("script2", 3, 0));

bool didBreak = false;
engine.DebugHandler.Break += (sender, info) =>
engine.Debugger.Break += (sender, info) =>
{
Assert.Equal("script2", info.Location.Source);
Assert.Equal(3, info.Location.Start.Line);
Expand Down Expand Up @@ -190,7 +190,7 @@ public void DebuggerStatementTriggersBreak()
.DebuggerStatementHandling(DebuggerStatementHandling.Script));

bool didBreak = false;
engine.DebugHandler.Break += (sender, info) =>
engine.Debugger.Break += (sender, info) =>
{
Assert.Equal(PauseType.DebuggerStatement, info.PauseType);
didBreak = true;
Expand All @@ -216,13 +216,13 @@ public void DebuggerStatementDoesNotTriggerBreakWhenStepping()

bool didBreak = false;
int stepCount = 0;
engine.DebugHandler.Break += (sender, info) =>
engine.Debugger.Break += (sender, info) =>
{
didBreak = true;
return StepMode.None;
};

engine.DebugHandler.Step += (sender, info) =>
engine.Debugger.Step += (sender, info) =>
{
stepCount++;
return StepMode.Into;
Expand All @@ -247,9 +247,9 @@ public void DebuggerStatementDoesNotTriggerBreakWhenAtBreakPoint()

int breakCount = 0;

engine.DebugHandler.BreakPoints.Set(new BreakPoint(2, 0));
engine.Debugger.BreakPoints.Set(new BreakPoint(2, 0));

engine.DebugHandler.Break += (sender, info) =>
engine.Debugger.Break += (sender, info) =>
{
Assert.Equal(PauseType.Break, info.PauseType);
breakCount++;
Expand All @@ -275,10 +275,10 @@ public void BreakPointDoesNotTriggerBreakWhenStepping()
bool didStep = true;
bool didBreak = true;

engine.DebugHandler.BreakPoints.Set(new BreakPoint(2, 0));
engine.DebugHandler.BreakPoints.Set(new BreakPoint(4, 0));
engine.Debugger.BreakPoints.Set(new BreakPoint(2, 0));
engine.Debugger.BreakPoints.Set(new BreakPoint(4, 0));

engine.DebugHandler.Break += (sender, info) =>
engine.Debugger.Break += (sender, info) =>
{
didBreak = true;
// first breakpoint shouldn't cause us to get here, because we're stepping,
Expand All @@ -287,7 +287,7 @@ public void BreakPointDoesNotTriggerBreakWhenStepping()
return StepMode.None;
};

engine.DebugHandler.Step += (sender, info) =>
engine.Debugger.Step += (sender, info) =>
{
didStep = true;
if (TestHelpers.ReachedLiteral(info, "first breakpoint"))
Expand Down Expand Up @@ -315,10 +315,10 @@ public void DebuggerStatementAndBreakpointTriggerSingleBreak()
.DebugMode()
.DebuggerStatementHandling(DebuggerStatementHandling.Script));

engine.DebugHandler.BreakPoints.Set(new BreakPoint(2, 0));
engine.Debugger.BreakPoints.Set(new BreakPoint(2, 0));

int breakTriggered = 0;
engine.DebugHandler.Break += (sender, info) =>
engine.Debugger.Break += (sender, info) =>
{
breakTriggered++;
return StepMode.None;
Expand All @@ -343,11 +343,11 @@ public void BreakpointOverridesStepOut()

var engine = new Engine(options => options.DebugMode());

engine.DebugHandler.BreakPoints.Set(new BreakPoint(4, 0));
engine.DebugHandler.BreakPoints.Set(new BreakPoint(6, 0));
engine.Debugger.BreakPoints.Set(new BreakPoint(4, 0));
engine.Debugger.BreakPoints.Set(new BreakPoint(6, 0));

int step = 0;
engine.DebugHandler.Break += (sender, info) =>
engine.Debugger.Break += (sender, info) =>
{
step++;
switch (step)
Expand Down Expand Up @@ -387,12 +387,12 @@ function foo()
int breakpointsReached = 0;

// This breakpoint will be hit:
engine.DebugHandler.BreakPoints.Set(new BreakPoint(6, 0, "x == 0"));
engine.Debugger.BreakPoints.Set(new BreakPoint(6, 0, "x == 0"));
// This condition is an error (y is not defined). DebugHandler will
// treat it as an unmatched breakpoint:
engine.DebugHandler.BreakPoints.Set(new BreakPoint(7, 0, "y == 0"));
engine.Debugger.BreakPoints.Set(new BreakPoint(7, 0, "y == 0"));

engine.DebugHandler.Step += (sender, info) =>
engine.Debugger.Step += (sender, info) =>
{
if (info.ReachedLiteral("before breakpoint"))
{
Expand All @@ -409,7 +409,7 @@ function foo()
return StepMode.Into;
};

engine.DebugHandler.Break += (sender, info) =>
engine.Debugger.Break += (sender, info) =>
{
breakpointsReached++;
return StepMode.Into;
Expand Down Expand Up @@ -446,11 +446,11 @@ public void BreakPointCanBeExtended()
";
var engine = new Engine(options => options.DebugMode().InitialStepMode(StepMode.None));

engine.DebugHandler.BreakPoints.Set(
engine.Debugger.BreakPoints.Set(
new SimpleHitConditionBreakPoint(4, 4, condition: null, hitCondition: 5));

int numberOfBreaks = 0;
engine.DebugHandler.Break += (sender, info) =>
engine.Debugger.Break += (sender, info) =>
{
Assert.True(info.ReachedLiteral("breakpoint"));
var extendedBreakPoint = Assert.IsType<SimpleHitConditionBreakPoint>(info.BreakPoint);
Expand Down
2 changes: 1 addition & 1 deletion Jint.Tests/Runtime/Debugger/CallStackTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ function foo()
bool atReturn = false;
bool didCheckReturn = false;

engine.DebugHandler.Step += (sender, info) =>
engine.Debugger.Step += (sender, info) =>
{
if (atReturn)
{
Expand Down
2 changes: 1 addition & 1 deletion Jint.Tests/Runtime/Debugger/DebugHandlerTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ public void AvoidsPauseRecursion()

bool didPropertyAccess = false;

engine.DebugHandler.Step += (sender, info) =>
engine.Debugger.Step += (sender, info) =>
{
// We should never reach "fail", because the only way it's executed is from
// within this Step handler
Expand Down
10 changes: 5 additions & 5 deletions Jint.Tests/Runtime/Debugger/EvaluateTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ function test(x)

TestHelpers.TestAtBreak(script, (engine, info) =>
{
var evaluated = engine.DebugHandler.Evaluate("x");
var evaluated = engine.Debugger.Evaluate("x");
Assert.IsType<JsNumber>(evaluated);
Assert.Equal(50, evaluated.AsNumber());
});
Expand All @@ -32,7 +32,7 @@ function test(x)
public void ThrowsIfNoCurrentContext()
{
var engine = new Engine(options => options.DebugMode());
var exception = Assert.Throws<DebugEvaluationException>(() => engine.DebugHandler.Evaluate("let x = 1;"));
var exception = Assert.Throws<DebugEvaluationException>(() => engine.Debugger.Evaluate("let x = 1;"));
Assert.Null(exception.InnerException); // Not a JavaScript or parser exception
}

Expand All @@ -51,7 +51,7 @@ function test(x)

TestHelpers.TestAtBreak(script, (engine, info) =>
{
var exception = Assert.Throws<DebugEvaluationException>(() => engine.DebugHandler.Evaluate("y"));
var exception = Assert.Throws<DebugEvaluationException>(() => engine.Debugger.Evaluate("y"));
Assert.IsType<JavaScriptException>(exception.InnerException);
});
}
Expand All @@ -72,7 +72,7 @@ function test(x)
TestHelpers.TestAtBreak(script, (engine, info) =>
{
var exception = Assert.Throws<DebugEvaluationException>(() =>
engine.DebugHandler.Evaluate("this is a syntax error"));
engine.Debugger.Evaluate("this is a syntax error"));
Assert.IsType<ParserException>(exception.InnerException);
});
}
Expand Down Expand Up @@ -100,7 +100,7 @@ function test(x)
Assert.Equal(1, engine.CallStack.Count);
var frameBefore = engine.CallStack.Stack[0];

Assert.Throws<DebugEvaluationException>(() => engine.DebugHandler.Evaluate("throws()"));
Assert.Throws<DebugEvaluationException>(() => engine.Debugger.Evaluate("throws()"));
Assert.Equal(1, engine.CallStack.Count);
var frameAfter = engine.CallStack.Stack[0];
// Stack frames and some of their properties are structs - can't check reference equality
Expand Down
10 changes: 5 additions & 5 deletions Jint.Tests/Runtime/Debugger/ScopeTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -352,9 +352,9 @@ function add(a, b)
add(x, y);";
TestHelpers.TestAtBreak(engine =>
{
engine.AddModule("imported-module", imported);
engine.AddModule("main", main);
engine.ImportModule("main");
engine.Modules.Add("imported-module", imported);
engine.Modules.Add("main", main);
engine.Modules.Import("main");
},
info =>
{
Expand Down Expand Up @@ -541,8 +541,8 @@ public void InspectsModuleScopedBindings()
string main = @"const x = 1; debugger;";
TestHelpers.TestAtBreak(engine =>
{
engine.AddModule("main", main);
engine.ImportModule("main");
engine.Modules.Add("main", main);
engine.Modules.Import("main");
},
info =>
{
Expand Down
4 changes: 2 additions & 2 deletions Jint.Tests/Runtime/Debugger/StepFlowTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ private List<Node> CollectStepNodes(string script)
.InitialStepMode(StepMode.Into));

var nodes = new List<Node>();
engine.DebugHandler.Step += (sender, info) =>
engine.Debugger.Step += (sender, info) =>
{
nodes.Add(info.CurrentNode);
return StepMode.Into;
Expand Down Expand Up @@ -261,7 +261,7 @@ private List<string> StepIntoScript(string script)

var stepStatements = new List<string>();
var scriptLines = script.Replace("\r\n", "\n").Replace("\r", "\n").Split('\n');
engine.DebugHandler.Step += (sender, information) =>
engine.Debugger.Step += (sender, information) =>
{
if (information.CurrentNode is not VariableDeclaration && information.CurrentNode is not FunctionDeclaration)
OutputPosition(information.Location);
Expand Down