Index: Core/Common/src/Core.Common.Controls/Core.Common.Controls.csproj =================================================================== diff -u -r658bc34e6a72d83b209bf9bdf45d1001ca135e51 -r33bb120fbaf0452934a7762b24d675201325e774 --- Core/Common/src/Core.Common.Controls/Core.Common.Controls.csproj (.../Core.Common.Controls.csproj) (revision 658bc34e6a72d83b209bf9bdf45d1001ca135e51) +++ Core/Common/src/Core.Common.Controls/Core.Common.Controls.csproj (.../Core.Common.Controls.csproj) (revision 33bb120fbaf0452934a7762b24d675201325e774) @@ -111,6 +111,7 @@ Component + UserControl Index: Core/Common/src/Core.Common.Controls/PresentationObjects/ObservableWrappedObjectContextBase.cs =================================================================== diff -u -r658bc34e6a72d83b209bf9bdf45d1001ca135e51 -r33bb120fbaf0452934a7762b24d675201325e774 --- Core/Common/src/Core.Common.Controls/PresentationObjects/ObservableWrappedObjectContextBase.cs (.../ObservableWrappedObjectContextBase.cs) (revision 658bc34e6a72d83b209bf9bdf45d1001ca135e51) +++ Core/Common/src/Core.Common.Controls/PresentationObjects/ObservableWrappedObjectContextBase.cs (.../ObservableWrappedObjectContextBase.cs) (revision 33bb120fbaf0452934a7762b24d675201325e774) @@ -20,73 +20,25 @@ // All rights reserved. using System; - using Core.Common.Base; namespace Core.Common.Controls.PresentationObjects { /// - /// This abstract class provides common boilerplate implementations for presentation - /// objects based on a single object that needs additional dependencies or behavior - /// for the UI layer of the application. + /// This abstract class provides common boilerplate implementations for observable + /// presentation objects based on a single observable object that needs additional + /// dependencies or behavior for the UI layer of the application. /// - /// The object type of the wrapped instance. - public abstract class ObservableWrappedObjectContextBase : IObservable, IEquatable> where T : IObservable + /// The observable object type of the wrapped instance. + public abstract class ObservableWrappedObjectContextBase : WrappedObjectContextBase, IObservable where T : IObservable { /// /// Initializes a new instance of the class. /// /// The wrapped data. /// When is null. - protected ObservableWrappedObjectContextBase(T wrappedData) - { - if (wrappedData == null) - { - throw new ArgumentNullException("wrappedData", "Wrapped data of context cannot be null."); - } - WrappedData = wrappedData; - } + protected ObservableWrappedObjectContextBase(T wrappedData) : base(wrappedData) {} - /// - /// Gets the data wrapped in this presentation object. - /// - public T WrappedData { get; private set; } - - #region Equality members - - public bool Equals(ObservableWrappedObjectContextBase other) - { - if (ReferenceEquals(null, other)) - { - return false; - } - if (ReferenceEquals(this, other)) - { - return true; - } - return WrappedData.Equals(other.WrappedData); - } - - public override bool Equals(object obj) - { - if (ReferenceEquals(null, obj)) - { - return false; - } - if (ReferenceEquals(this, obj)) - { - return true; - } - return Equals(obj as ObservableWrappedObjectContextBase); - } - - public override int GetHashCode() - { - return WrappedData.GetHashCode(); - } - - #endregion - #region IObservable implementation public void Attach(IObserver observer) Fisheye: Tag 658bc34e6a72d83b209bf9bdf45d1001ca135e51 refers to a dead (removed) revision in file `Core/Common/src/Core.Common.Controls/PresentationObjects/WrappedObjectContextBase.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Core/Common/test/Core.Common.Controls.Test/Core.Common.Controls.Test.csproj =================================================================== diff -u -r658bc34e6a72d83b209bf9bdf45d1001ca135e51 -r33bb120fbaf0452934a7762b24d675201325e774 --- Core/Common/test/Core.Common.Controls.Test/Core.Common.Controls.Test.csproj (.../Core.Common.Controls.Test.csproj) (revision 658bc34e6a72d83b209bf9bdf45d1001ca135e51) +++ Core/Common/test/Core.Common.Controls.Test/Core.Common.Controls.Test.csproj (.../Core.Common.Controls.Test.csproj) (revision 33bb120fbaf0452934a7762b24d675201325e774) @@ -60,6 +60,7 @@ + True Index: Core/Common/test/Core.Common.Controls.Test/PresentationObjects/ObservableWrappedObjectContextBaseTest.cs =================================================================== diff -u -r658bc34e6a72d83b209bf9bdf45d1001ca135e51 -r33bb120fbaf0452934a7762b24d675201325e774 --- Core/Common/test/Core.Common.Controls.Test/PresentationObjects/ObservableWrappedObjectContextBaseTest.cs (.../ObservableWrappedObjectContextBaseTest.cs) (revision 658bc34e6a72d83b209bf9bdf45d1001ca135e51) +++ Core/Common/test/Core.Common.Controls.Test/PresentationObjects/ObservableWrappedObjectContextBaseTest.cs (.../ObservableWrappedObjectContextBaseTest.cs) (revision 33bb120fbaf0452934a7762b24d675201325e774) @@ -20,13 +20,9 @@ // All rights reserved. using System; - using Core.Common.Base; using Core.Common.Controls.PresentationObjects; -using Core.Common.TestUtil; - using NUnit.Framework; - using Rhino.Mocks; namespace Core.Common.Controls.Test.PresentationObjects @@ -47,152 +43,13 @@ // Assert Assert.IsInstanceOf(context); - Assert.IsInstanceOf>>(context); + Assert.IsInstanceOf>(context); Assert.AreSame(sourceObject, context.WrappedData); mocks.VerifyAll(); } [Test] - public void Constructor_InputArgumentIsNull_ThrowArgumentNullException() - { - // Call - TestDelegate call = () => new SimpleObservableWrappedObjectContext(null); - - // Assert - const string expectedMessage = "Wrapped data of context cannot be null."; - TestHelper.AssertThrowsArgumentExceptionAndTestMessage(call, expectedMessage); - } - - [Test] - public void Equals_ToNull_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var sourceObject = mocks.Stub(); - mocks.ReplayAll(); - - var context = new SimpleObservableWrappedObjectContext(sourceObject); - - // Call - var isEqual = context.Equals(null); - - // Assert - Assert.IsFalse(isEqual); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherValueType_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var sourceObject = mocks.Stub(); - mocks.ReplayAll(); - - var context1 = new SimpleObservableWrappedObjectContext(sourceObject); - var context2 = new SimpleObservableWrappedObjectContext>(new ObservableList()); - - // Call - var isEqual1 = context1.Equals(context2); - var isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsFalse(isEqual1); - Assert.IsFalse(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherValueOfSameType_ReturnFalse() - { - // Setup - var sourceObj1 = new object(); - var sourceObj2 = new object(); - var sourceObject1 = new SimpleObservable(sourceObj1); - var sourceObject2 = new SimpleObservable(sourceObj2); - - // Precondition: - Assert.IsFalse(sourceObject1.Equals(sourceObject2)); - - var context1 = new SimpleObservableWrappedObjectContext(sourceObject1); - object context2 = new SimpleObservableWrappedObjectContext(sourceObject2); - - // Call - var isEqual1 = context1.Equals(context2); - var isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsFalse(isEqual1); - Assert.IsFalse(isEqual2); - } - - [Test] - public void Equals_ToItself_ReturnTrue() - { - // Setup - var mocks = new MockRepository(); - var sourceObject = mocks.Stub(); - mocks.ReplayAll(); - - var context = new SimpleObservableWrappedObjectContext(sourceObject); - - // Call - var isEqual = context.Equals(context); - - // Assert - Assert.IsTrue(isEqual); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherEqualInstance_ReturnTrue() - { - // Setup - var mocks = new MockRepository(); - var sourceObject = mocks.Stub(); - mocks.ReplayAll(); - - var context1 = new SimpleObservableWrappedObjectContext(sourceObject); - object context2 = new SimpleObservableWrappedObjectContext(sourceObject); - - // Call - var isEqual1 = context1.Equals(context2); - var isEqual2 = context1.Equals(context2); - - // Assert - Assert.IsTrue(isEqual1); - Assert.IsTrue(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void GetHashCode_EqualObjects_ReturnSameHashCode() - { - // Setup - var sourceObject = new object(); - var sourceObject1 = new SimpleObservable(sourceObject); - var sourceObject2 = new SimpleObservable(sourceObject); - - var context1 = new SimpleObservableWrappedObjectContext(sourceObject1); - object context2 = new SimpleObservableWrappedObjectContext(sourceObject2); - - // Precondition: - Assert.AreEqual(context1, context2); - - // Call - var hashCode1 = context1.GetHashCode(); - var hashCode2 = context2.GetHashCode(); - - // Assert - Assert.AreEqual(hashCode1, hashCode2); - } - - [Test] public void NotifyObservers_ObserverAttached_ObserverIsNotified() { // Setup @@ -248,9 +105,9 @@ var equalitySource = new object(); var sourceObject = new SimpleObservable(equalitySource); sourceObject.Attach(observer); - + var context = new SimpleObservableWrappedObjectContext(sourceObject); - + // Call context.NotifyObservers(); @@ -288,25 +145,26 @@ private class SimpleObservable : Observable, IEquatable { private readonly object source; + public SimpleObservable(object equalitySource) { source = equalitySource; } - public bool Equals(SimpleObservable other) - { - return source.Equals(other.source); - } - public override bool Equals(object obj) { - return Equals((SimpleObservable)obj); + return Equals((SimpleObservable) obj); } public override int GetHashCode() { return source.GetHashCode(); } + + public bool Equals(SimpleObservable other) + { + return source.Equals(other.source); + } } } } \ No newline at end of file Fisheye: Tag 658bc34e6a72d83b209bf9bdf45d1001ca135e51 refers to a dead (removed) revision in file `Core/Common/test/Core.Common.Controls.Test/PresentationObjects/WrappedObjectContextBaseTest.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Ringtoets/Common/test/Ringtoets.Common.Forms.Test/PresentationObjects/FailureMechanismContributionContextTest.cs =================================================================== diff -u -r658bc34e6a72d83b209bf9bdf45d1001ca135e51 -r33bb120fbaf0452934a7762b24d675201325e774 --- Ringtoets/Common/test/Ringtoets.Common.Forms.Test/PresentationObjects/FailureMechanismContributionContextTest.cs (.../FailureMechanismContributionContextTest.cs) (revision 658bc34e6a72d83b209bf9bdf45d1001ca135e51) +++ Ringtoets/Common/test/Ringtoets.Common.Forms.Test/PresentationObjects/FailureMechanismContributionContextTest.cs (.../FailureMechanismContributionContextTest.cs) (revision 33bb120fbaf0452934a7762b24d675201325e774) @@ -51,7 +51,7 @@ var context = new FailureMechanismContributionContext(contribution, assessmentSection); // Assert - Assert.IsInstanceOf>>(context); + Assert.IsInstanceOf>(context); Assert.IsInstanceOf(context); Assert.AreSame(contribution, context.WrappedData); Assert.AreSame(assessmentSection, context.Parent);