Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.
defmodule ServerTest do
use ExUnit.Case
doctest Server
describe "semiprime" do
test "returns the factors when the number is semiprime" do
Cache.clear()
# Semiprimes below 30
[
{4, [2, 2]},
{6, [2, 3]},
{9, [3, 3]},
{10, [2, 5]},
{14, [2, 7]},
{15, [3, 5]},
{21, [3, 7]},
{22, [2, 11]},
{25, [5, 5]},
{26, [2, 13]}
]
|> Enum.each(fn {input, expected} ->
assert Server.semiprime(input) == {:miss, expected}
end)
end
test "returns nothing when the number is a composite number" do
# Composite numbers below 30
[1, 2, 3, 5, 7, 8, 11, 12, 13, 16, 17, 18, 19, 20, 23, 24, 27, 28, 29]
|> Enum.each(fn x ->
assert Server.semiprime(x) == nil