Ejemplo n.º 1
0
        public void AddFeatureListTest()
        {
            var point1   = new Point(new GeographicPosition(30.0, 110.0));
            var point2   = new Point(new GeographicPosition(30.0, 120.0));
            var expected = new List <Feature>()
            {
                new Feature(point1),
                new Feature(point2)
            };

            var url     = String.Join("/", new string[] { urlPrefix1, layer1, "data" });
            var handler = new MockHttpHandler(url, "POST", (req, res, param) =>
            {
                var result = new RestResult();

                var form = req.GetFormData();
                if (form.ContainsKey("data"))
                {
                    var data = form["data"];
                    try
                    {
                        var actual = JsonConvert.DeserializeObject <List <Feature> >(data);
                        if (expected.SequenceEqual(actual))
                        {
                            result.Success = true;
                        }
                    }
                    catch
                    {
                    }
                }

                return(JsonConvert.SerializeObject(result));
            });

            mockServer.AddRequestHandler(handler);

            try
            {
                var db    = new MapDB(db1);
                var layer = new FeatureLayer(layer1, db);
                layer.Add(expected);
            }
            catch (Exception ex)
            {
                Assert.Fail(ex.Message);
            }
        }