@@ -41,7 +41,7 @@ private static TGraph SerializeDeserialize<TVertex, TEdge, TGraph>([NotNull] TGr
4141 #endregion
4242
4343 [ TestCaseSource ( typeof ( SerializationTestCaseSources ) , nameof ( SerializationAdjacencyGraphTestCases ) ) ]
44- public void BinarySerialization_AdjacencyGraph ( [ NotNull ] AdjacencyGraph < int , EquatableEdge < int > > graph )
44+ public void BinarySerialization_AdjacencyGraph_Simple ( [ NotNull ] AdjacencyGraph < int , EquatableEdge < int > > graph )
4545 {
4646 AdjacencyGraph < int , EquatableEdge < int > > deserializedGraph1 =
4747 SerializeDeserialize < int , EquatableEdge < int > , AdjacencyGraph < int , EquatableEdge < int > > > ( graph ) ;
@@ -53,33 +53,71 @@ public void BinarySerialization_AdjacencyGraph([NotNull] AdjacencyGraph<int, Equ
5353 Assert . IsTrue ( EquateGraphs . Equate ( arrayGraph , deserializedGraph2 ) ) ;
5454 }
5555
56+ [ TestCaseSource ( typeof ( SerializationTestCaseSources ) , nameof ( SerializationAdjacencyGraphComplexTestCases ) ) ]
57+ public void BinarySerialization_AdjacencyGraph_Complex ( [ NotNull ] AdjacencyGraph < EquatableTestVertex , EquatableTestEdge > graph )
58+ {
59+ AdjacencyGraph < EquatableTestVertex , EquatableTestEdge > deserializedGraph1 =
60+ SerializeDeserialize < EquatableTestVertex , EquatableTestEdge , AdjacencyGraph < EquatableTestVertex , EquatableTestEdge > > ( graph ) ;
61+ Assert . IsTrue ( EquateGraphs . Equate ( graph , deserializedGraph1 ) ) ;
62+
63+ var arrayGraph = new ArrayAdjacencyGraph < EquatableTestVertex , EquatableTestEdge > ( graph ) ;
64+ ArrayAdjacencyGraph < EquatableTestVertex , EquatableTestEdge > deserializedGraph2 =
65+ SerializeDeserialize < EquatableTestVertex , EquatableTestEdge , ArrayAdjacencyGraph < EquatableTestVertex , EquatableTestEdge > > ( arrayGraph ) ;
66+ Assert . IsTrue ( EquateGraphs . Equate ( arrayGraph , deserializedGraph2 ) ) ;
67+ }
68+
5669 [ TestCaseSource ( typeof ( SerializationTestCaseSources ) , nameof ( SerializationAdjacencyGraphTestCases ) ) ]
57- public void BinarySerialization_AdapterGraph ( [ NotNull ] AdjacencyGraph < int , EquatableEdge < int > > graph )
70+ public void BinarySerialization_AdapterGraph_Simple ( [ NotNull ] AdjacencyGraph < int , EquatableEdge < int > > graph )
5871 {
5972 var bidirectionalAdapterGraph = new BidirectionalAdapterGraph < int , EquatableEdge < int > > ( graph ) ;
6073 BidirectionalAdapterGraph < int , EquatableEdge < int > > deserializedGraph =
6174 SerializeDeserialize < int , EquatableEdge < int > , BidirectionalAdapterGraph < int , EquatableEdge < int > > > ( bidirectionalAdapterGraph ) ;
6275 Assert . IsTrue ( EquateGraphs . Equate ( graph , deserializedGraph ) ) ;
6376 }
6477
78+ [ TestCaseSource ( typeof ( SerializationTestCaseSources ) , nameof ( SerializationAdjacencyGraphComplexTestCases ) ) ]
79+ public void BinarySerialization_AdapterGraph_Complex ( [ NotNull ] AdjacencyGraph < EquatableTestVertex , EquatableTestEdge > graph )
80+ {
81+ var bidirectionalAdapterGraph = new BidirectionalAdapterGraph < EquatableTestVertex , EquatableTestEdge > ( graph ) ;
82+ BidirectionalAdapterGraph < EquatableTestVertex , EquatableTestEdge > deserializedGraph =
83+ SerializeDeserialize < EquatableTestVertex , EquatableTestEdge , BidirectionalAdapterGraph < EquatableTestVertex , EquatableTestEdge > > ( bidirectionalAdapterGraph ) ;
84+ Assert . IsTrue ( EquateGraphs . Equate ( graph , deserializedGraph ) ) ;
85+ }
86+
6587 [ TestCaseSource ( typeof ( SerializationTestCaseSources ) , nameof ( SerializationClusteredAdjacencyGraphTestCases ) ) ]
66- public void BinarySerialization_ClusteredGraph ( [ NotNull ] ClusteredAdjacencyGraph < int , EquatableEdge < int > > graph )
88+ public void BinarySerialization_ClusteredGraph_Simple ( [ NotNull ] ClusteredAdjacencyGraph < int , EquatableEdge < int > > graph )
6789 {
6890 ClusteredAdjacencyGraph < int , EquatableEdge < int > > deserializedGraph =
6991 SerializeDeserialize < int , EquatableEdge < int > , ClusteredAdjacencyGraph < int , EquatableEdge < int > > > ( graph ) ;
7092 Assert . IsTrue ( EquateGraphs . Equate ( graph , deserializedGraph ) ) ;
7193 }
7294
95+ [ TestCaseSource ( typeof ( SerializationTestCaseSources ) , nameof ( SerializationClusteredAdjacencyGraphComplexTestCases ) ) ]
96+ public void BinarySerialization_ClusteredGraph_Complex ( [ NotNull ] ClusteredAdjacencyGraph < EquatableTestVertex , EquatableTestEdge > graph )
97+ {
98+ ClusteredAdjacencyGraph < EquatableTestVertex , EquatableTestEdge > deserializedGraph =
99+ SerializeDeserialize < EquatableTestVertex , EquatableTestEdge , ClusteredAdjacencyGraph < EquatableTestVertex , EquatableTestEdge > > ( graph ) ;
100+ Assert . IsTrue ( EquateGraphs . Equate ( graph , deserializedGraph ) ) ;
101+ }
102+
73103 [ TestCaseSource ( typeof ( SerializationTestCaseSources ) , nameof ( SerializationCompressedGraphTestCases ) ) ]
74- public void BinarySerialization_CompressedGraph ( [ NotNull ] CompressedSparseRowGraph < int > graph )
104+ public void BinarySerialization_CompressedGraph_Simple ( [ NotNull ] CompressedSparseRowGraph < int > graph )
75105 {
76106 CompressedSparseRowGraph < int > deserializedGraph =
77107 SerializeDeserialize < int , SEquatableEdge < int > , CompressedSparseRowGraph < int > > ( graph ) ;
78108 Assert . IsTrue ( EquateGraphs . Equate ( graph , deserializedGraph ) ) ;
79109 }
80110
111+ [ TestCaseSource ( typeof ( SerializationTestCaseSources ) , nameof ( SerializationCompressedGraphComplexTestCases ) ) ]
112+ public void BinarySerialization_CompressedGraph_Complex ( [ NotNull ] CompressedSparseRowGraph < EquatableTestVertex > graph )
113+ {
114+ CompressedSparseRowGraph < EquatableTestVertex > deserializedGraph =
115+ SerializeDeserialize < EquatableTestVertex , SEquatableEdge < EquatableTestVertex > , CompressedSparseRowGraph < EquatableTestVertex > > ( graph ) ;
116+ Assert . IsTrue ( EquateGraphs . Equate ( graph , deserializedGraph ) ) ;
117+ }
118+
81119 [ TestCaseSource ( typeof ( SerializationTestCaseSources ) , nameof ( SerializationBidirectionalGraphTestCases ) ) ]
82- public void BinarySerialization_BidirectionalGraph ( [ NotNull ] BidirectionalGraph < int , EquatableEdge < int > > graph )
120+ public void BinarySerialization_BidirectionalGraph_Simple ( [ NotNull ] BidirectionalGraph < int , EquatableEdge < int > > graph )
83121 {
84122 BidirectionalGraph < int , EquatableEdge < int > > deserializedGraph =
85123 SerializeDeserialize < int , EquatableEdge < int > , BidirectionalGraph < int , EquatableEdge < int > > > ( graph ) ;
@@ -101,6 +139,29 @@ public void BinarySerialization_BidirectionalGraph([NotNull] BidirectionalGraph<
101139 Assert . IsTrue ( EquateGraphs . Equate ( undirectedBidirectionalGraph , deserializedGraph4 ) ) ;
102140 }
103141
142+ [ TestCaseSource ( typeof ( SerializationTestCaseSources ) , nameof ( SerializationBidirectionalGraphComplexTestCases ) ) ]
143+ public void BinarySerialization_BidirectionalGraph_Complex ( [ NotNull ] BidirectionalGraph < EquatableTestVertex , EquatableTestEdge > graph )
144+ {
145+ BidirectionalGraph < EquatableTestVertex , EquatableTestEdge > deserializedGraph =
146+ SerializeDeserialize < EquatableTestVertex , EquatableTestEdge , BidirectionalGraph < EquatableTestVertex , EquatableTestEdge > > ( graph ) ;
147+ Assert . IsTrue ( EquateGraphs . Equate ( graph , deserializedGraph ) ) ;
148+
149+ var arrayGraph = new ArrayBidirectionalGraph < EquatableTestVertex , EquatableTestEdge > ( graph ) ;
150+ ArrayBidirectionalGraph < EquatableTestVertex , EquatableTestEdge > deserializedGraph2 =
151+ SerializeDeserialize < EquatableTestVertex , EquatableTestEdge , ArrayBidirectionalGraph < EquatableTestVertex , EquatableTestEdge > > ( arrayGraph ) ;
152+ Assert . IsTrue ( EquateGraphs . Equate ( arrayGraph , deserializedGraph2 ) ) ;
153+
154+ var reversedGraph = new ReversedBidirectionalGraph < EquatableTestVertex , EquatableTestEdge > ( graph ) ;
155+ ReversedBidirectionalGraph < EquatableTestVertex , EquatableTestEdge > deserializedGraph3 =
156+ SerializeDeserialize < EquatableTestVertex , SReversedEdge < EquatableTestVertex , EquatableTestEdge > , ReversedBidirectionalGraph < EquatableTestVertex , EquatableTestEdge > > ( reversedGraph ) ;
157+ Assert . IsTrue ( EquateGraphs . Equate ( reversedGraph , deserializedGraph3 ) ) ;
158+
159+ var undirectedBidirectionalGraph = new UndirectedBidirectionalGraph < EquatableTestVertex , EquatableTestEdge > ( graph ) ;
160+ UndirectedBidirectionalGraph < EquatableTestVertex , EquatableTestEdge > deserializedGraph4 =
161+ SerializeDeserialize < EquatableTestVertex , EquatableTestEdge , UndirectedBidirectionalGraph < EquatableTestVertex , EquatableTestEdge > > ( undirectedBidirectionalGraph ) ;
162+ Assert . IsTrue ( EquateGraphs . Equate ( undirectedBidirectionalGraph , deserializedGraph4 ) ) ;
163+ }
164+
104165 [ TestCaseSource ( typeof ( SerializationTestCaseSources ) , nameof ( SerializationBidirectionalMatrixGraphTestCases ) ) ]
105166 public void BinarySerialization_BidirectionalMatrixGraph ( [ NotNull ] BidirectionalMatrixGraph < EquatableEdge < int > > graph )
106167 {
@@ -110,7 +171,7 @@ public void BinarySerialization_BidirectionalMatrixGraph([NotNull] Bidirectional
110171 }
111172
112173 [ TestCaseSource ( typeof ( SerializationTestCaseSources ) , nameof ( SerializationUndirectedGraphTestCases ) ) ]
113- public void BinarySerialization_UndirectedGraph ( [ NotNull ] UndirectedGraph < int , EquatableEdge < int > > graph )
174+ public void BinarySerialization_UndirectedGraph_Simple ( [ NotNull ] UndirectedGraph < int , EquatableEdge < int > > graph )
114175 {
115176 UndirectedGraph < int , EquatableEdge < int > > deserializedGraph1 =
116177 SerializeDeserialize < int , EquatableEdge < int > , UndirectedGraph < int , EquatableEdge < int > > > ( graph ) ;
@@ -122,14 +183,35 @@ public void BinarySerialization_UndirectedGraph([NotNull] UndirectedGraph<int, E
122183 Assert . IsTrue ( EquateGraphs . Equate ( graph , deserializedGraph2 ) ) ;
123184 }
124185
186+ [ TestCaseSource ( typeof ( SerializationTestCaseSources ) , nameof ( SerializationUndirectedGraphComplexTestCases ) ) ]
187+ public void BinarySerialization_UndirectedGraph_Complex ( [ NotNull ] UndirectedGraph < EquatableTestVertex , EquatableTestEdge > graph )
188+ {
189+ UndirectedGraph < EquatableTestVertex , EquatableTestEdge > deserializedGraph1 =
190+ SerializeDeserialize < EquatableTestVertex , EquatableTestEdge , UndirectedGraph < EquatableTestVertex , EquatableTestEdge > > ( graph ) ;
191+ Assert . IsTrue ( EquateGraphs . Equate ( graph , deserializedGraph1 ) ) ;
192+
193+ var arrayGraph = new ArrayUndirectedGraph < EquatableTestVertex , EquatableTestEdge > ( graph ) ;
194+ ArrayUndirectedGraph < EquatableTestVertex , EquatableTestEdge > deserializedGraph2 =
195+ SerializeDeserialize < EquatableTestVertex , EquatableTestEdge , ArrayUndirectedGraph < EquatableTestVertex , EquatableTestEdge > > ( arrayGraph ) ;
196+ Assert . IsTrue ( EquateGraphs . Equate ( graph , deserializedGraph2 ) ) ;
197+ }
198+
125199 [ TestCaseSource ( typeof ( SerializationTestCaseSources ) , nameof ( SerializationEdgeListGraphTestCases ) ) ]
126- public void BinarySerialization_EdgeListGraph ( [ NotNull ] EdgeListGraph < int , EquatableEdge < int > > graph )
200+ public void BinarySerialization_EdgeListGraph_Simple ( [ NotNull ] EdgeListGraph < int , EquatableEdge < int > > graph )
127201 {
128202 EdgeListGraph < int , EquatableEdge < int > > deserializedGraph =
129203 SerializeDeserialize < int , EquatableEdge < int > , EdgeListGraph < int , EquatableEdge < int > > > ( graph ) ;
130204 Assert . IsTrue ( EquateGraphs . Equate ( graph , deserializedGraph ) ) ;
131205 }
132206
207+ [ TestCaseSource ( typeof ( SerializationTestCaseSources ) , nameof ( SerializationEdgeListGraphComplexTestCases ) ) ]
208+ public void BinarySerialization_EdgeListGraph_Complex ( [ NotNull ] EdgeListGraph < EquatableTestVertex , EquatableTestEdge > graph )
209+ {
210+ EdgeListGraph < EquatableTestVertex , EquatableTestEdge > deserializedGraph =
211+ SerializeDeserialize < EquatableTestVertex , EquatableTestEdge , EdgeListGraph < EquatableTestVertex , EquatableTestEdge > > ( graph ) ;
212+ Assert . IsTrue ( EquateGraphs . Equate ( graph , deserializedGraph ) ) ;
213+ }
214+
133215 #region Test classes
134216
135217 public class TestStream : Stream
0 commit comments