123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using PetaTest;
- using PetaJson;
- namespace TestCases
- {
- class ModelNotDecorated
- {
- public string Field1;
- public string Field2;
- public string Prop1 { get; set; }
- public string Prop2 { get; set; }
- }
- class ModelInclude
- {
- [Json] public string Field1;
- public string Field2;
- [Json] public string Prop1 { get; set; }
- public string Prop2 { get; set; }
- }
- class ModelExclude
- {
- public string Field1;
- public string Field2;
- public string Prop1 { get; set; }
- public string Prop2 { get; set; }
- [JsonExclude]
- public string Field3;
- [JsonExclude]
- public string Prop3 { get; set; }
- }
- class ModelRenamedMembers
- {
- [Json("Field1")] public string Field1;
- public string Field2;
- [Json("Prop1")] public string Prop1 { get; set; }
- public string Prop2 { get; set; }
- }
- [TestFixture]
- public class TestsReflection
- {
- [Test]
- public void ExcludeAttribute()
- {
- var m = new ModelExclude()
- {
- Field1 = "f1",
- Field2 = "f2",
- Field3 = "f3",
- Prop1 = "p1",
- Prop2 = "p2",
- Prop3 = "p3",
- };
- var json = Json.Format(m);
- Assert.Contains(json, "field1");
- Assert.Contains(json, "field2");
- Assert.DoesNotContain(json, "field3");
- Assert.Contains(json, "prop1");
- Assert.Contains(json, "prop2");
- Assert.DoesNotContain(json, "prop3");
- }
- [Test]
- public void NonDecorated()
- {
- var m = new ModelNotDecorated()
- {
- Field1 = "f1",
- Field2 = "f2",
- Prop1 = "p1",
- Prop2 = "p2",
- };
- var json = Json.Format(m);
- Assert.Contains(json, "field1");
- Assert.Contains(json, "field2");
- Assert.Contains(json, "prop1");
- Assert.Contains(json, "prop2");
- }
- [Test]
- public void Include()
- {
- var m = new ModelInclude()
- {
- Field1 = "f1",
- Field2 = "f2",
- Prop1 = "p1",
- Prop2 = "p2",
- };
- var json = Json.Format(m);
- Assert.Contains(json, "field1");
- Assert.DoesNotContain(json, "field2");
- Assert.Contains(json, "prop1");
- Assert.DoesNotContain(json, "prop2");
- }
- [Test]
- public void RenamedMembers()
- {
- var m = new ModelRenamedMembers()
- {
- Field1 = "f1",
- Field2 = "f2",
- Prop1 = "p1",
- Prop2 = "p2",
- };
- var json = Json.Format(m);
- Assert.Contains(json, "Field1");
- Assert.DoesNotContain(json, "field2");
- Assert.Contains(json, "Prop1");
- Assert.DoesNotContain(json, "prop2");
- }
- }
- }
|