public static JsonSerializer GetSerializer() { //snake case parsing var snakeCaseContractResolver = new SnakeCaseContractResolver(); #pragma warning disable 618 #if !PORTABLE snakeCaseContractResolver.DefaultMembersSearchFlags |= BindingFlags.NonPublic; #endif #pragma warning restore 618 var ser = new JsonSerializer { ContractResolver = snakeCaseContractResolver }; ser.Converters.Add(new SnakeCaseEnumConverter { AllowIntegerValues = true, CamelCaseText = false }); ser.Converters.Add(new UnixTimeConverter()); ser.Converters.Add(new NumberConverter <int>(a => int.Parse(a))); ser.Converters.Add(new NumberConverter <long>(a => long.Parse(a))); ser.Converters.Add(new NumberConverter <uint>(a => uint.Parse(a))); ser.Converters.Add(new NumberConverter <ulong>(a => ulong.Parse(a))); ser.Converters.Add(new NumberConverter <short>(a => short.Parse(a))); ser.Converters.Add(new NumberConverter <ushort>(a => ushort.Parse(a))); ser.Converters.Add(new NumberConverter <byte>(a => byte.Parse(a))); ser.Converters.Add(new NumberConverter <sbyte>(a => sbyte.Parse(a))); ser.Error += (sender, args) => { var ec = args.ErrorContext; #if !DEBUG ec.Handled = true;//never fall on release #endif }; return(ser); }
public void ResolvesCorrectly() { Assert.AreEqual(SnakeCaseContractResolver.GetSnakeCase("ID"), "id"); Assert.AreEqual(SnakeCaseContractResolver.GetSnakeCase("ResourceID"), "resource_id"); }
public void TearDown() { _contractResolver = null; }
public void SetUp() { _contractResolver = new SnakeCaseContractResolver(); }