public void Constructor_WithData_ReturnExpectedValues()
        {
            // Setup
            const string someFilePath = "location/to/a/file";
            var          collection   = new StructureCollection <StructureBase>();

            collection.AddRange(Enumerable.Empty <StructureBase>(), someFilePath);

            // Call
            var properties = new StructureCollectionProperties <StructureBase>(collection);

            // Assert
            Assert.IsInstanceOf <ObjectProperties <StructureCollection <StructureBase> > >(properties);
            Assert.AreSame(collection, properties.Data);
            Assert.AreEqual(someFilePath, properties.SourcePath);
        }
        public void Constructor_WithData_PropertiesHaveExpectedAttributesValues()
        {
            // Setup
            var collection = new StructureCollection <StructureBase>();

            // Call
            var properties = new StructureCollectionProperties <StructureBase>(collection);

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

            Assert.AreEqual(1, dynamicProperties.Count);

            PropertyDescriptor structureCollectionSourcePathProperty = dynamicProperties[0];

            Assert.IsNotNull(structureCollectionSourcePathProperty);
            Assert.IsTrue(structureCollectionSourcePathProperty.IsReadOnly);
            Assert.AreEqual("Algemeen", structureCollectionSourcePathProperty.Category);
            Assert.AreEqual("Bronlocatie", structureCollectionSourcePathProperty.DisplayName);
            Assert.AreEqual("De locatie van het bestand waaruit de kunstwerken zijn geïmporteerd.",
                            structureCollectionSourcePathProperty.Description);
        }