public TestsForPosition() { _panel = A.Dummy <Panel>(); var rectangle = new Rectangle(10, 20, 30, 40); var rotation = new Rotation(154); _parent = new PanelRectangle(_panel, rectangle, rotation); }
public void ShouldApplyTheVariousContributorsToAPanelRectangleInTheCorrectOrder() { var hingeToAttachTo = new Position().WithX(10).WithY(20); A.CallTo(() => _attachToHingeDeterminer.Determine(_parent, _panel)).Returns(hingeToAttachTo); var rectangle = new Rectangle(0, 1, 2, 3); A.CallTo(() => _rectangleFactory.Create(hingeToAttachTo, _panel.Dimensions)).Returns(rectangle); A.CallTo(() => _rotationDeterminer.Determine(_parent, _panel)).Returns(Rotation.Right); var rotatedRectangle = new Rectangle(1, 2, 3, 4); A.CallTo(() => _rectangleRotator.Rotate(hingeToAttachTo, rectangle, Rotation.Right)).Returns(rotatedRectangle); var rotatedRectangleWithHingeOffset = new Rectangle(2, 3, 4, 5); A.CallTo(() => _hingeOffsetApplier.Apply(rotatedRectangle, Rotation.Right, _panel.HingeOffset)) .Returns(rotatedRectangleWithHingeOffset); var actualPanelRectangle = _sut.Position(_parent, _panel); var expectedPanelRectangle = new PanelRectangle(_panel, rotatedRectangleWithHingeOffset, Rotation.Right); actualPanelRectangle.ShouldBeEquivalentTo(expectedPanelRectangle); }
public Determine() { _panel = new Panel(); _parent = new PanelRectangle(_panel, new Rectangle(0, 0, 100, 100), Rotation.None); }