public void WithFieldTest() { var record = new Record(); record["ID"] = 123; var updatedRecord = record.WithField("Field", "Value"); var expectedRecord = new Record(); expectedRecord["ID"] = 123; expectedRecord["Field"] = "Value"; CollectionAssert.AreEquivalent(expectedRecord, updatedRecord); Assert.AreSame(record, updatedRecord); }