public void SkipArrayElement() { MockedJsonReader reader = new MockedJsonReader(); reader.Begin().Array().String("foo").String("bar").EndArray().End(); reader.Read(); reader.Read(); reader.Skip(); Assert.AreEqual("bar", reader.ReadString()); }
public void ReadAfterEOF() { MockedJsonReader reader = new MockedJsonReader(); reader.Begin().End(); Assert.AreEqual(JsonTokenClass.BOF, reader.TokenClass); Assert.IsFalse(reader.Read()); Assert.IsTrue(reader.EOF); Assert.IsFalse(reader.Read()); }
public void CannotExceedMaxDepth() { MockedJsonReader reader = new MockedJsonReader(); reader.MaxDepth = 2; reader.Array().Array().Array(); reader.Read(); reader.Read(); reader.Read(); // Exception will be thrown here, when attempting to read // first value *after* the depth has been exceeded. reader.Read(); }
public void SkipObjectMember() { MockedJsonReader reader = new MockedJsonReader(); reader.Begin().Object() .Member("m1", "v1") .Member("m2").Object() .Member("m3", "v3") .Member("m4", "v4") .EndObject() .Member("m5", "v5") .EndObject() .End(); reader.Read(); reader.Read(); reader.Skip(); Assert.AreEqual(JsonTokenClass.Member, reader.TokenClass); Assert.AreEqual("m2", reader.Text); reader.Skip(); Assert.AreEqual("m5", reader.ReadMember()); }
public void ReadMember() { MockedJsonReader reader = new MockedJsonReader(); reader.Begin().Object().Member("mon", "Monday").EndObject().End(); reader.ReadToken(JsonTokenClass.Object); Assert.AreEqual("mon", reader.ReadMember()); Assert.AreEqual("Monday", reader.ReadString()); Assert.AreEqual(JsonTokenClass.EndObject, reader.TokenClass); Assert.IsFalse(reader.Read()); }
public void ReadTypedNumber() { MockedJsonReader reader = new MockedJsonReader(); reader.Begin().Array(). Number(123). Number(456). Number(2.5). Number(4.2). Number(9.99m). EndArray().End(); reader.ReadToken(JsonTokenClass.Array); Assert.AreEqual(123, (int)reader.ReadNumber()); Assert.AreEqual(456L, (long)reader.ReadNumber()); Assert.AreEqual(2.5f, (float)reader.ReadNumber()); Assert.AreEqual(4.2, (double)reader.ReadNumber()); Assert.AreEqual(9.99m, (decimal)reader.ReadNumber()); reader.ReadToken(JsonTokenClass.EndArray); Assert.IsFalse(reader.Read()); }
public void ReadTypedNumber() { MockedJsonReader reader = new MockedJsonReader(); reader.Begin().Array(). Number(123). Number(456). Number(2.5). Number(4.2). Number(9.99m). EndArray().End(); reader.ReadToken(JsonTokenClass.Array); Assert.AreEqual(123, reader.ReadInt32()); Assert.AreEqual(456L, reader.ReadInt64()); Assert.AreEqual(2.5f, reader.ReadSingle()); Assert.AreEqual(4.2, reader.ReadDouble()); Assert.AreEqual(9.99m, reader.ReadDecimal()); Assert.AreEqual(JsonTokenClass.EndArray, reader.TokenClass); Assert.IsFalse(reader.Read()); }
public void ReadTypedNumber() { MockedJsonReader reader = new MockedJsonReader(); reader.Begin().Array(). Number(123). Number(456). Number(2.5). Number(4.2). Number(9.99m). EndArray().End(); reader.ReadToken(JsonTokenClass.Array); Assert.AreEqual(123, (int) reader.ReadNumber()); Assert.AreEqual(456L, (long) reader.ReadNumber()); Assert.AreEqual(2.5f, (float) reader.ReadNumber()); Assert.AreEqual(4.2, (double) reader.ReadNumber()); Assert.AreEqual(9.99m, (decimal) reader.ReadNumber()); reader.ReadToken(JsonTokenClass.EndArray); Assert.IsFalse(reader.Read()); }