Пример #1
0
        public void SignalCollisionIfTouchingBottom(int padding, bool expected)
        {
            var shape       = new TetriminoJ();
            var bottomStack = new BottomStack();

            Call.Action(Game.Height - padding, shape.MoveDown);
            bottomStack.WillCollideBottom(shape).Should().Be(expected);
        }
Пример #2
0
        public void SignalCollisionIfTouchingOtherBlock(int padding, bool expected)
        {
            var bottomStack = new BottomStack();
            var shape1      = new TetriminoJ();
            var shape2      = new TetriminoL();

            shape1.Turn();


            Call.Action(Game.Height, shape1.MoveDown);
            bottomStack.Add(shape1);

            Call.Action(Game.Height - padding, shape2.MoveDown);
            bottomStack.WillCollideBottom(shape2).Should().Be(expected);
        }
Пример #3
0
 public static void PushBottom(this BottomStack stack, Tetrimino shape)
 {
     Call.ActionUntil(() => !stack.WillCollideBottom(shape), shape.MoveDown);
     stack.Add(shape);
 }