public void ReadAsDouble_Integer_Success()
        {
            JValue n = new JValue(1);

            JTokenReader reader = new JTokenReader(n);

            Assert.AreEqual(1d, reader.ReadAsDouble());
        }
        public void ReadAsDouble_String_Success()
        {
            JValue s = JValue.CreateString("123.4");

            JTokenReader reader = new JTokenReader(s);

            Assert.AreEqual(123.4d, reader.ReadAsDouble());
        }
        public void ReadAsDouble_Null_Success()
        {
            JValue n = JValue.CreateNull();

            JTokenReader reader = new JTokenReader(n);

            Assert.AreEqual(null, reader.ReadAsDouble());
        }
        public void ReadAsDouble_InvalidToken()
        {
            JArray a = new JArray
            {
                1, 2
            };

            JTokenReader reader = new JTokenReader(a);

            ExceptionAssert.Throws<JsonReaderException>(
                () => { reader.ReadAsDouble(); },
                "Error reading double. Unexpected token: StartArray. Path ''.");
        }