public void Constructor_ValidData_PropertiesHaveExpectedAttributeValues()
        {
            // Setup
            var mocks             = new MockRepository();
            var assessmentSection = mocks.Stub <IAssessmentSection>();

            mocks.ReplayAll();

            // Call
            var properties = new AssessmentSectionProperties(assessmentSection);

            // Assert
            PropertyDescriptorCollection dynamicProperties = PropertiesTestHelper.GetAllVisiblePropertyDescriptors(properties);

            Assert.AreEqual(2, dynamicProperties.Count);

            const string generalCategoryName = "Algemeen";

            PropertyDescriptor idProperty = dynamicProperties[0];

            PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(idProperty,
                                                                            generalCategoryName,
                                                                            "ID",
                                                                            "ID van het traject.",
                                                                            true);

            PropertyDescriptor nameProperty = dynamicProperties[1];

            PropertiesTestHelper.AssertRequiredPropertyDescriptorProperties(nameProperty,
                                                                            generalCategoryName,
                                                                            "Naam",
                                                                            "Naam van het traject.");
            mocks.VerifyAll();
        }
        public void GivenAssessmentSectionProperties_WhenChangingName_ThenUpdatesDataAndNotifiesObservers()
        {
            // Given
            const string newName = "Test";

            var mocks             = new MockRepository();
            var assessmentSection = mocks.Stub <IAssessmentSection>();

            assessmentSection.Expect(section => section.NotifyObservers());
            mocks.ReplayAll();

            var properties = new AssessmentSectionProperties(assessmentSection);

            // When
            properties.Name = newName;

            // Then
            Assert.AreEqual(newName, assessmentSection.Name);
            mocks.VerifyAll();
        }
        public void Constructor_ExpectedValues()
        {
            // Setup
            var mocks             = new MockRepository();
            var assessmentSection = mocks.Stub <IAssessmentSection>();

            assessmentSection.Stub(section => section.Id).Return("1");
            assessmentSection.Stub(section => section.Composition).Return(AssessmentSectionComposition.Dike);
            mocks.ReplayAll();

            assessmentSection.Name = "test";

            // Call
            var properties = new AssessmentSectionProperties(assessmentSection);

            // Assert
            Assert.IsInstanceOf <ObjectProperties <IAssessmentSection> >(properties);
            Assert.AreSame(assessmentSection, properties.Data);
            Assert.AreEqual(assessmentSection.Id, properties.Id);
            Assert.AreEqual(assessmentSection.Name, properties.Name);
            mocks.VerifyAll();
        }