learning F#, it seems pretty cool, favourite functional language so far.
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

QueenAttackTests.fs 1.7KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. // This file was auto-generated based on version 2.3.0 of the canonical data.
  2. module QueenAttackTests
  3. open FsUnit.Xunit
  4. open Xunit
  5. open QueenAttack
  6. [<Fact>]
  7. let ``Queen with a valid position`` () =
  8. create (2, 2) |> should equal true
  9. [<Fact>]
  10. let ``Queen must have positive row`` () =
  11. create (-2, 2) |> should equal false
  12. [<Fact>]
  13. let ``Queen must have row on board`` () =
  14. create (8, 4) |> should equal false
  15. [<Fact>]
  16. let ``Queen must have positive column`` () =
  17. create (2, -2) |> should equal false
  18. [<Fact>]
  19. let ``Queen must have column on board`` () =
  20. create (4, 8) |> should equal false
  21. [<Fact>]
  22. let ``Can not attack`` () =
  23. let whiteQueen = (2, 4)
  24. let blackQueen = (6, 6)
  25. canAttack blackQueen whiteQueen |> should equal false
  26. [<Fact>]
  27. let ``Can attack on same row`` () =
  28. let whiteQueen = (2, 4)
  29. let blackQueen = (2, 6)
  30. canAttack blackQueen whiteQueen |> should equal true
  31. [<Fact>]
  32. let ``Can attack on same column`` () =
  33. let whiteQueen = (4, 5)
  34. let blackQueen = (2, 5)
  35. canAttack blackQueen whiteQueen |> should equal true
  36. [<Fact>]
  37. let ``Can attack on first diagonal`` () =
  38. let whiteQueen = (2, 2)
  39. let blackQueen = (0, 4)
  40. canAttack blackQueen whiteQueen |> should equal true
  41. [<Fact>]
  42. let ``Can attack on second diagonal`` () =
  43. let whiteQueen = (2, 2)
  44. let blackQueen = (3, 1)
  45. canAttack blackQueen whiteQueen |> should equal true
  46. [<Fact>]
  47. let ``Can attack on third diagonal`` () =
  48. let whiteQueen = (2, 2)
  49. let blackQueen = (1, 1)
  50. canAttack blackQueen whiteQueen |> should equal true
  51. [<Fact>]
  52. let ``Can attack on fourth diagonal`` () =
  53. let whiteQueen = (1, 7)
  54. let blackQueen = (0, 6)
  55. canAttack blackQueen whiteQueen |> should equal true