public static void WithOnlyChangesTheSpecifiedFields() { var original = new AccountState(Currency: "EUR"); var activated = original.Activate(); Assert.AreEqual(AccountStatus.Requested, original.Status); Assert.AreEqual(AccountStatus.Active, activated.Status); Assert.AreEqual(original.Currency, activated.Currency); }