public void TestWayNodeRelation() { Way test_way = OsmBaseFactory.CreateWay(-1); Node node1 = OsmBaseFactory.CreateNode(-1); test_way.Nodes.Add(node1); Node node2 = OsmBaseFactory.CreateNode(-2); test_way.Nodes.Add(node2); MemoryDataSource source = new MemoryDataSource(); source.AddWay(test_way); // test if node1 is present. Assert.AreEqual(node1, source.GetNode(-1)); Assert.AreEqual(node2, source.GetNode(-2)); Assert.AreEqual(test_way, source.GetWay(-1)); // test if the way is present in the node's way list. IList<Way> ways = source.GetWaysFor(node1); Assert.IsNotNull(ways); Assert.IsTrue(ways.Contains(test_way)); ways = source.GetWaysFor(node2); Assert.IsTrue(ways.Contains(test_way)); }
public void TestAddWay() { Way test_way = OsmBaseFactory.CreateWay(-1); MemoryDataSource source = new MemoryDataSource(); source.AddWay(test_way); // test if the way is actually there. Assert.AreEqual(test_way, source.GetWay(-1)); // test if the way was not remove after getting it. Assert.AreEqual(test_way, source.GetWay(-1)); // test if the way will be retrieved using a list of ids. List<long> ids = new List<long>(); ids.Add(-1); IList<Way> ways = source.GetWays(ids); Assert.IsNotNull(ways); Assert.AreEqual(1, ways.Count); Assert.AreEqual(test_way, ways[0]); }
public void TestRemoveWay() { Way test_way = OsmBaseFactory.CreateWay(-1); MemoryDataSource source = new MemoryDataSource(); source.AddWay(test_way); // test if the way is actually there. Assert.AreEqual(test_way, source.GetWay(-1)); // remove the way. source.RemoveWay(-1); // test if the way is actually gone. Assert.IsNull(source.GetWay(-1)); }