Пример #1
0
        public void AddToGraphTest()
        {
            hotel.Areas.Add(new Room()
            {
                AreaType       = "Room",
                Classification = "1 Vis",
                Position       = new Vector2(1, 1),
            });
            hotel.Areas.Add(new Room()
            {
                ID             = 5,
                AreaType       = "Room",
                Classification = "1 Vis",
                Position       = new Vector2(1, 2),
            });
            hotel.Areas.Add(new Room()
            {
                AreaType       = "Room",
                Classification = "1 Vis",
                Position       = new Vector2(1, 3),
            });
            hotel.Areas.Add(new Room()
            {
                AreaType       = "Room",
                Classification = "2 Vis",
                Position       = new Vector2(1, 4),
            });
            hotel.Areas.Add(new Stairs()
            {
                AreaType  = "Stairs",
                Position  = new Vector2(2, 1),
                Dimension = new Vector2(1, 4),
            });
            hotel.Areas.Add(new Elevator()
            {
                AreaType  = "Elevator",
                Position  = new Vector2(0, 1),
                Dimension = new Vector2(1, 4),
            });
            List <Node> nodes = new List <Node>();
            var         prop  = simplePath.GetType().GetField("_allNodesCopy", BindingFlags.NonPublic | BindingFlags.Instance);

            prop.SetValue(simplePath, nodes);
            hotel.AddToGraph(simplePath);

            Assert.AreEqual(2, nodes.Find(pos => pos.Value == new Vector2(1, 2)).Edges.Count);
        }