Start implementing the crafty AI

pull/1/merge
Thibault Duplessis 2012-03-05 00:02:10 +01:00
parent 158082cb27
commit 2db97641b4
5 changed files with 39 additions and 5 deletions

View File

@ -0,0 +1,16 @@
package lila.system
package ai
import lila.chess.{ Game, Move }
import model.DbGame
final class CraftyAi(
execPath: String = "crafty",
bookPath: Option[String] = None
) extends Ai {
def apply(dbGame: DbGame): Valid[(Game, Move)] = {
failure("Not implemented" wrapNel)
}
}

View File

@ -2,8 +2,7 @@ package lila.system
package ai
import lila.chess.{ Game, Move }
import model._
import scala.util.Random
import model.DbGame
final class StupidAi extends Ai {

View File

@ -5,11 +5,12 @@ import model._
import ai._
import scalaz.Success
class StupidAiTest extends SystemTest {
trait AiTest extends SystemTest {
val ai = new StupidAi
def ai: Ai
def name: String
"the stupid AI" should {
"the %s AI" format name should {
"play the first move" in {
val dbGame = newDbGame
ai(dbGame) must beSuccess.like {

View File

@ -0,0 +1,9 @@
package lila.system
import ai._
class CraftyAiTest extends AiTest {
def ai = new CraftyAi
def name = "crafty"
}

View File

@ -0,0 +1,9 @@
package lila.system
import ai._
class StupidAiTest extends AiTest {
def ai = new StupidAi
def name = "stupid"
}