public void sut_supports_deep_properties_of_records( Guid screeingId, Guid theaterId, DateTime screeningTime, decimal defaultFee) { var seed = new Screening( Id: screeingId, theaterId, Seats: ImmutableArray.Create( new SeatWithPositionalRecord(Row: 1, Column: 1, IsReserved: false), new SeatWithPositionalRecord(Row: 1, Column: 2, IsReserved: false)), screeningTime, defaultFee, ChildFare: defaultFee / 2); Screening actual = seed.Revise(x => x.Seats[1].IsReserved == true); actual.Seats[1].IsReserved.Should().BeTrue(); }