test/Rapidity.Json.Test/JsonWriterTest.cs

(开头部分) 31KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using Rapidity.Json;
using System;
using System.Diagnostics;
using System.Globalization;
using System.IO;
using System.Text;
using Xunit;
using Xunit.Abstractions;

namespace Rapidity.Json.Test
{
    public class JsonWriterTest
    {
        private ITestOutputHelper _output;
        public JsonWriterTest(ITestOutputHelper output)
        {
            _output = output;
        }

        /// <summary>
        /// InvalidStartToken
        /// </summary>
        [Fact]
        public void InvalidStartTokenTest()
        {
            var sw = new StringWriter();
            using (var write = new JsonWriter(sw))
            {
                //EndObject
                Assert.Throws<JsonException>(() => write.WriteEndObject());
                //EndArray
                Assert.Throws<JsonException>(() => write.WriteEndArray());
                //PropertyName
                Assert.Throws<JsonException>(() => write.WritePropertyName("property"));

                //Multiple value token
                write.WriteFloat(-0.1f);
                Assert.Throws<JsonException>(() => write.WriteLong(100));
            }
        }

        [Fact]
        public void InvalidEndTokenTest()
        {
            using (var sw = new StringWriter())
            using (var write = new JsonWriter(sw))
            {
                write.WriteStartArray();
                Assert.Throws<JsonException>(() => write.WriteEndObject());
            }

            using (var sw = new StringWriter())
            using (var write = new JsonWriter(sw))
            {
                write.WriteStartArray();
                Assert.Throws<JsonException>(() => write.WritePropertyName("aaef"));
            }

            using (var sw = new StringWriter())
            using (var write = new JsonWriter(sw))
后面还有 425 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。