Add several elixir solutions
This commit is contained in:
61
elixir/grains/test/grains_test.exs
Normal file
61
elixir/grains/test/grains_test.exs
Normal file
@@ -0,0 +1,61 @@
|
||||
defmodule GrainsTest do
|
||||
use ExUnit.Case
|
||||
|
||||
# @tag :pending
|
||||
test "square 1" do
|
||||
assert Grains.square(1) === {:ok, 1}
|
||||
end
|
||||
|
||||
@tag :pending
|
||||
test "square 2" do
|
||||
assert Grains.square(2) === {:ok, 2}
|
||||
end
|
||||
|
||||
@tag :pending
|
||||
test "square 3" do
|
||||
assert Grains.square(3) === {:ok, 4}
|
||||
end
|
||||
|
||||
@tag :pending
|
||||
test "square 4" do
|
||||
assert Grains.square(4) === {:ok, 8}
|
||||
end
|
||||
|
||||
@tag :pending
|
||||
test "square 16" do
|
||||
assert Grains.square(16) === {:ok, 32768}
|
||||
end
|
||||
|
||||
@tag :pending
|
||||
test "square 32" do
|
||||
assert Grains.square(32) === {:ok, 2_147_483_648}
|
||||
end
|
||||
|
||||
@tag :pending
|
||||
test "square 64" do
|
||||
assert Grains.square(64) === {:ok, 9_223_372_036_854_775_808}
|
||||
end
|
||||
|
||||
@tag :pending
|
||||
test "total grains" do
|
||||
assert Grains.total() === {:ok, 18_446_744_073_709_551_615}
|
||||
end
|
||||
|
||||
@tag :pending
|
||||
test "square greater than 64 returns an error" do
|
||||
assert Grains.square(65) ===
|
||||
{:error, "The requested square must be between 1 and 64 (inclusive)"}
|
||||
end
|
||||
|
||||
@tag :pending
|
||||
test "negative square returns an error" do
|
||||
assert Grains.square(-1) ===
|
||||
{:error, "The requested square must be between 1 and 64 (inclusive)"}
|
||||
end
|
||||
|
||||
@tag :pending
|
||||
test "square 0 returns an error" do
|
||||
assert Grains.square(0) ===
|
||||
{:error, "The requested square must be between 1 and 64 (inclusive)"}
|
||||
end
|
||||
end
|
2
elixir/grains/test/test_helper.exs
Normal file
2
elixir/grains/test/test_helper.exs
Normal file
@@ -0,0 +1,2 @@
|
||||
ExUnit.start()
|
||||
ExUnit.configure(exclude: :pending, trace: true)
|
Reference in New Issue
Block a user