Пример #1
0
        public void AddRoots(bool isRoot0, bool isRoot1, bool isRoot2, int expectedRootsCount)
        {
            var execMgr = new ExecMgr();
            var mockEl0 = new Mock<IElement>();
            var mockEl1 = new Mock<IElement>();
            var mockEl2 = new Mock<IElement>();
            var mockSettingsMgr0 = new Mock<IElementSettingsMgr>();
            var mockSettingsMgr1 = new Mock<IElementSettingsMgr>();
            var mockSettingsMgr2 = new Mock<IElementSettingsMgr>();

            PointF loc0 = new PointF(0f, 0f);
            PointF loc1 = new PointF(0f, 0f);
            PointF loc2 = new PointF(0f, 0f);

            IDictionary<Guid, IElement>  elements = new Dictionary<Guid, IElement>();

            elements.Add(Guid.NewGuid(), mockEl0.Object);
            elements.Add(Guid.NewGuid(), mockEl1.Object);
            elements.Add(Guid.NewGuid(), mockEl2.Object);

            Queue<IElement> qu = new Queue<IElement>();

            mockEl0.Setup(m => m.IsRoot).Returns(isRoot0);
            mockEl1.Setup(m => m.IsRoot).Returns(isRoot1);
            mockEl2.Setup(m => m.IsRoot).Returns(isRoot2);

            mockEl0.Setup(m => m.Settings).Returns(mockSettingsMgr0.Object);
            mockSettingsMgr0.Setup(m => m.Location).Returns(loc0);

            mockEl1.Setup(m => m.Settings).Returns(mockSettingsMgr1.Object);
            mockSettingsMgr1.Setup(m => m.Location).Returns(loc1);

            mockEl2.Setup(m => m.Settings).Returns(mockSettingsMgr2.Object);
            mockSettingsMgr2.Setup(m => m.Location).Returns(loc2);

            int results = execMgr.AddRoots(qu, elements);
            Assert.Equal(expectedRootsCount, results);
            Assert.Equal(expectedRootsCount, qu.Count);
        }