public static void Run() { PersonA personA = new PersonA("john doe"); PersonB personB = new PersonB("alice doe"); Client client = new Client(); client.Display(personA); // TO DO client afficher personB name sans modifier Client //personB. }
public void ByteArray_SerializePersonB() { AddressA addressA = new AddressA(@"CornerStreet", @"00501", @"New york"); PersonA partner = new PersonA(@"Kate", @"Moss", addressA); PersonA personB = new PersonB(@"Bob", @"Bones", addressA, partner); byte[] data = SerializationHelper.SerializeToBytes(personB); Assert.IsNotNull(data); Assert.IsTrue(data.Length > 0); PersonB deserializedPersonB = SerializationHelper.DeserializeFromBytes<PersonB>(data); Assert.AreEqual(personB, deserializedPersonB); }
public void XmlSerialization_SerializePersonB() { AddressA addressA = new AddressA(@"CornerStreet", @"00501", @"New york"); PersonA partner = new PersonA(@"Kate", @"Moss", addressA); PersonA personB = new PersonB(@"Bob", @"Bones", addressA, partner); string xmlData = SerializationHelper.SerializeToXmlString(personB); Assert.IsNotNull(xmlData); Assert.IsTrue(xmlData.Length > 0); PersonB deserializedPersonB = SerializationHelper.DeserializeFromXmlString<PersonB>(xmlData); Assert.AreEqual(personB, deserializedPersonB); }
public void XmlSerialization_SerializePersonBUsingAnInterface() { IAddress address = new AddressA(@"CornerStreet", @"00501", @"New york"); IPerson partner = new PersonA(@"Kate", @"Moss", address); IPerson person = new PersonB(@"Bob", @"Bones", address, partner); string xmlData = SerializationHelper.SerializeToXmlString(person); Assert.IsNotNull(xmlData); Assert.IsTrue(xmlData.Length > 0); IPerson deserializedPerson = SerializationHelper.DeserializeFromXmlString<IPerson>(xmlData); Assert.AreEqual(person, deserializedPerson); Assert.IsInstanceOf<PersonB>(person); }
public void ByteArray_SerializePersonBUsingAnInterface() { IAddress address = new AddressA(@"CornerStreet", @"00501", @"New york"); IPerson partner = new PersonA(@"Kate", @"Moss", address); IPerson person = new PersonB(@"Bob", @"Bones", address, partner); byte[] data = SerializationHelper.SerializeToBytes(person); Assert.IsNotNull(data); Assert.IsTrue(data.Length > 0); IPerson deserializedPerson = SerializationHelper.DeserializeFromBytes<IPerson>(data); Assert.AreEqual(person, deserializedPerson); Assert.IsInstanceOf<PersonA>(person); }
public void DynamicVisitorPatternTest() { IVisitable personA = new PersonA(); IVisitable personB = new PersonB(); IVisitor toStrVisitor = new ToStringVisitor(); IVisitor toElementVisitor = new ToElementPersonVisitor(); _testOutputHelper.WriteLine(personA.Accept(toElementVisitor)); _testOutputHelper.WriteLine(personA.Accept(toStrVisitor)); _testOutputHelper.WriteLine(personB.Accept(toElementVisitor)); _testOutputHelper.WriteLine(personB.Accept(toStrVisitor)); }
public void MapToDest_EntityValue_PropMapper3() { var r = new PersonB { AddressX = new AddressX { City = "123", Street = "456" } }; EntityMapper.Create <PersonA, PersonB>() .HasProperty(s => s.Address, d => d.AddressX, p => p.SetMapper(EntityMapper.Create <Address, AddressX>().HasProperty(sa => sa.Street, da => da.City))) .MapToDest(new PersonA(), r); Assert.IsNotNull(r); Assert.IsNull(r.AddressX); }
static void Main(string[] args) { var phones = new[] { "1234567" }; var person1 = new PersonB("Marek", "Szala", new string[0]); var person2 = new PersonB("Marek", "Szala", new string[0]); //person1.FirstName = "Andrzej"; var person3 = person1 with { FirstName = "Andrzej" }; var(name, lastName, p) = person1; Console.WriteLine(person1 == person2); } }
public void MapToDest_EntityValue_PropMapper2() { var r = new PersonB { AddressX = new AddressX { City = "123", Street = "456" } }; EntityMapper.Create <PersonA, PersonB>() .HasProperty(s => s.Address, d => d.AddressX, p => p.SetMapper(EntityMapper.Create <Address, AddressX>().HasProperty(sa => sa.Street, da => da.City))) .MapToDest(new PersonA { Address = new Address { Street = "AAA", City = "BBB" } }, r); Assert.IsNotNull(r); Assert.IsNotNull(r.AddressX); Assert.AreEqual("456", r.AddressX.Street); Assert.AreEqual("AAA", r.AddressX.City); }
public void DifferentTablesUseSamePkGenerator_InsertSingleItem() { using TestDatabase db = CreateTestDatabase(); IDbSet <PersonA> setA = db.Query <PersonA>().AsDbSet(); var personA1 = new PersonA { Name = "Alice A" }; var personA2 = new PersonA { Name = "Bob A" }; var personA3 = new PersonA { Name = "Connor A" }; IDbSet <PersonB> setB = db.Query <PersonB>().AsDbSet(); var personB1 = new PersonB { Name = "Alice B" }; var personB2 = new PersonB { Name = "Bob B" }; var personB3 = new PersonB { Name = "Connor B" }; InsertItems(setA, personA1); InsertItems(setB, personB1); InsertItems(setA, personA2); InsertItems(setB, personB2); InsertItems(setA, personA3); InsertItems(setB, personB3); personA1.IdA.Should().Be(1); personA2.IdA.Should().Be(3); personA3.IdA.Should().Be(5); personB1.Pk.Should().Be(2); personB2.Pk.Should().Be(4); personB3.Pk.Should().Be(6); }
// might not work with a value type! public PersonAddressBuilder(PersonB person) { this.person = person; }
public PersonJobBuilder(PersonB person) { this.person = person; }
public void DifferentTablesUseSamePkGenerator_InsertMultipleItems() { using TestDatabase db = CreateTestDatabase(); IDbSet <PersonA> setA = db.Query <PersonA>().AsDbSet(); var personA1 = new PersonA { Name = "Alice A" }; var personA2 = new PersonA { Name = "Bob A" }; var personA3 = new PersonA { Name = "Connor A" }; var personA4 = new PersonA { Name = "Drew A" }; var personA5 = new PersonA { Name = "Eve A" }; var personA6 = new PersonA { Name = "Fiona A" }; IDbSet <PersonB> setB = db.Query <PersonB>().AsDbSet(); var personB1 = new PersonB { Name = "Alice B" }; var personB2 = new PersonB { Name = "Bob B" }; var personB3 = new PersonB { Name = "Connor B" }; var personB4 = new PersonB { Name = "Drew B" }; var personB5 = new PersonB { Name = "Eve B" }; var personB6 = new PersonB { Name = "Fiona B" }; InsertItems(setA, new[] { personA1, personA2, personA3 }); InsertItems(setB, new[] { personB1, personB2, personB3 }); InsertItems(setA, new[] { personA4, personA5, personA6 }); InsertItems(setB, new[] { personB4, personB5, personB6 }); personA1.IdA.Should().Be(1); personA2.IdA.Should().Be(2); personA3.IdA.Should().Be(3); personA4.IdA.Should().Be(7); personA5.IdA.Should().Be(8); personA6.IdA.Should().Be(9); personB1.Pk.Should().Be(4); personB2.Pk.Should().Be(5); personB3.Pk.Should().Be(6); personB4.Pk.Should().Be(10); personB5.Pk.Should().Be(11); personB6.Pk.Should().Be(12); }
public string Visit(PersonB visitable) { return($"{nameof(ToElementPersonVisitor)} Visited {nameof(PersonB)}"); }
public void Stream_SerializePersonBUsingAnInterface() { IAddress address = new AddressA(@"CornerStreet", @"00501", @"New york"); IPerson partner = new PersonA(@"Kate", @"Moss", address); IPerson person = new PersonB(@"Bob", @"Bones", address, partner); using (Stream stream = new MemoryStream()) { SerializationHelper.Serialize(stream, person); Assert.IsTrue(stream.Length > 0); stream.Position = 0; IPerson deserializedPerson = SerializationHelper.Deserialize<IPerson>(stream); Assert.AreEqual(person, deserializedPerson); Assert.IsInstanceOf<PersonA>(person); } }
public void Stream_SerializePersonB() { AddressA addressA = new AddressA(@"CornerStreet", @"00501", @"New york"); PersonA partner = new PersonA(@"Kate", @"Moss", addressA); PersonA personB = new PersonB(@"Bob", @"Bones", addressA, partner); using (Stream stream = new MemoryStream()) { SerializationHelper.Serialize(stream, personB); Assert.IsTrue(stream.Length > 0); stream.Position = 0; PersonA deserializedPersonB = SerializationHelper.Deserialize<PersonA>(stream); Assert.AreEqual(personB, deserializedPersonB); } }