public void AddTableWithSyntax() { var uut = new ValueTable() { MirrorSyntax = new DocumentSyntax(), }; uut.AddTableWithSyntax("NewTable"); var content = uut.MirrorSyntax.ToString(); Assert.Equal("[NewTable]\n", content); }
public void AddTableAndListAndTableWithSyntax() { var uut = new ValueTable() { MirrorSyntax = new DocumentSyntax(), }; var newTable = uut.AddTableWithSyntax("NewTable"); var newList = newTable.AddListWithSyntax("NewList"); var newTable2 = newList.AddTableWithSyntax(); newTable2.AddItemWithSyntax("NewItem", "NewValue"); var content = uut.MirrorSyntax.ToString(); Assert.Equal("[NewTable]\nNewList = [\n\t{ NewItem = \"NewValue\" },\n]\n", content); }
private ValueTable EnsureHasTable(ValueTable table, string name) { if (table.ContainsKey(name)) { var value = _table[name]; if (value.Type != ValueType.Table) { throw new InvalidOperationException("The package lock already has a non-table dependencies property"); } // Find the Syntax for the table return((ValueTable)value.AsTable()); } else { // Create a new table return(table.AddTableWithSyntax(name)); } }