@@ -8,24 +8,70 @@ namespace Shuttle.Core.Serialization.Tests
88 public class DefaultSerializerFixture
99 {
1010 [ Test ]
11- public async Task Should_be_able_to_serialize_and_deserialize_a_simple_type ( )
11+ public void Should_be_able_to_serialize_and_deserialize_a_simple_type ( )
1212 {
1313 var original = new SimpleSerializerType ( ) ;
1414 var serializer = new DefaultSerializer ( ) ;
1515
16- var stream = await serializer . Serialize ( original ) ;
16+ var stream = serializer . Serialize ( original ) ;
17+
18+ var xml = new StreamReader ( stream ) . ReadToEnd ( ) ;
19+
20+ Assert . IsTrue ( xml . Contains ( original . Id . ToString ( ) ) ) ;
21+
22+ stream . Position = 0 ;
23+
24+ Assert . AreEqual ( original . Id , ( ( SimpleSerializerType ) serializer . Deserialize ( typeof ( SimpleSerializerType ) , stream ) ) . Id ) ;
25+ }
26+
27+ [ Test ]
28+ public async Task Should_be_able_to_serialize_and_deserialize_a_simple_type_async ( )
29+ {
30+ var original = new SimpleSerializerType ( ) ;
31+ var serializer = new DefaultSerializer ( ) ;
32+
33+ var stream = await serializer . SerializeAsync ( original ) ;
1734
1835 var xml = await new StreamReader ( stream ) . ReadToEndAsync ( ) ;
1936
2037 Assert . IsTrue ( xml . Contains ( original . Id . ToString ( ) ) ) ;
2138
2239 stream . Position = 0 ;
2340
24- Assert . AreEqual ( original . Id , ( ( SimpleSerializerType ) await serializer . Deserialize ( typeof ( SimpleSerializerType ) , stream ) ) . Id ) ;
41+ Assert . AreEqual ( original . Id , ( ( SimpleSerializerType ) await serializer . DeserializeAsync ( typeof ( SimpleSerializerType ) , stream ) ) . Id ) ;
42+ }
43+
44+ [ Test ]
45+ public void Should_be_able_to_serialize_and_deserialize_a_complex_type ( )
46+ {
47+ var complex = new ComplexSerializerType ( ) ;
48+ var serializer = new DefaultSerializer ( ) ;
49+
50+ serializer . AddSerializerType ( typeof ( ComplexSerializerType ) , typeof ( v1 . SomeSerializerType ) ) ;
51+ serializer . AddSerializerType ( typeof ( ComplexSerializerType ) , typeof ( v1 . AnotherSerializerType ) ) ;
52+ serializer . AddSerializerType ( typeof ( ComplexSerializerType ) , typeof ( v2 . SomeSerializerType ) ) ;
53+ serializer . AddSerializerType ( typeof ( ComplexSerializerType ) , typeof ( v2 . AnotherSerializerType ) ) ;
54+
55+ var stream = serializer . Serialize ( complex ) ;
56+ var xml = new StreamReader ( stream ) . ReadToEnd ( ) ;
57+
58+ Assert . IsTrue ( xml . Contains ( complex . Id . ToString ( ) ) ) ;
59+
60+ stream . Position = 0 ;
61+
62+ Assert . AreEqual ( complex . Id , ( ( ComplexSerializerType ) serializer . Deserialize ( typeof ( ComplexSerializerType ) , stream ) ) . Id ) ;
63+
64+ Console . WriteLine ( xml ) ;
65+
66+ var some1 = new v1 . SomeSerializerType ( ) ;
67+ var some2 = new v2 . SomeSerializerType ( ) ;
68+
69+ Assert . AreEqual ( some1 . Id , ( ( v1 . SomeSerializerType ) serializer . Deserialize ( typeof ( v1 . SomeSerializerType ) , serializer . Serialize ( some1 ) ) ) . Id ) ;
70+ Assert . AreEqual ( some2 . Id , ( ( v2 . SomeSerializerType ) serializer . Deserialize ( typeof ( v2 . SomeSerializerType ) , serializer . Serialize ( some2 ) ) ) . Id ) ;
2571 }
2672
2773 [ Test ]
28- public async Task Should_be_able_to_serialize_and_deserialize_a_complex_type ( )
74+ public async Task Should_be_able_to_serialize_and_deserialize_a_complex_type_async ( )
2975 {
3076 var complex = new ComplexSerializerType ( ) ;
3177 var serializer = new DefaultSerializer ( ) ;
@@ -35,22 +81,22 @@ public async Task Should_be_able_to_serialize_and_deserialize_a_complex_type()
3581 serializer . AddSerializerType ( typeof ( ComplexSerializerType ) , typeof ( v2 . SomeSerializerType ) ) ;
3682 serializer . AddSerializerType ( typeof ( ComplexSerializerType ) , typeof ( v2 . AnotherSerializerType ) ) ;
3783
38- var stream = await serializer . Serialize ( complex ) ;
84+ var stream = await serializer . SerializeAsync ( complex ) ;
3985 var xml = await new StreamReader ( stream ) . ReadToEndAsync ( ) ;
4086
4187 Assert . IsTrue ( xml . Contains ( complex . Id . ToString ( ) ) ) ;
4288
4389 stream . Position = 0 ;
4490
45- Assert . AreEqual ( complex . Id , ( ( ComplexSerializerType ) await serializer . Deserialize ( typeof ( ComplexSerializerType ) , stream ) ) . Id ) ;
91+ Assert . AreEqual ( complex . Id , ( ( ComplexSerializerType ) await serializer . DeserializeAsync ( typeof ( ComplexSerializerType ) , stream ) ) . Id ) ;
4692
4793 Console . WriteLine ( xml ) ;
4894
4995 var some1 = new v1 . SomeSerializerType ( ) ;
5096 var some2 = new v2 . SomeSerializerType ( ) ;
5197
52- Assert . AreEqual ( some1 . Id , ( ( v1 . SomeSerializerType ) await serializer . Deserialize ( typeof ( v1 . SomeSerializerType ) , await serializer . Serialize ( some1 ) ) ) . Id ) ;
53- Assert . AreEqual ( some2 . Id , ( ( v2 . SomeSerializerType ) await serializer . Deserialize ( typeof ( v2 . SomeSerializerType ) , await serializer . Serialize ( some2 ) ) ) . Id ) ;
98+ Assert . AreEqual ( some1 . Id , ( ( v1 . SomeSerializerType ) await serializer . DeserializeAsync ( typeof ( v1 . SomeSerializerType ) , await serializer . SerializeAsync ( some1 ) ) ) . Id ) ;
99+ Assert . AreEqual ( some2 . Id , ( ( v2 . SomeSerializerType ) await serializer . DeserializeAsync ( typeof ( v2 . SomeSerializerType ) , await serializer . SerializeAsync ( some2 ) ) ) . Id ) ;
54100 }
55101 }
56102}
0 commit comments