1--TEST--
2Games_Chess->_convertSquareToSAN() invalid king castling moves
3--SKIPIF--
4--FILE--
5<?php
6require_once dirname(__FILE__) . '/setup.php.inc';
7$board->blankBoard();
8$board->_WCastleK = false;
9$board->addPiece('W', 'K', 'e1');
10$board->addPiece('W', 'R', 'h1');
11$err = $board->_convertSquareToSAN('e1', 'g1');
12$phpunit->assertErrors(array(
13    array('package' => 'PEAR_Error', 'message' => 'The piece on e1 cannot move to g1')),
14'O-O invalid');
15
16$board->blankBoard();
17$board->_WCastleQ = false;
18$board->addPiece('W', 'K', 'e1');
19$board->addPiece('W', 'R', 'a1');
20$err = $board->_convertSquareToSAN('e1', 'c1');
21$phpunit->assertErrors(array(
22    array('package' => 'PEAR_Error', 'message' => 'The piece on e1 cannot move to c1')),
23'O-O-O invalid');
24
25$board->blankBoard();
26$board->_WCastleK = true;
27$board->addPiece('W', 'K', 'e2');
28$board->addPiece('W', 'R', 'h1');
29$err = $board->_convertSquareToSAN('e2', 'g1');
30$phpunit->assertErrors(array(
31    array('package' => 'PEAR_Error', 'message' => 'The piece on e2 cannot move to g1')),
32'O-O invalid 2');
33
34$board->blankBoard();
35$board->_WCastleQ = true;
36$board->addPiece('W', 'K', 'e2');
37$board->addPiece('W', 'R', 'a1');
38$err = $board->_convertSquareToSAN('e2', 'c1');
39$phpunit->assertErrors(array(
40    array('package' => 'PEAR_Error', 'message' => 'The piece on e2 cannot move to c1')),
41'O-O-O invalid');
42
43$board->blankBoard();
44$board->_BCastleK = false;
45$board->_move = 'B';
46$board->addPiece('B', 'K', 'e8');
47$board->addPiece('B', 'R', 'h8');
48$err = $board->_convertSquareToSAN('e8', 'g8');
49$phpunit->assertErrors(array(
50    array('package' => 'PEAR_Error', 'message' => 'The piece on e8 cannot move to g8')),
51'B O-O invalid');
52
53$board->blankBoard();
54$board->_BCastleQ = false;
55$board->_move = 'B';
56$board->addPiece('B', 'K', 'e8');
57$board->addPiece('B', 'R', 'a8');
58$err = $board->_convertSquareToSAN('e8', 'c8');
59$phpunit->assertErrors(array(
60    array('package' => 'PEAR_Error', 'message' => 'The piece on e8 cannot move to c8')),
61'B O-O-O invalid');
62
63$board->blankBoard();
64$board->_BCastleK = true;
65$board->_move = 'B';
66$board->addPiece('B', 'K', 'e7');
67$board->addPiece('B', 'R', 'h8');
68$err = $board->_convertSquareToSAN('e7', 'g8');
69$phpunit->assertErrors(array(
70    array('package' => 'PEAR_Error', 'message' => 'The piece on e7 cannot move to g8')),
71'B O-O invalid 2');
72
73$board->blankBoard();
74$board->_BCastleQ = true;
75$board->_move = 'B';
76$board->addPiece('B', 'K', 'e7');
77$board->addPiece('B', 'R', 'a8');
78$err = $board->_convertSquareToSAN('e7', 'c8');
79$phpunit->assertErrors(array(
80    array('package' => 'PEAR_Error', 'message' => 'The piece on e7 cannot move to c8')),
81'B O-O-O invalid 2');
82
83echo 'tests done';
84?>
85--EXPECT--
86tests done