public void RejectsSecondBlockInRoot() { var media = new RebuildMedia(); media.Block("root"); Assert.Throws <InvalidOperationException>(() => media.Block("root2") ); }
public void RejectsDuplicateKeyForArray() { IMedia <byte[]> media = new RebuildMedia(); media.Array("array", "item"); Assert.Throws <InvalidOperationException>(() => media.Array("array", "item") ); }
public void RejectsEmptyBlockAsRoot() { IMedia <byte[]> media = new RebuildMedia(); Assert.Contains("You are trying to make a block without a name", Assert.Throws <InvalidOperationException>(() => media.Block("") ).Message ); }
public void RejectsDuplicateKeyForBlock() { IMedia <byte[]> media = new RebuildMedia(); media.Block("key"); Assert.Throws <InvalidOperationException>(() => media.Block("key") ); }
public void CreatesArrayAtRoot() { var media = new RebuildMedia(); media.Array("root", "key"); Assert.Equal( "<root bx-type=\"array\" bx-array-item-name=\"key\" />", new TextOf(media.Content()).AsString() ); }
public void RejectsArrayInProp() { var media = new RebuildMedia(); Assert.Throws <InvalidOperationException>(() => media .Block("root") .Prop("erty") .Array("items", "item") ); }
public void BuildsBlockInBlock() { var media = new RebuildMedia(); media.Block("root") .Block("contents"); Assert.Equal( "<root bx-type=\"block\"><contents bx-type=\"block\" /></root>", new TextOf(media.Content()).AsString() ); }
public void CreatesArrayInArray() { var media = new RebuildMedia(); media .Array("keys", "key") .Array("subarray", "subkey"); Assert.Equal( "<keys bx-type=\"array\" bx-array-item-name=\"key\"><subarray bx-type=\"array\" bx-array-item-name=\"subkey\" /></keys>", new TextOf(media.Content()).AsString() ); }
public void CreatesArrayInBlock() { var media = new RebuildMedia(); media .Block("root") .Array("keys", "key"); Assert.Equal( "<root bx-type=\"block\"><keys bx-type=\"array\" bx-array-item-name=\"key\" /></root>", new TextOf(media.Content()).AsString() ); }
public void CreatesPropertyInBlock() { var media = new RebuildMedia(); media.Block("root") .Prop("key"); Assert.Equal( "1", new XMLCursor( new InputOf(media.Content()) ).Values("count(/root/key)")[0] ); }
public void RejectsDuplicateKeyForProp() { IMedia <byte[]> media = new RebuildMedia(); var block = media.Block("root"); block .Prop("key") .Put("lock"); Assert.Throws <InvalidOperationException>(() => block.Prop("key") ); }
public void CreatesBlockInArray() { var media = new RebuildMedia(); media.Array("array", "item") .Block("item") .Prop("prop") .Put("eller"); Assert.Equal( "<array bx-type=\"array\" bx-array-item-name=\"item\"><item bx-type=\"block\"><prop bx-type=\"prop\">eller</prop></item></array>", new TextOf(media.Content()).AsString() ); }
public void CreatesBlockInRoot() { var media = new RebuildMedia(); media.Block("root") .Prop("key") .Put("value"); Assert.Contains( "value", new XMLCursor( new InputOf(media.Content()) ).Values("/root/key/text()") ); }
public void PutsValueToArray() { var media = new RebuildMedia(); media .Array("items", "item") .Put("ei"); Assert.Contains( "ei", new XMLCursor( new InputOf(media.Content()) ).Values("/items/item/text()")[0] ); }
public void PutsValueToProp() { var media = new RebuildMedia(); media.Block("root") .Prop("key") .Put("lock"); Assert.Equal( "lock", new XMLCursor( new InputOf(media.Content()) ).Values("/root/key/text()")[0] ); }
public void CreatesBlockInProp() { var media = new RebuildMedia(); media.Block("root") .Prop("my-block") .Block("contents"); Assert.Contains( "1", new XMLCursor( new InputOf(media.Content()) ).Values("count(/root/my-block/contents)") ); }