aboutsummaryrefslogtreecommitdiff
path: root/Tests/swift-lichessTests/swift_lichessTests.swift
blob: cf125aa2fdc395313af4436e4189cb47934da962 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import XCTest

@testable import LichessClient

final class swift_lichessTests: XCTestCase {

  func testTablebaseLookup() async throws {
    let client = LichessClient()

    let tablebaseLookup = try await client.getStandardTablebase(
      fen: "4k3/6KP/8/8/8/8/7p/8_w_-_-_0_1")
    guard let dtm = tablebaseLookup.dtm else {
      XCTAssert(false == true)
      return
    }
    XCTAssert(dtm == 17)

    var found = false
    guard let moves = tablebaseLookup.moves else {
      XCTAssert(true == false)
      return
    }
    for move in moves {
      guard let uci = move.uci else {
        XCTAssert(false == true)
        return
      }
      if uci == "h7h8q" {
        found = true
        break
      }
    }
    XCTAssert(found == true)
  }
}