public void WithExpressionMutatesSelectedProperties() { var person = new PersonRecordImmutable { FirstName = "Damir", LastName = "Arh", }; var newPerson = person with { FirstName = "Damjan" }; Assert.That(person.FirstName, Is.Not.EqualTo(newPerson.FirstName)); Assert.That(person.LastName, Is.EqualTo(newPerson.LastName)); } }
public void RecordsUseValueEquality() { var person1 = new PersonRecordImmutable { FirstName = "Damir", LastName = "Arh", }; var person2 = new PersonRecordImmutable { FirstName = "Damir", LastName = "Arh", }; Assert.That(person1, Is.EqualTo(person2)); }
public void RuntimeTypeEquality() { PersonRecordImmutable person = new PersonRecordImmutable { FirstName = "Damir", LastName = "Arh", }; PersonRecordImmutable student = new StudentRecordImmutable { FirstName = "Damir", LastName = "Arh", }; Assert.That(person, Is.Not.EqualTo(student)); }