public void SetDelimiter_InvalidCustomDelimiter_DoesNotSetCustomDelimiter() { var ser = new TupleSerializer <Tuple <string, string, string> >() .SetDelimiter(string.Empty); Assert.Equal("-", ser._delimiter); }
public void constructor_with_serializers_should_initialize_instance() { var item1Serializer = Substitute.For <IBsonSerializer <bool> >(); var item2Serializer = Substitute.For <IBsonSerializer <int> >(); var item3Serializer = Substitute.For <IBsonSerializer <bool> >(); var item4Serializer = Substitute.For <IBsonSerializer <int> >(); var item5Serializer = Substitute.For <IBsonSerializer <bool> >(); var item6Serializer = Substitute.For <IBsonSerializer <int> >(); var item7Serializer = Substitute.For <IBsonSerializer <bool> >(); var restSerializer = Substitute.For <IBsonSerializer <Tuple <int> > >(); var subject = new TupleSerializer <bool, int, bool, int, bool, int, bool, Tuple <int> >( item1Serializer, item2Serializer, item3Serializer, item4Serializer, item5Serializer, item6Serializer, item7Serializer, restSerializer); Assert.That(subject.Item1Serializer, Is.SameAs(item1Serializer)); Assert.That(subject.Item2Serializer, Is.SameAs(item2Serializer)); Assert.That(subject.Item3Serializer, Is.SameAs(item3Serializer)); Assert.That(subject.Item4Serializer, Is.SameAs(item4Serializer)); Assert.That(subject.Item5Serializer, Is.SameAs(item5Serializer)); Assert.That(subject.Item6Serializer, Is.SameAs(item6Serializer)); Assert.That(subject.Item7Serializer, Is.SameAs(item7Serializer)); Assert.That(subject.RestSerializer, Is.SameAs(restSerializer)); }
public void constructor_with_serializers_should_initialize_instance() { var mockItem1Serializer = new Mock <IBsonSerializer <bool> >(); var mockItem2Serializer = new Mock <IBsonSerializer <int> >(); var mockItem3Serializer = new Mock <IBsonSerializer <bool> >(); var mockItem4Serializer = new Mock <IBsonSerializer <int> >(); var mockItem5Serializer = new Mock <IBsonSerializer <bool> >(); var mockItem6Serializer = new Mock <IBsonSerializer <int> >(); var mockItem7Serializer = new Mock <IBsonSerializer <bool> >(); var mockRestSerializer = new Mock <IBsonSerializer <Tuple <int> > >(); var subject = new TupleSerializer <bool, int, bool, int, bool, int, bool, Tuple <int> >( mockItem1Serializer.Object, mockItem2Serializer.Object, mockItem3Serializer.Object, mockItem4Serializer.Object, mockItem5Serializer.Object, mockItem6Serializer.Object, mockItem7Serializer.Object, mockRestSerializer.Object); Assert.Same(mockItem1Serializer.Object, subject.Item1Serializer); Assert.Same(mockItem2Serializer.Object, subject.Item2Serializer); Assert.Same(mockItem3Serializer.Object, subject.Item3Serializer); Assert.Same(mockItem4Serializer.Object, subject.Item4Serializer); Assert.Same(mockItem5Serializer.Object, subject.Item5Serializer); Assert.Same(mockItem6Serializer.Object, subject.Item6Serializer); Assert.Same(mockItem7Serializer.Object, subject.Item7Serializer); Assert.Same(mockRestSerializer.Object, subject.RestSerializer); }
public void SetDelimiter_ValidCustomDelimiter_SetsCustomDelimiter() { var ser = new TupleSerializer <Tuple <string, string, string> >() .SetDelimiter(":"); Assert.Equal(":", ser._delimiter); }
public void constructor_with_no_arguments_should_initialize_instance() { var boolSerializer = BsonSerializer.LookupSerializer <bool>(); var subject = new TupleSerializer <bool>(); Assert.Same(boolSerializer, subject.Item1Serializer); }
public void GetStringValue_Triad_ReturnsSerializedStringUsingDefaultDelimiter() { var ser = new TupleSerializer<Tuple<string, string, string>>(); var str = ser.GetStringValue(new Tuple<string, string, string>("EUR", "EUR", "EUR")); Assert.Equal("EUR-EUR-EUR", str); }
public void GetTupleFrom_StringRepresentingTriad_ReturnsDeserializedTriad() { var ser = new TupleSerializer<Tuple<string, string, string>>(); var tuple = ser.GetTupleFrom("EUR-EUR-EUR"); Assert.Equal(new Tuple<string, string, string>("EUR", "EUR", "EUR"), tuple); }
public void GetTupleFrom_StringRepresentingPair_DeserializesToInheritedObject() { var ser = new TupleSerializer<ObjectThatInheritsFromTuple>(); var tuple = ser.GetTupleFrom("EUR-EUR"); Assert.Equal(new ObjectThatInheritsFromTuple("EUR", "EUR"), tuple); }
public void constructor_with_no_arguments_should_initialize_instance() { var boolSerializer = BsonSerializer.LookupSerializer<bool>(); var subject = new TupleSerializer<bool>(); Assert.That(subject.Item1Serializer, Is.SameAs(boolSerializer)); }
public void GetTupleFrom_StringRepresentingPair_DeserializesToInheritedObject() { var ser = new TupleSerializer <ObjectThatInheritsFromTuple>(); var tuple = ser.GetTupleFrom("EUR-EUR"); Assert.Equal(new ObjectThatInheritsFromTuple("EUR", "EUR"), tuple); }
public void GetTupleFrom_StringRepresentingTriad_ReturnsDeserializedTriad() { var ser = new TupleSerializer <Tuple <string, string, string> >(); var tuple = ser.GetTupleFrom("EUR-EUR-EUR"); Assert.Equal(new Tuple <string, string, string>("EUR", "EUR", "EUR"), tuple); }
public void GetStringValue_Triad_ReturnsSerializedStringUsingDefaultDelimiter() { var ser = new TupleSerializer <Tuple <string, string, string> >(); var str = ser.GetStringValue(new Tuple <string, string, string>("EUR", "EUR", "EUR")); Assert.Equal("EUR-EUR-EUR", str); }
public void constructor_with_serializers_should_initialize_instance() { var item1Serializer = Substitute.For <IBsonSerializer <bool> >(); var subject = new TupleSerializer <bool>( item1Serializer); Assert.That(subject.Item1Serializer, Is.SameAs(item1Serializer)); }
public void constructor_with_serializers_should_initialize_instance() { var mockItem1Serializer = new Mock<IBsonSerializer<bool>>(); var subject = new TupleSerializer<bool>( mockItem1Serializer.Object); Assert.Same(mockItem1Serializer.Object, subject.Item1Serializer); }
public void GetTupleFrom_StringRepresentingTriadWithCustomDelimiter_ReturnsDeserializedTriad() { var ser = new TupleSerializer <Tuple <string, string, string> >() .SetDelimiter(":"); var tuple = ser.GetTupleFrom("EUR:EUR:EUR"); Assert.Equal(new Tuple <string, string, string>("EUR", "EUR", "EUR"), tuple); }
public void GetStringValue_TriadWithCustomDelimiter_ReturnsSerializedStringUsingCustomDelimiter() { var ser = new TupleSerializer <Tuple <string, string, string> >() .SetDelimiter(":"); var str = ser.GetStringValue(new Tuple <string, string, string>("EUR", "EUR", "EUR")); Assert.Equal("EUR:EUR:EUR", str); }
public void constructor_with_serializers_should_initialize_instance() { var mockItem1Serializer = new Mock <IBsonSerializer <bool> >(); var subject = new TupleSerializer <bool>( mockItem1Serializer.Object); Assert.Same(mockItem1Serializer.Object, subject.Item1Serializer); }
public void constructor_with_serializers_should_initialize_instance() { var item1Serializer = Substitute.For<IBsonSerializer<bool>>(); var subject = new TupleSerializer<bool>( item1Serializer); Assert.That(subject.Item1Serializer, Is.SameAs(item1Serializer)); }
public void GetStringValue_TriadWithCustomDelimiter_ReturnsSerializedStringUsingCustomDelimiter() { var ser = new TupleSerializer<Tuple<string, string, string>>() .SetDelimiter(":"); var str = ser.GetStringValue(new Tuple<string, string, string>("EUR", "EUR", "EUR")); Assert.Equal("EUR:EUR:EUR", str); }
public void GetTupleFrom_StringRepresentingTriadWithCustomDelimiter_ReturnsDeserializedTriad() { var ser = new TupleSerializer<Tuple<string, string, string>>() .SetDelimiter(":"); var tuple = ser.GetTupleFrom("EUR:EUR:EUR"); Assert.Equal(new Tuple<string, string, string>("EUR", "EUR", "EUR"), tuple); }
public void Constructor_CacheInjection_SetsInternalCacheReferences() { var serCache = new ConcurrentDictionaryCache <Tuple <string>, string>(); var deSerCache = new ConcurrentDictionaryCache <string, Tuple <string> >(); var ser = new TupleSerializer <Tuple <string> >(serCache, deSerCache); Assert.Equal(ser._serializationCache, serCache); Assert.Equal(ser._deserializationCache, deSerCache); }
public void constructor_with_no_arguments_should_initialize_instance() { var boolSerializer = BsonSerializer.LookupSerializer <bool>(); var intSerializer = BsonSerializer.LookupSerializer <int>(); var subject = new TupleSerializer <bool, int>(); Assert.That(subject.Item1Serializer, Is.SameAs(boolSerializer)); Assert.That(subject.Item2Serializer, Is.SameAs(intSerializer)); }
static void Main(string[] args) { var x = Tuple.Create(Guid.NewGuid(), new[] { 1, 2, 3, 4, 5, 6 }); var serializer = TupleSerializer <Tuple <Guid, int[]> > .Create(); var sb = new StringBuilder(); using (var writer = XmlWriter.Create(sb)) { serializer.WriteObject(writer, x); writer.Flush(); Console.WriteLine(sb.ToString()); } }
public void constructor_with_no_arguments_should_initialize_instance() { var boolSerializer = BsonSerializer.LookupSerializer <bool>(); var intSerializer = BsonSerializer.LookupSerializer <int>(); var restSerializer = BsonSerializer.LookupSerializer <Tuple <int> >(); var subject = new TupleSerializer <bool, int, bool, int, bool, int, bool, Tuple <int> >(); Assert.Same(boolSerializer, subject.Item1Serializer); Assert.Same(intSerializer, subject.Item2Serializer); Assert.Same(boolSerializer, subject.Item3Serializer); Assert.Same(intSerializer, subject.Item4Serializer); Assert.Same(boolSerializer, subject.Item5Serializer); Assert.Same(intSerializer, subject.Item6Serializer); Assert.Same(boolSerializer, subject.Item7Serializer); Assert.Same(restSerializer, subject.RestSerializer); }
public void constructor_with_serializers_should_initialize_instance() { var item1Serializer = Substitute.For<IBsonSerializer<bool>>(); var item2Serializer = Substitute.For<IBsonSerializer<int>>(); var item3Serializer = Substitute.For<IBsonSerializer<bool>>(); var item4Serializer = Substitute.For<IBsonSerializer<int>>(); var item5Serializer = Substitute.For<IBsonSerializer<bool>>(); var item6Serializer = Substitute.For<IBsonSerializer<int>>(); var item7Serializer = Substitute.For<IBsonSerializer<bool>>(); var restSerializer = Substitute.For<IBsonSerializer<Tuple<int>>>(); var subject = new TupleSerializer<bool, int, bool, int, bool, int, bool, Tuple<int>>( item1Serializer, item2Serializer, item3Serializer, item4Serializer, item5Serializer, item6Serializer, item7Serializer, restSerializer); Assert.That(subject.Item1Serializer, Is.SameAs(item1Serializer)); Assert.That(subject.Item2Serializer, Is.SameAs(item2Serializer)); Assert.That(subject.Item3Serializer, Is.SameAs(item3Serializer)); Assert.That(subject.Item4Serializer, Is.SameAs(item4Serializer)); Assert.That(subject.Item5Serializer, Is.SameAs(item5Serializer)); Assert.That(subject.Item6Serializer, Is.SameAs(item6Serializer)); Assert.That(subject.Item7Serializer, Is.SameAs(item7Serializer)); Assert.That(subject.RestSerializer, Is.SameAs(restSerializer)); }
public void constructor_with_no_arguments_should_initialize_instance() { var boolSerializer = BsonSerializer.LookupSerializer<bool>(); var intSerializer = BsonSerializer.LookupSerializer<int>(); var restSerializer = BsonSerializer.LookupSerializer<Tuple<int>>(); var subject = new TupleSerializer<bool, int, bool, int, bool, int, bool, Tuple<int>>(); Assert.That(subject.Item1Serializer, Is.SameAs(boolSerializer)); Assert.That(subject.Item2Serializer, Is.SameAs(intSerializer)); Assert.That(subject.Item3Serializer, Is.SameAs(boolSerializer)); Assert.That(subject.Item4Serializer, Is.SameAs(intSerializer)); Assert.That(subject.Item5Serializer, Is.SameAs(boolSerializer)); Assert.That(subject.Item6Serializer, Is.SameAs(intSerializer)); Assert.That(subject.Item7Serializer, Is.SameAs(boolSerializer)); Assert.That(subject.RestSerializer, Is.SameAs(restSerializer)); }
public void GetTupleFrom_TuplePairSerializerGetsTupleTriad_ThrowsException() { var ser = new TupleSerializer <Tuple <string, string> >(); Assert.Throws <InvalidOperationException>(() => ser.GetTupleFrom("EUR-EUR-EUR")); }
public void Constructor_CacheInjection_SetsInternalCacheReferences() { var serCache = new ConcurrentDictionaryCache<Tuple<string>, string>(); var deSerCache = new ConcurrentDictionaryCache<string, Tuple<string>>(); var ser = new TupleSerializer<Tuple<string>>(serCache, deSerCache); Assert.Equal(ser._serializationCache, serCache); Assert.Equal(ser._deserializationCache, deSerCache); }
public void GetTupleFrom_TuplePairSerializerGetsTupleTriad_ThrowsException() { var ser = new TupleSerializer<Tuple<string, string>>(); Assert.Throws<InvalidOperationException>(() => ser.GetTupleFrom("EUR-EUR-EUR")); }
public void constructor_with_no_arguments_should_initialize_instance() { var boolSerializer = BsonSerializer.LookupSerializer<bool>(); var intSerializer = BsonSerializer.LookupSerializer<int>(); var subject = new TupleSerializer<bool, int, bool, int, bool, int>(); Assert.Same(boolSerializer, subject.Item1Serializer); Assert.Same(intSerializer, subject.Item2Serializer); Assert.Same(boolSerializer, subject.Item3Serializer); Assert.Same(intSerializer, subject.Item4Serializer); Assert.Same(boolSerializer, subject.Item5Serializer); Assert.Same(intSerializer, subject.Item6Serializer); }
public void SetDelimiter_InvalidCustomDelimiter_DoesNotSetCustomDelimiter() { var ser = new TupleSerializer<Tuple<string, string, string>>() .SetDelimiter(string.Empty); Assert.Equal("-", ser._delimiter); }
public void SetDelimiter_ValidCustomDelimiter_SetsCustomDelimiter() { var ser = new TupleSerializer<Tuple<string, string, string>>() .SetDelimiter(":"); Assert.Equal(":", ser._delimiter); }
public void constructor_with_serializers_should_initialize_instance() { var mockItem1Serializer = new Mock<IBsonSerializer<bool>>(); var mockItem2Serializer = new Mock<IBsonSerializer<int>>(); var mockItem3Serializer = new Mock<IBsonSerializer<bool>>(); var mockItem4Serializer = new Mock<IBsonSerializer<int>>(); var mockItem5Serializer = new Mock<IBsonSerializer<bool>>(); var mockItem6Serializer = new Mock<IBsonSerializer<int>>(); var mockItem7Serializer = new Mock<IBsonSerializer<bool>>(); var mockRestSerializer = new Mock<IBsonSerializer<Tuple<int>>>(); var subject = new TupleSerializer<bool, int, bool, int, bool, int, bool, Tuple<int>>( mockItem1Serializer.Object, mockItem2Serializer.Object, mockItem3Serializer.Object, mockItem4Serializer.Object, mockItem5Serializer.Object, mockItem6Serializer.Object, mockItem7Serializer.Object, mockRestSerializer.Object); Assert.Same(mockItem1Serializer.Object, subject.Item1Serializer); Assert.Same(mockItem2Serializer.Object, subject.Item2Serializer); Assert.Same(mockItem3Serializer.Object, subject.Item3Serializer); Assert.Same(mockItem4Serializer.Object, subject.Item4Serializer); Assert.Same(mockItem5Serializer.Object, subject.Item5Serializer); Assert.Same(mockItem6Serializer.Object, subject.Item6Serializer); Assert.Same(mockItem7Serializer.Object, subject.Item7Serializer); Assert.Same(mockRestSerializer.Object, subject.RestSerializer); }