Exemplo n.º 1
0
        /// <summary>
        /// Creates a new instance of <see cref="SerializableLine"/>.
        /// </summary>
        /// <param name="geometry">The geometry of the line.</param>
        /// <exception cref="ArgumentNullException">Thrown when <paramref name="geometry"/>
        /// is <c>null</c>.</exception>
        /// <exception cref="ArgumentException">Thrown when <paramref name="geometry"/> contains no elements.</exception>
        public SerializableLine(IEnumerable <Point2D> geometry)
        {
            if (geometry == null)
            {
                throw new ArgumentNullException(nameof(geometry));
            }

            LineString = new SerializableLineString(geometry);
        }
        public void DefaultConstructor_ReturnsDefaultValues()
        {
            // Call
            var lineString = new SerializableLineString();

            // Assert
            Assert.AreEqual("EPSG:28992", lineString.CoordinateSystem);
            Assert.IsNull(lineString.Geometry);

            SerializableAttributeTestHelper.AssertXmlAttributeAttribute <SerializableLineString>(
                nameof(SerializableLineString.CoordinateSystem), "srsName");

            SerializableAttributeTestHelper.AssertXmlElementAttribute <SerializableLineString>(
                nameof(SerializableLineString.Geometry), "posList");
        }
        public void Constructor_WithValidData_ReturnsExpectedValues()
        {
            // Setup
            var random   = new Random(39);
            var geometry = new[]
            {
                new Point2D(random.NextDouble(), random.NextDouble()),
                new Point2D(random.NextDouble(), random.NextDouble())
            };

            // Call
            var lineString = new SerializableLineString(geometry);

            // Assert
            Assert.AreEqual("EPSG:28992", lineString.CoordinateSystem);
            Assert.AreEqual(GeometrySerializationFormatter.Format(geometry), lineString.Geometry);
        }