Beispiel #1
0
        /// <summary>
        /// Creates the <see cref="PropertyInfo"/> objects.
        /// </summary>
        /// <returns>The created <see cref="PropertyInfo"/> objects.</returns>
        public static IEnumerable <PropertyInfo> Create()
        {
            yield return(new PropertyInfo <MapDataCollectionContext, MapDataCollectionProperties>
            {
                CreateInstance = context => new MapDataCollectionProperties(
                    (MapDataCollection)context.WrappedData)
            });

            yield return(new PropertyInfo <MapPointDataContext, MapPointDataProperties>
            {
                CreateInstance = context => new MapPointDataProperties(
                    (MapPointData)context.WrappedData,
                    MapDataContextHelper.GetParentsFromContext(context))
            });

            yield return(new PropertyInfo <MapLineDataContext, MapLineDataProperties>
            {
                CreateInstance = context => new MapLineDataProperties(
                    (MapLineData)context.WrappedData,
                    MapDataContextHelper.GetParentsFromContext(context))
            });

            yield return(new PropertyInfo <MapPolygonDataContext, MapPolygonDataProperties>
            {
                CreateInstance = context => new MapPolygonDataProperties(
                    (MapPolygonData)context.WrappedData,
                    MapDataContextHelper.GetParentsFromContext(context))
            });
        }
Beispiel #2
0
        public void GetParentsFromContext_ContextNull_ThrowsArgumentNullException()
        {
            // Call
            TestDelegate call = () => MapDataContextHelper.GetParentsFromContext(null);

            // Assert
            var exception = Assert.Throws <ArgumentNullException>(call);

            Assert.AreEqual("context", exception.ParamName);
        }
Beispiel #3
0
        public void GetParentsFromContext_ContextParentMapDataNull_ReturnsEmptyCollection()
        {
            // Setup
            var context = new MapDataCollectionContext(new MapDataCollection("test"), null);

            // Call
            IEnumerable <MapDataCollection> parents = MapDataContextHelper.GetParentsFromContext(context);

            // Assert
            CollectionAssert.IsEmpty(parents);
        }
Beispiel #4
0
        public void GetParentsFromContext_ContextWithParents_ReturnsCollectionWithAllParents()
        {
            // Setup
            var rootContext    = new MapDataCollectionContext(new MapDataCollection("root"), null);
            var nestedContext1 = new MapDataCollectionContext(new MapDataCollection("nested1"), rootContext);
            var nestedContext2 = new MapDataCollectionContext(new MapDataCollection("test"), nestedContext1);

            // Call
            IEnumerable <MapDataCollection> parents = MapDataContextHelper.GetParentsFromContext(nestedContext2);

            // Assert
            CollectionAssert.AreEqual(new[]
            {
                nestedContext1.WrappedData,
                rootContext.WrappedData
            }, parents);
        }