     language = "Elixir"
     list = [language]
 
-    assert LL.new() |> LL.add(language) == list
+    assert LanguageList.new() |> LanguageList.add(language) == list
   end
 
   @tag :pending
   test "add several languages to a list" do
-    assert Enum.reduce(@languages, LL.new(), &LL.add(&2, &1)) == @languages_reversed
+    list =
+      LanguageList.new()
+      |> LanguageList.add("Clojure")
+      |> LanguageList.add("Haskell")
+      |> LanguageList.add("Erlang")
+      |> LanguageList.add("F#")
+      |> LanguageList.add("Elixir")
+
+    assert list == ["Elixir", "F#", "Erlang", "Haskell", "Clojure"]
   end
 
   @tag :pending
   test "remove on an empty list results in error" do
-    assert_raise ArgumentError, fn -> LL.new() |> LL.remove() end
+    assert_raise ArgumentError, fn -> LanguageList.new() |> LanguageList.remove() end
   end
 
   @tag :pending
   test "add then remove results in empty list" do
     list =
-      LL.new()
-      |> LL.add("Elixir")
-      |> LL.remove()
+      LanguageList.new()
+      |> LanguageList.add("Elixir")
+      |> LanguageList.remove()
 
     assert list == []
   end

  @tag :pending
  test "adding two languages, when removed, removes first item" do
    list =
      LL.new()
      |> LL.add("F#")
      |> LL.add("Elixir")
      |> LL.remove()

    assert list = ~w/F#/
  end

  @tag :pending
  test "first on an empty list raises an error" do
    assert_raise ArgumentError, fn -> LL.new() |> LL.first() end
  end

  @tag :pending
  test "add one language, then get the first" do
    assert LL.new() |> LL.add("Elixir") |> LL.first() == "Elixir"
  end

  @tag :pending
  test "add a few languages, then get the first" do
    first =
      LL.new()
      |> LL.add("Elixir")
      |> LL.add("Prolog")
      |> LL.add("F#")
      |> LL.first()

    assert first == "F#"
  end

  @tag :pending
  test "the count of a new list is 0" do
    assert LL.new() |> LL.count() == 0
  end

  @tag :pending
  test "the count of a one-language list is 1" do
    count =
      LL.new()
      |> LL.add("Elixir")
      |> LL.count()

    assert count == 1
  end

defmodule LanguageListTest do
  use ExUnit.Case

  # @tag :pending
  test "new list" do
    assert LanguageList.new() == []
  end

  @tag :pending
  test "count an empty list" do
    assert LanguageList.new() |> LanguageList.count() == 0
  end

  @tag :pending
