learning F#, it seems pretty cool, favourite functional language so far.
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.

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. // This file was auto-generated based on version 1.2.0 of the canonical data.
  2. module GrainsTests
  3. open FsUnit.Xunit
  4. open Xunit
  5. open Grains
  6. [<Fact>]
  7. let ``1`` () =
  8. let expected: Result<uint64,string> = Ok 1UL
  9. square 1 |> should equal expected
  10. [<Fact>]
  11. let ``2`` () =
  12. let expected: Result<uint64,string> = Ok 2UL
  13. square 2 |> should equal expected
  14. [<Fact>]
  15. let ``3`` () =
  16. let expected: Result<uint64,string> = Ok 4UL
  17. square 3 |> should equal expected
  18. [<Fact>]
  19. let ``4`` () =
  20. let expected: Result<uint64,string> = Ok 8UL
  21. square 4 |> should equal expected
  22. [<Fact>]
  23. let ``16`` () =
  24. let expected: Result<uint64,string> = Ok 32768UL
  25. square 16 |> should equal expected
  26. [<Fact>]
  27. let ``32`` () =
  28. let expected: Result<uint64,string> = Ok 2147483648UL
  29. square 32 |> should equal expected
  30. [<Fact>]
  31. let ``64`` () =
  32. let expected: Result<uint64,string> = Ok 9223372036854775808UL
  33. square 64 |> should equal expected
  34. [<Fact>]
  35. let ``Square 0 raises an exception`` () =
  36. let expected: Result<uint64,string> = Error "square must be between 1 and 64"
  37. square 0 |> should equal expected
  38. [<Fact>]
  39. let ``Negative square raises an exception`` () =
  40. let expected: Result<uint64,string> = Error "square must be between 1 and 64"
  41. square -1 |> should equal expected
  42. [<Fact>]
  43. let ``Square greater than 64 raises an exception`` () =
  44. let expected: Result<uint64,string> = Error "square must be between 1 and 64"
  45. square 65 |> should equal expected
  46. [<Fact>]
  47. let ``Returns the total number of grains on the board`` () =
  48. let expected: Result<uint64,string> = Ok 18446744073709551615UL
  49. total |> should equal expected