public void AddDataReturnVersion_WithDataReturnVersionForAnotherScheme_ThrowsInvalidOperationException() { // Arrange var scheme1 = A.Fake <Scheme>(); A.CallTo(() => scheme1.ApprovalNumber) .Returns("WEE/SC1000SCH"); var scheme2 = A.Fake <Scheme>(); A.CallTo(() => scheme2.ApprovalNumber) .Returns("WEE/SC2000SCH"); var eeeOutputReturnVersion = new EeeOutputReturnVersion(); var registeredProducer = new RegisteredProducer("PRN", 2016, scheme2); eeeOutputReturnVersion.AddEeeOutputAmount( new EeeOutputAmount(ObligationType.B2C, WeeeCategory.AutomaticDispensers, 100, registeredProducer)); var dataReturn = new DataReturn(scheme1, new Quarter(2016, QuarterType.Q2)); var dataReturnVersion = new DataReturnVersion(dataReturn); // Act, Assert Assert.Throws <InvalidOperationException>(() => eeeOutputReturnVersion.AddDataReturnVersion(dataReturnVersion)); }