本文整理汇总了C#中SerializationTestContext.SerializeAndDeserialize方法的典型用法代码示例。如果您正苦于以下问题:C# SerializationTestContext.SerializeAndDeserialize方法的具体用法?C# SerializationTestContext.SerializeAndDeserialize怎么用?C# SerializationTestContext.SerializeAndDeserialize使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SerializationTestContext
的用法示例。
在下文中一共展示了SerializationTestContext.SerializeAndDeserialize方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: WriteBlobTest
public void WriteBlobTest()
{
var graph = new BlobGraph {Value = new byte[] {1, 2, 3}};
var context = new SerializationTestContext();
var actual = context.SerializeAndDeserialize(graph);
Assert.IsNotNull(actual.Value);
Assert.IsTrue(graph.Value.SequenceEqual(actual.Value));
}
示例2: IdentifierTest
public void IdentifierTest()
{
var graph = new Identifier { Id = 1, Type = ApplicationType.Api };
var context = new SerializationTestContext();
var actual = context.SerializeAndDeserialize(graph);
Assert.IsNotNull(actual);
Assert.AreEqual(graph.Id, actual.Id);
Assert.AreEqual(graph.Type, actual.Type);
}
示例3: WriteCollectionOfComplexTest
public void WriteCollectionOfComplexTest()
{
var graph = new CollectionOfComplexGraph {
Value = new List<Relation> { new Relation { Id = Guid.Empty, Name = "Test", Value = 1 } }
};
var context = new SerializationTestContext();
var actual = context.SerializeAndDeserialize(graph);
Assert.IsNotNull(actual.Value);
Assert.AreEqual(1, actual.Value.Count);
for (var i = 0; i < graph.Value.Count; i++) {
var expectedValue = graph.Value[i];
var actualValue = actual.Value[i];
Assert.AreEqual(expectedValue, actualValue);
}
}
示例4: ValueDictionaryTest
public void ValueDictionaryTest()
{
var graph = new ValueDictionary {
Test = new Dictionary<string, int> {
{"Test1", 1},
{"Test2", 2},
{"Test3", 3},
}
};
var context = new SerializationTestContext();
var actual = context.SerializeAndDeserialize(graph);
Assert.IsNotNull(actual);
Assert.IsNotNull(actual.Test);
Assert.AreEqual(3, actual.Test.Count);
Assert.IsTrue(graph.Test.SequenceEqual(actual.Test, new ValueDictionaryComparer()));
}
示例5: WriteAndReadNullableValuesTest
public void WriteAndReadNullableValuesTest()
{
var graph = new NullableValuesEntity {
Id = 1,
MayBool = null,
MayDateTime = null,
MayInt = 44,
MayTimeSpan = new TimeSpan(22, 30, 10)
};
var context = new SerializationTestContext();
var actual = context.SerializeAndDeserialize(graph);
Assert.IsNotNull(actual);
Assert.AreEqual(1, actual.Id);
Assert.IsNull(actual.MayBool);
Assert.IsNull(actual.MayDateTime);
Assert.AreEqual(44, actual.MayInt);
Assert.AreEqual(new TimeSpan(22, 30, 10), actual.MayTimeSpan);
}
示例6: ComplexDictionaryTest
public void ComplexDictionaryTest()
{
var graph = new ComplexDictionary {
Test = new Dictionary<Identifier, Category> {
{new Identifier {Id = 1, Type = ApplicationType.Api}, new Category {Name = "Warning", Description = "Warning of something", Image = new byte[]{1, 2, 3, 4, 5}}},
{new Identifier {Id = 2, Type = ApplicationType.Api}, new Category {Name = "Error", Description = "Error of something", Image = new byte[]{1, 2, 3, 4, 5, 6, 7, 8, 9}}},
{new Identifier {Id = 3, Type = ApplicationType.Service}, new Category {Name = "Temporary"}}
}
};
var context = new SerializationTestContext();
var actual = context.SerializeAndDeserialize(graph);
Assert.IsNotNull(actual);
Assert.IsNotNull(actual.Test);
Assert.AreEqual(3, actual.Test.Count);
Assert.IsTrue(graph.Test.Keys.SequenceEqual(actual.Test.Keys));
Assert.IsTrue(graph.Test.Values.SequenceEqual(actual.Test.Values));
}
示例7: WriteCollectionOfCollectionTest
public void WriteCollectionOfCollectionTest()
{
var graph = new CollectionOfCollectionGraph {
Value = new List<List<string>> {
new List<string> {"Test"}
}
};
var context = new SerializationTestContext();
var actual = context.SerializeAndDeserialize(graph);
Assert.IsNotNull(actual.Value);
Assert.AreEqual(1, actual.Value.Count);
for (var i = 0; i < graph.Value.Count; i++) {
var expectedValue = graph.Value[i];
var actualValue = actual.Value[i];
Assert.AreEqual(1, actualValue.Count);
var firstExpected = expectedValue.First();
var firstActual = actualValue.First();
Assert.AreEqual(firstExpected, firstActual);
}
}
示例8: WriteCollectionOfDictionaryTest
public void WriteCollectionOfDictionaryTest()
{
var graph = new CollectionOfDictionaryGraph {
Value = new List<Dictionary<string, int>> {
new Dictionary<string, int> {{"Test", 42}}
}
};
var context = new SerializationTestContext();
var actual = context.SerializeAndDeserialize(graph);
Assert.IsNotNull(actual.Value);
Assert.AreEqual(1, actual.Value.Count);
for (var i = 0; i < graph.Value.Count; i++) {
var expectedValue = graph.Value[i];
var actualValue = actual.Value[i];
Assert.AreEqual(1, actualValue.Count);
var firstExpected = expectedValue.First();
var firstActual = actualValue.First();
Assert.AreEqual(firstExpected.Key, firstActual.Key);
Assert.AreEqual(firstExpected.Value, firstActual.Value);
}
}
示例9: WriteMultidimensionalArrayTest
public void WriteMultidimensionalArrayTest()
{
var graph = new MultidimensionalArrayGraph {
Value = new[,] { { 5, 2, 3 }, { 1, 2, 3 } }
};
var context = new SerializationTestContext();
var actual = context.SerializeAndDeserialize(graph);
Assert.IsNotNull(actual.Value);
Assert.AreEqual(6, actual.Value.Length);
Assert.AreEqual(2, actual.Value.GetLength(0));
Assert.AreEqual(3, actual.Value.GetLength(1));
for (var r0 = 0; r0 < graph.Value.GetLength(0); r0++) {
for (var r1 = 0; r1 < graph.Value.GetLength(1); r1++) {
var expectedValue = graph.Value[r0, r1];
var actualValue = actual.Value[r0, r1];
Assert.AreEqual(expectedValue, actualValue);
}
}
}
示例10: WriteJaggedArrayTest
public void WriteJaggedArrayTest()
{
var graph = new JaggedArrayGraph {
Value = new[] { new[] { 5, 2, 3 }, new[] { 1, 2, 3 } }
};
var context = new SerializationTestContext();
var actual = context.SerializeAndDeserialize(graph);
Assert.IsNotNull(actual.Value);
Assert.AreEqual(graph.Value.Length, actual.Value.Length);
for (var r0 = 0; r0 < graph.Value.Length; r0++) {
var expectedInner = graph.Value[r0];
var actualInner = graph.Value[r0];
Assert.AreEqual(expectedInner.Length, actualInner.Length);
for (var r1 = 0; r1 < expectedInner.Length; r1++) {
var expectedValue = expectedInner[r1];
var actualValue = actualInner[r1];
Assert.AreEqual(expectedValue, actualValue);
}
}
}
示例11: WriteComplexTest
public void WriteComplexTest()
{
var graph = new ComplexGraph {Value = new Relation {Id = Guid.NewGuid(), Name = "Test", Description = "Binary", Value = 1}};
var context = new SerializationTestContext();
var actual = context.SerializeAndDeserialize(graph);
Assert.IsNotNull(actual.Value);
Assert.AreEqual(graph.Value.Id, actual.Value.Id);
Assert.AreEqual(graph.Value.Name, actual.Value.Name);
Assert.AreEqual(graph.Value.Description, actual.Value.Description);
Assert.AreEqual(graph.Value.Value, actual.Value.Value);
}
示例12: WriteDictionaryWithComplexValueTest
public void WriteDictionaryWithComplexValueTest()
{
var graph = new DictionaryWithComplexValueGraph {
Value = new Dictionary<string, Category> {
{"A", new Category {
Name = "Warning",
Description = "Warning of something",
Image = new byte[] {1, 2, 3, 4, 5}
}}, {"B", new Category {
Name = "Error",
Description = "Error of something",
Image = new byte[] {1, 2, 3, 4, 5, 6, 7, 8, 9}
}}, {"C", new Category {Name = "Temporary"}}
}
};
var context = new SerializationTestContext();
var actual = context.SerializeAndDeserialize(graph);
Assert.IsNotNull(actual.Value);
Assert.AreEqual(3, actual.Value.Count);
foreach (var kv in graph.Value) {
var actualValue = actual.Value[kv.Key];
Assert.AreEqual(kv.Value, actualValue);
}
}
示例13: WriteDictionaryWithComplexKeyTest
public void WriteDictionaryWithComplexKeyTest()
{
var graph = new DictionaryWithComplexKeyGraph {
Value = new Dictionary<Identifier, string> {
{new Identifier {Id = 1, Type = ApplicationType.Api}, "A"},
{new Identifier {Id = 2, Type = ApplicationType.Api}, "B"},
{new Identifier {Id = 3, Type = ApplicationType.Service}, "C"}
}
};
var context = new SerializationTestContext();
var actual = context.SerializeAndDeserialize(graph);
Assert.IsNotNull(actual.Value);
Assert.AreEqual(3, actual.Value.Count);
foreach (var kv in graph.Value) {
var actualValue = actual.Value[kv.Key];
Assert.AreEqual(kv.Value, actualValue);
}
}
示例14: WriteDictionaryWithComplexKeyAndValueTest
public void WriteDictionaryWithComplexKeyAndValueTest()
{
var graph = new DictionaryWithComplexKeyAndValueGraph {
Value = new Dictionary<Identifier, Category> {
{new Identifier {Id = 1, Type = ApplicationType.Api}, new Category {Name = "Warning", Description = "Warning of something", Image = new byte[]{1, 2, 3, 4, 5}}},
{new Identifier {Id = 2, Type = ApplicationType.Api}, new Category {Name = "Error", Description = "Error of something", Image = new byte[]{1, 2, 3, 4, 5, 6, 7, 8, 9}}},
{new Identifier {Id = 3, Type = ApplicationType.Service}, new Category {Name = "Temporary"}}
}
};
var context = new SerializationTestContext();
var actual = context.SerializeAndDeserialize(graph);
Assert.IsNotNull(actual.Value);
Assert.AreEqual(3, actual.Value.Count);
foreach (var kv in graph.Value) {
var actualValue = actual.Value[kv.Key];
Assert.AreEqual(kv.Value, actualValue);
}
}
示例15: WriteDictionaryWithCollectionKeyTest
public void WriteDictionaryWithCollectionKeyTest()
{
var graph = new DictionaryWithCollectionKeyGraph {
Value = new Dictionary<List<int>, string> {
{new List<int> {42}, "Hello World"}
}
};
var context = new SerializationTestContext();
var actual = context.SerializeAndDeserialize(graph);
Assert.IsNotNull(actual.Value);
Assert.AreEqual(1, actual.Value.Count);
var firstExpected = graph.Value.First();
var firstActual = actual.Value.First();
Assert.AreEqual(1, firstActual.Key.Count);
var firstInnerExpectedKey = firstExpected.Key.First();
var firstInnerActualKey = firstActual.Key.First();
Assert.AreEqual(firstInnerExpectedKey, firstInnerActualKey);
Assert.AreEqual(firstExpected.Value, firstActual.Value);
}