public void LineWithText() { TSBuilder builder = new TSBuilder(); builder.Line("Hello"); Assert.AreEqual("Hello", builder.ToString()); Assert.IsTrue(builder.WriteNewLineBeforeNextText); }
public void LineWithNoArguments() { TSBuilder builder = new TSBuilder(); builder.Line(); Assert.AreEqual("", builder.ToString()); Assert.IsTrue(builder.WriteNewLineBeforeNextText); }
private void SetCurrentState(State newState) { switch (currentState) { case State.Start: builder.Line(); break; case State.Element: builder.Line(","); break; default: throw new Exception($"Unrecognized current state: {currentState}"); } currentState = newState; }
public void ObjectType(Action <TSObjectType> objectTypeAction) { SetCurrentState(State.TypeDeclaration); builder.Line("{"); builder.IncreaseIndent(); objectTypeAction?.Invoke(new TSObjectType(builder)); builder.DecreaseIndent(); builder.Text("}"); }
public void IfBlockWithSurroundingEmptyLines() { TSBuilder builder = new TSBuilder(); builder.Line(); builder.If("true", ifBlock => { }); builder.Line(); AssertEx.EqualLines( new[] { "", "if (true) {", "}", "" }, builder.ToString()); }
public void IfBlockWithSurroundingLines() { TSBuilder builder = new TSBuilder(); builder.Line("const x = 5;"); builder.If("true", ifBlock => { }); builder.Line("const y = 6;"); AssertEx.EqualLines( new[] { "const x = 5;", "if (true) {", "}", "const y = 6;" }, builder.ToString()); }
/// <summary> /// Set the current state of this TSObject. Changing the state may add "\n" or ",\n". /// </summary> /// <param name="value"></param> private void SetCurrentState(State value) { switch (currentState) { case State.Start: builder.Line(); break; case State.LineComment: case State.BlockComment: break; case State.Property: builder.Line(","); break; default: throw new Exception($"Unrecognized current state: {currentState}"); } currentState = value; }
public void IfWithLineAfterwards() { TSBuilder builder = new TSBuilder(); builder.If("true", ifBlock => { }); builder.Line("Test"); AssertEx.EqualLines( new[] { "if (true) {", "}", "Test" }, builder); Assert.IsTrue(builder.WriteNewLineBeforeNextText); }
public void Line() { builder.Line(); }