You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

49 lines
1.6 KiB

//
// File.swift
//
//
// Created by Louis DUFOUR on 31/01/2024.
//
import XCTest
@testable import Model
class PlayerTests: XCTestCase {
var rules: VerySimpleRules!
var board: Board!
override func setUp() {
super.setUp()
rules = VerySimpleRules()
board = VerySimpleRules.createBoard()
}
override func tearDown() {
rules = nil
board = nil
super.tearDown()
}
func testRandomPlayerChooseMove() {
// Assurez-vous que l'initialisation de RandomPlayer correspond à votre implémentation
let randomPlayer = RandomPlayer(withName: "Random Player", andId: .player1)
XCTAssertNotNil(randomPlayer, "RandomPlayer n'a pas été correctement initialisé")
// Testez chooseMove avec le board et les règles réels
let move = randomPlayer?.chooseMove(board: board, rules: rules)
XCTAssertNotNil(move, "RandomPlayer n'a pas choisi de mouvement")
}
func testHumanPlayerChooseMove() {
// Assurez-vous que l'initialisation de HumanPlayer correspond à votre implémentation
let inputMethod: ([Move]) -> Move? = { moves in moves.first }
let humanPlayer = HumanPlayer(name: "Human Player", id: .player1, inputMethod: inputMethod)
XCTAssertNotNil(humanPlayer, "HumanPlayer n'a pas été correctement initialisé")
// Testez chooseMove avec le board et les règles réels
let move = humanPlayer?.chooseMove(board: board, rules: rules)
XCTAssertNotNil(move, "HumanPlayer n'a pas choisi de mouvement")
}
}