-Changed ISerializable serialization to require SerializableAttribute

This commit is contained in:
James Newton-King
2017-11-04 17:53:17 +13:00
parent 1e612287b3
commit 48be21d4ce
8 changed files with 33 additions and 3 deletions
@@ -125,6 +125,15 @@ namespace Newtonsoft.Json.Tests.Serialization
Assert.AreEqual(JsonContractType.Serializable, contract.ContractType);
}
[Test]
public void ResolveSerializableWithoutAttributeContract()
{
DefaultContractResolver contractResolver = new DefaultContractResolver();
JsonContract contract = contractResolver.ResolveContract(typeof(ISerializableWithoutAttributeTestObject));
Assert.AreEqual(JsonContractType.Object, contract.ContractType);
}
[Test]
public void ResolveObjectContractWithFieldsSerialization()
{
@@ -152,6 +152,7 @@ namespace Newtonsoft.Json.Tests.Serialization
}
#if !(PORTABLE || DNXCORE50 || PORTABLE40) || NETSTANDARD1_3 || NETSTANDARD2_0
[Serializable]
public class MainClass : ISerializable
{
public ChildClass Child { get; set; }
@@ -162,6 +163,7 @@ namespace Newtonsoft.Json.Tests.Serialization
}
}
[Serializable]
public class ChildClass : ISerializable
{
public string Name { get; set; }