public void New_item_reference()
        {
            var sample = GetSample1();

            var pointer = new JsonPointer("/foo/-");

            Assert.True(pointer.IsNewPointer());
        }
        public void PointToRoot()
        {
            var sample = GetSample1();

            var pointer = new JsonPointer("");

            var result = pointer.Find(sample);

            Assert.Equal(sample, result);
        }
        public void PointToArrayElement()
        {
            var sample = GetSample1();

            var pointer = new JsonPointer("/foo/0");

            var result = pointer.Find(sample);

            Assert.Equal(sample["foo"][0], result);
        }
Пример #4
0
        public void Point_to_array_element_that_does_not_exist()
        {
            var sample = GetSample1();

            var    pointer = new JsonPointer("/foo/10");
            var    thrown  = false;
            JToken result;

            try
            {
                result = pointer.Find(sample);
            }
            catch (ArgumentException)
            {
                thrown = true;
            }

            Assert.True(thrown);
        }
        public void Sample2Author()
        {
            var sample = GetSample2();

            var pointer = new JsonPointer("/books/1/author");

            var result = pointer.Find(sample);

            Assert.Equal("John Steinbeck", (string)result);
        }
        public void PointToPropertyWithEmptyKey()
        {
            var sample = GetSample1();

            var pointer = new JsonPointer("/");

            var result = pointer.Find(sample);

            Assert.Equal(sample[""], result);
        }
Пример #7
0
 public override void Read(JObject jOperation)
 {
     Path     = new JsonPointer((string)jOperation.GetValue("path"));
     FromPath = new JsonPointer((string)jOperation.GetValue("from"));
 }
Пример #8
0
 protected static void WriteFromPath(JsonWriter writer, JsonPointer pointer)
 {
     writer.WritePropertyName("from");
     writer.WriteValue(pointer.ToString());
 }
        public void PointToTokenWithEscapedSpace()
        {
            var sample = GetSample1();

            var pointer = new JsonPointer("/%20");

            var result = pointer.Find(sample);

            Assert.Equal(7, (int)result);
        }
        public void PointToTokenWithEscapedQuote()
        {
            var sample = GetSample1();

            var pointer = new JsonPointer("/k%22l");

            var result = pointer.Find(sample);

            Assert.Equal(6, (int)result);
        }
        public void PointToTokenWithEscapedBackSlash()
        {
            var sample = GetSample1();

            var pointer = new JsonPointer("/i%5Cj");

            var result = pointer.Find(sample);

            Assert.Equal(5, (int)result);
        }
        public void PointToTokenWithEscapedPipe()
        {
            var sample = GetSample1();

            var pointer = new JsonPointer("/g%7Ch");

            var result = pointer.Find(sample);

            Assert.Equal(4, (int)result);
        }
        public void PointToTokenWithEncodedCaret()
        {
            var sample = GetSample1();

            var pointer = new JsonPointer("/e%5Ef");

            var result = pointer.Find(sample);

            Assert.Equal(3, (int)result);
        }
        public void PointToTokenWithEncodedPercent()
        {
            var sample = GetSample1();

            var pointer = new JsonPointer("/c%25d");

            var result = pointer.Find(sample);

            Assert.Equal(2, (int)result);
        }
        public void PointToTokenWithEmbeddedSlash()
        {
            var sample = GetSample1();

            var pointer = new JsonPointer("/a~1b");

            var result = pointer.Find(sample);

            Assert.Equal(1, (int)result);
        }
        public void Parent_pointer()
        {
            var sample = GetSample1();

            var pointer = new JsonPointer("/foo/-");

            Assert.Equal("/foo", pointer.ParentPointer.ToString());
        }
        public void PointToTokenWithEmbeddedTilde()
        {
            var sample = GetSample1();

            var pointer = new JsonPointer("/m~0n");

            var result = pointer.Find(sample);

            Assert.Equal(8, (int)result);
        }
        public void PointToTokenTwoLevelsDeep()
        {
            var sample = GetSample1();

            var pointer = new JsonPointer("/tee/black");

            var result = pointer.Find(sample);

            Assert.Equal("a3", (string)result);
        }
Пример #19
0
 protected static void WriteFromPath(JsonWriter writer, JsonPointer pointer)
 {
     writer.WritePropertyName("from");
     writer.WriteValue(pointer.ToString());
 }
        public void PointToTokenThreeLevelsDeep()
        {
            var sample = GetSample1();

            var pointer = new JsonPointer("/tee/pink/1");

            var result = pointer.Find(sample);

            Assert.Equal("blue", (string)result);
        }
Пример #21
0
 public override void Read(JObject jOperation)
 {
     Path = new JsonPointer((string)jOperation.GetValue("path"));   
 }
        public void Point_to_array_element_that_does_not_exist()
        {
            var sample = GetSample1();

            var pointer = new JsonPointer("/foo/10");
            var thrown = false;
            JToken result;
            try
            {
                result = pointer.Find(sample);
            }
            catch (ArgumentException)
            {

                thrown = true;
            }

            Assert.True(thrown);
        }