public void BuilderIsStateless() { var stream = new YamlStream(); stream.Load(new StringReader(@" render: StatelessTestElement: key: test")); // key prop declares variable var builder = new YamlComponentBuilder(stream.Documents[0]); builder.Build(); builder.Build(); // variable should not be stored statefully in builder object builder.Build(); }
public void NestedFullAnalysis() { var stream = new YamlStream(); stream.Load(new StringReader(@" render: - - - - AnalysisElement: - AnalysisElement: integer: 1 - AnalysisElement: integer: one - AnalysisElement: boolean: test - AnalysisElement: boolean: true")); var builder = new YamlComponentBuilder(stream.Documents[0]) { FullAnalysis = true }; var e = Assert.Throws <AggregateException>(() => builder.Build()); Assert.That(e.InnerExceptions, Has.Exactly(2).Items); if (e.InnerExceptions[0] is YamlComponentException e1) { Assert.That(e1.Node.Start.Line, Is.EqualTo(7)); Assert.That(e1.Node.Start.Column, Is.EqualTo(22)); } else { Assert.Fail(); } if (e.InnerExceptions[1] is YamlComponentException e2) { Assert.That(e2.Node.Start.Line, Is.EqualTo(10)); Assert.That(e2.Node.Start.Column, Is.EqualTo(16)); } else { Assert.Fail(); } }
public void QuickAnalysis() { var stream = new YamlStream(); stream.Load(new StringReader(@" render: AnalysisElement: integer: test boolean: test")); var builder = new YamlComponentBuilder(stream.Documents[0]); var e = Assert.Throws <YamlComponentException>(() => builder.Build()); Assert.That(e.Node.Start.Line, Is.EqualTo(4)); Assert.That(e.Node.Start.Column, Is.EqualTo(14)); }