diff --git a/elixir/.gitignore b/elixir/.gitignore deleted file mode 100644 index 69fa449d..00000000 --- a/elixir/.gitignore +++ /dev/null @@ -1 +0,0 @@ -_build/ diff --git a/elixir/config/config.exs b/elixir/config/config.exs deleted file mode 100644 index d2d855e6..00000000 --- a/elixir/config/config.exs +++ /dev/null @@ -1 +0,0 @@ -use Mix.Config diff --git a/elixir/lib/gilded_rose.ex b/elixir/lib/gilded_rose.ex deleted file mode 100644 index 7edd8c83..00000000 --- a/elixir/lib/gilded_rose.ex +++ /dev/null @@ -1,83 +0,0 @@ -defmodule GildedRose do - # Example - # update_quality([%Item{name: "Backstage passes to a TAFKAL80ETC concert", sell_in: 9, quality: 1}]) - # => [%Item{name: "Backstage passes to a TAFKAL80ETC concert", sell_in: 8, quality: 3}] - - def update_quality(items) do - Enum.map(items, &update_item/1) - end - - def update_item(item) do - item = cond do - item.name != "Aged Brie" && item.name != "Backstage passes to a TAFKAL80ETC concert" -> - if item.quality > 0 do - if item.name != "Sulfuras, Hand of Ragnaros" do - %{item | quality: item.quality - 1} - else - item - end - else - item - end - true -> - cond do - item.quality < 50 -> - item = %{item | quality: item.quality + 1} - cond do - item.name == "Backstage passes to a TAFKAL80ETC concert" -> - item = cond do - item.sell_in < 11 -> - cond do - item.quality < 50 -> - %{item | quality: item.quality + 1} - true -> item - end - true -> item - end - cond do - item.sell_in < 6 -> - cond do - item.quality < 50 -> - %{item | quality: item.quality + 1} - true -> item - end - true -> item - end - true -> item - end - true -> item - end - end - item = cond do - item.name != "Sulfuras, Hand of Ragnaros" -> - %{item | sell_in: item.sell_in - 1} - true -> item - end - cond do - item.sell_in < 0 -> - cond do - item.name != "Aged Brie" -> - cond do - item.name != "Backstage passes to a TAFKAL80ETC concert" -> - cond do - item.quality > 0 -> - cond do - item.name != "Sulfuras, Hand of Ragnaros" -> - %{item | quality: item.quality - 1} - true -> item - end - true -> item - end - true -> %{item | quality: item.quality - item.quality} - end - true -> - cond do - item.quality < 50 -> - %{item | quality: item.quality + 1} - true -> item - end - end - true -> item - end - end -end diff --git a/elixir/lib/item.ex b/elixir/lib/item.ex deleted file mode 100644 index 0a20edbf..00000000 --- a/elixir/lib/item.ex +++ /dev/null @@ -1,3 +0,0 @@ -defmodule Item do - defstruct name: nil, sell_in: nil, quality: nil -end diff --git a/elixir/mix.exs b/elixir/mix.exs deleted file mode 100644 index c50af0d0..00000000 --- a/elixir/mix.exs +++ /dev/null @@ -1,9 +0,0 @@ -defmodule GildedRose.Mixfile do - use Mix.Project - - def project do - [app: :gilded_rose, - version: "0.0.1", - elixir: "~> 1.0"] - end -end diff --git a/elixir/test/gilded_rose_test.exs b/elixir/test/gilded_rose_test.exs deleted file mode 100644 index 56b8f4a5..00000000 --- a/elixir/test/gilded_rose_test.exs +++ /dev/null @@ -1,10 +0,0 @@ -defmodule GildedRoseTest do - use ExUnit.Case - - test "begin the journey of refactoring" do - items = [%Item{name: "foo", sell_in: 0, quality: 0}] - GildedRose.update_quality(items) - %{name: firstItemName} = List.first(items) - assert "fixme" == firstItemName - end -end diff --git a/elixir/test/test_helper.exs b/elixir/test/test_helper.exs deleted file mode 100644 index 869559e7..00000000 --- a/elixir/test/test_helper.exs +++ /dev/null @@ -1 +0,0 @@ -ExUnit.start()