fix(template-engine): resolve TemplateEngine-006..010 — code-region-aware API/brace scanning, composed-alarm override validation, N+1 fix, doc correction
This commit is contained in:
@@ -141,4 +141,19 @@ public class SharedScriptServiceTests
|
||||
Assert.NotNull(result);
|
||||
Assert.Contains("Syntax error", result);
|
||||
}
|
||||
|
||||
// --- TemplateEngine-007 regression: string/comment-literal awareness ---
|
||||
|
||||
[Theory]
|
||||
[InlineData("var s = \"a } brace\"; { }")] // brace inside a normal string
|
||||
[InlineData("var s = \"a ) paren ] bracket\";")] // paren/bracket inside a string
|
||||
[InlineData("var s = @\"verbatim } brace\"; { }")] // brace inside a verbatim string
|
||||
[InlineData("var x = 1; var s = $\"hole {x} literal}}\"; { }")] // interpolated string with braces
|
||||
[InlineData("var c = '}'; if (true) { }")] // char literal containing a brace
|
||||
[InlineData("// a stray } here\nvar x = 1;")] // brace inside a line comment
|
||||
[InlineData("/* a stray ) here */ var x = 1;")] // paren inside a block comment
|
||||
public void ValidateSyntax_DelimiterInsideStringOrComment_ReturnsNull(string code)
|
||||
{
|
||||
Assert.Null(SharedScriptService.ValidateSyntax(code));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user