1
0
mirror of https://github.com/danbee/chess synced 2025-03-04 08:39:06 +00:00

Re-organise pieces

This commit is contained in:
Daniel Barber 2018-03-18 10:31:34 -04:00
parent 18aa9faab4
commit 6c944243fb
Signed by: danbarber
GPG Key ID: 931D8112E0103DD8
14 changed files with 31 additions and 31 deletions

View File

@ -1,12 +1,12 @@
defmodule Chess.Moves do
@moduledoc false
alias Chess.Moves.Pawn
alias Chess.Moves.Bishop
alias Chess.Moves.Knight
alias Chess.Moves.Rook
alias Chess.Moves.Queen
alias Chess.Moves.King
alias Chess.Moves.Pieces.Pawn
alias Chess.Moves.Pieces.Bishop
alias Chess.Moves.Pieces.Knight
alias Chess.Moves.Pieces.Rook
alias Chess.Moves.Pieces.Queen
alias Chess.Moves.Pieces.King
def available(board, {file, rank}) do
piece = board["#{file},#{rank}"]

View File

@ -2,7 +2,7 @@ defmodule Chess.Moves.Piece do
@moduledoc false
alias Chess.Moves.Generator
alias Chess.Moves.Knight
alias Chess.Moves.Pieces.Knight
def attacked?(board, {file, rank}) do
attacked_by_rook_or_queen?(board, {file, rank}) ||

View File

@ -1,4 +1,4 @@
defmodule Chess.Moves.Bishop do
defmodule Chess.Moves.Pieces.Bishop do
@moduledoc false
alias Chess.Moves.Generator

View File

@ -1,4 +1,4 @@
defmodule Chess.Moves.King do
defmodule Chess.Moves.Pieces.King do
@moduledoc false
alias Chess.Moves.Generator

View File

@ -1,4 +1,4 @@
defmodule Chess.Moves.Knight do
defmodule Chess.Moves.Pieces.Knight do
@moduledoc false
alias Chess.Moves.Generator

View File

@ -1,4 +1,4 @@
defmodule Chess.Moves.Pawn do
defmodule Chess.Moves.Pieces.Pawn do
@moduledoc false
def moves(board, {file, rank}) do

View File

@ -1,8 +1,8 @@
defmodule Chess.Moves.Queen do
defmodule Chess.Moves.Pieces.Queen do
@moduledoc false
alias Chess.Moves.Rook
alias Chess.Moves.Bishop
alias Chess.Moves.Pieces.Rook
alias Chess.Moves.Pieces.Bishop
def moves(board, {file, rank}) do
Rook.moves(board, {file, rank}) ++

View File

@ -1,4 +1,4 @@
defmodule Chess.Moves.Rook do
defmodule Chess.Moves.Pieces.Rook do
@moduledoc false
alias Chess.Moves.Generator

View File

@ -1,4 +1,4 @@
defmodule Chess.Moves.BishopTest do
defmodule Chess.Moves.Pieces.BishopTest do
use Chess.DataCase
alias Chess.Moves

View File

@ -1,4 +1,4 @@
defmodule Chess.Moves.KingTest do
defmodule Chess.Moves.Pieces.KingTest do
use Chess.DataCase
alias Chess.Moves

View File

@ -1,4 +1,4 @@
defmodule Chess.Moves.KnightTest do
defmodule Chess.Moves.Pieces.KnightTest do
use Chess.DataCase
alias Chess.Moves

View File

@ -1,17 +1,17 @@
defmodule Chess.Moves.PawnTest do
defmodule Chess.Moves.Pieces.PawnTest do
use Chess.DataCase
alias Chess.Moves.Pawn
alias Chess.Moves
test "white pawn can move forward one or two spaces" do
moves = Pawn.moves(default_board(), {4, 1})
moves = Moves.available(default_board(), {4, 1})
expected_moves = [{4, 2}, {4, 3}]
assert moves == expected_moves
end
test "black pawn can move forward one or two spaces" do
moves = Pawn.moves(default_board(), {4, 6})
moves = Moves.available(default_board(), {4, 6})
expected_moves = [{4, 5}, {4, 4}]
assert moves == expected_moves
@ -19,7 +19,7 @@ defmodule Chess.Moves.PawnTest do
test "white pawn not on starting square can move forward one space" do
board = %{"4,2" => %{"type" => "pawn", "colour" => "white"}}
moves = Pawn.moves(board, {4, 2})
moves = Moves.available(board, {4, 2})
expected_moves = [{4, 3}]
assert moves == expected_moves
@ -27,7 +27,7 @@ defmodule Chess.Moves.PawnTest do
test "black pawn not on starting square can move forward one space" do
board = %{"4,5" => %{"type" => "pawn", "colour" => "black"}}
moves = Pawn.moves(board, {4, 5})
moves = Moves.available(board, {4, 5})
expected_moves = [{4, 4}]
assert moves == expected_moves
@ -38,7 +38,7 @@ defmodule Chess.Moves.PawnTest do
"4,1" => %{"type" => "pawn", "colour" => "white"},
"4,3" => %{"type" => "pawn", "colour" => "black"},
}
moves = Pawn.moves(board, {4, 1})
moves = Moves.available(board, {4, 1})
expected_moves = [{4, 2}]
assert moves == expected_moves
@ -49,7 +49,7 @@ defmodule Chess.Moves.PawnTest do
"4,1" => %{"type" => "pawn", "colour" => "white"},
"4,2" => %{"type" => "pawn", "colour" => "black"},
}
moves = Pawn.moves(board, {4, 1})
moves = Moves.available(board, {4, 1})
expected_moves = []
assert moves == expected_moves
@ -60,7 +60,7 @@ defmodule Chess.Moves.PawnTest do
"4,2" => %{"type" => "pawn", "colour" => "white"},
"4,3" => %{"type" => "pawn", "colour" => "black"},
}
moves = Pawn.moves(board, {4, 2})
moves = Moves.available(board, {4, 2})
expected_moves = []
assert moves == expected_moves
@ -71,7 +71,7 @@ defmodule Chess.Moves.PawnTest do
"4,2" => %{"type" => "pawn", "colour" => "white"},
"5,3" => %{"type" => "pawn", "colour" => "black"},
}
moves = Pawn.moves(board, {4, 2})
moves = Moves.available(board, {4, 2})
expected_moves = [{4, 3}, {5, 3}]
assert moves == expected_moves
@ -82,7 +82,7 @@ defmodule Chess.Moves.PawnTest do
"6,6" => %{"type" => "pawn", "colour" => "black"},
"5,5" => %{"type" => "pawn", "colour" => "white"},
}
moves = Pawn.moves(board, {6, 6})
moves = Moves.available(board, {6, 6})
expected_moves = [{6, 5}, {6, 4}, {5, 5}]
assert moves == expected_moves

View File

@ -1,4 +1,4 @@
defmodule Chess.Moves.QueenTest do
defmodule Chess.Moves.Pieces.QueenTest do
use Chess.DataCase
alias Chess.Moves

View File

@ -1,4 +1,4 @@
defmodule Chess.Moves.RookTest do
defmodule Chess.Moves.Pieces.RookTest do
use Chess.DataCase
alias Chess.Moves