Пример #1
0
        public void InsertRoot(float y0, float y1, float y2, int expectedResult)
        {
            var execMgr = new ExecMgr();
            var mockEl0 = new Mock<IElement>();
            var mockEl1 = new Mock<IElement>();
            var mockEl2 = new Mock<IElement>();

            IList<IElement> roots = new List<IElement>();

            roots.Add(mockEl0.Object);
            roots.Add(mockEl1.Object);
            //roots.Add(el2);

            var mockSettingsMgr0 = new Mock<IElementSettingsMgr>();
            var mockSettingsMgr1 = new Mock<IElementSettingsMgr>();
            var mockSettingsMgr2 = new Mock<IElementSettingsMgr>();

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

            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 index = execMgr.InsertRoot(roots, mockEl2.Object);

            mockEl2.VerifyAll();
            mockSettingsMgr2.VerifyAll();
            Assert.Equal(expectedResult, index);
            IElement tmp = roots[index];
            Assert.NotNull(tmp);
            Assert.Same(mockEl2.Object, tmp);
        }