Esempio n. 1
0
        public void RejectsSecondBlockInRoot()
        {
            var media = new RebuildMedia();

            media.Block("root");

            Assert.Throws <InvalidOperationException>(() =>
                                                      media.Block("root2")
                                                      );
        }
Esempio n. 2
0
        public void RejectsDuplicateKeyForArray()
        {
            IMedia <byte[]> media = new RebuildMedia();

            media.Array("array", "item");

            Assert.Throws <InvalidOperationException>(() =>
                                                      media.Array("array", "item")
                                                      );
        }
Esempio n. 3
0
        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
                            );
        }
Esempio n. 4
0
        public void RejectsDuplicateKeyForBlock()
        {
            IMedia <byte[]> media = new RebuildMedia();

            media.Block("key");

            Assert.Throws <InvalidOperationException>(() =>
                                                      media.Block("key")
                                                      );
        }
Esempio n. 5
0
        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()
                );
        }
Esempio n. 6
0
        public void RejectsArrayInProp()
        {
            var media = new RebuildMedia();

            Assert.Throws <InvalidOperationException>(() =>
                                                      media
                                                      .Block("root")
                                                      .Prop("erty")
                                                      .Array("items", "item")
                                                      );
        }
Esempio n. 7
0
        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()
                );
        }
Esempio n. 8
0
        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()
                );
        }
Esempio n. 9
0
        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()
                );
        }
Esempio n. 10
0
        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]
                );
        }
Esempio n. 11
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")
                                                      );
        }
Esempio n. 12
0
        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()
                );
        }
Esempio n. 13
0
        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()")
                );
        }
Esempio n. 14
0
        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]
                );
        }
Esempio n. 15
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]
                );
        }
Esempio n. 16
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)")
                );
        }