resistor_color_trio
This commit is contained in:
107
elixir/resistor-color-trio/test/resistor_color_trio_test.exs
Normal file
107
elixir/resistor-color-trio/test/resistor_color_trio_test.exs
Normal file
@@ -0,0 +1,107 @@
|
||||
defmodule ResistorColorTrioTest do
|
||||
use ExUnit.Case
|
||||
|
||||
test "Orange and orange and black" do
|
||||
colors = [:orange, :orange, :black]
|
||||
output = ResistorColorTrio.label(colors)
|
||||
expected = {33, :ohms}
|
||||
|
||||
assert output == expected
|
||||
end
|
||||
|
||||
test "Blue and grey and brown" do
|
||||
colors = [:blue, :grey, :brown]
|
||||
output = ResistorColorTrio.label(colors)
|
||||
expected = {680, :ohms}
|
||||
|
||||
assert output == expected
|
||||
end
|
||||
|
||||
test "Red and black and red" do
|
||||
colors = [:red, :black, :red]
|
||||
output = ResistorColorTrio.label(colors)
|
||||
expected = {2, :kiloohms}
|
||||
|
||||
assert output == expected
|
||||
end
|
||||
|
||||
test "Green and brown and orange" do
|
||||
colors = [:green, :brown, :orange]
|
||||
output = ResistorColorTrio.label(colors)
|
||||
expected = {51, :kiloohms}
|
||||
|
||||
assert output == expected
|
||||
end
|
||||
|
||||
test "Yellow and violet and yellow" do
|
||||
colors = [:yellow, :violet, :yellow]
|
||||
output = ResistorColorTrio.label(colors)
|
||||
expected = {470, :kiloohms}
|
||||
|
||||
assert output == expected
|
||||
end
|
||||
|
||||
test "Blue and violet and blue" do
|
||||
colors = [:blue, :violet, :blue]
|
||||
output = ResistorColorTrio.label(colors)
|
||||
expected = {67, :megaohms}
|
||||
|
||||
assert output == expected
|
||||
end
|
||||
|
||||
test "Minimum possible value" do
|
||||
colors = [:black, :black, :black]
|
||||
output = ResistorColorTrio.label(colors)
|
||||
expected = {0, :ohms}
|
||||
|
||||
assert output == expected
|
||||
end
|
||||
|
||||
test "Maximum possible value" do
|
||||
colors = [:white, :white, :white]
|
||||
output = ResistorColorTrio.label(colors)
|
||||
expected = {99, :gigaohms}
|
||||
|
||||
assert output == expected
|
||||
end
|
||||
|
||||
test "First two colors make an invalid octal number" do
|
||||
colors = [:black, :grey, :black]
|
||||
output = ResistorColorTrio.label(colors)
|
||||
expected = {8, :ohms}
|
||||
|
||||
assert output == expected
|
||||
end
|
||||
|
||||
test "Ignore extra colors" do
|
||||
colors = [:blue, :green, :yellow, :orange]
|
||||
output = ResistorColorTrio.label(colors)
|
||||
expected = {650, :kiloohms}
|
||||
|
||||
assert output == expected
|
||||
end
|
||||
|
||||
test "Kilo value" do
|
||||
colors = [:brown, :black, :red]
|
||||
output = ResistorColorTrio.label(colors)
|
||||
expected = {1, :kiloohms}
|
||||
|
||||
assert output == expected
|
||||
end
|
||||
|
||||
test "Mega value" do
|
||||
colors = [:brown, :black, :green]
|
||||
output = ResistorColorTrio.label(colors)
|
||||
expected = {1, :megaohms}
|
||||
|
||||
assert output == expected
|
||||
end
|
||||
|
||||
test "Giga value" do
|
||||
colors = [:brown, :black, :grey]
|
||||
output = ResistorColorTrio.label(colors)
|
||||
expected = {1, :gigaohms}
|
||||
|
||||
assert output == expected
|
||||
end
|
||||
end
|
||||
2
elixir/resistor-color-trio/test/test_helper.exs
Normal file
2
elixir/resistor-color-trio/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