   end
 
   test "structs when quoted" do
-    assert (quote do
-      %User{foo: 1}
-    end) == {:%, [], [
-      {:__aliases__, [alias: false], [:User]},
-      {:%{}, [], [{:foo, 1}]}
-    ]}
-
-    assert (quote do
-      %unquote(User){foo: 1}
-    end) == {:%, [], [User, {:%{}, [], [{:foo, 1}]}]}
+    quoted =
+      quote do
+        %User{foo: 1}
+      end
+
+    assert {:%, [], [aliases, {:%{}, [], [{:foo, 1}]}]} = quoted
+    assert aliases == {:__aliases__, [alias: false], [:User]}
+
+    quoted =
+      quote do
+        %unquote(User){foo: 1}
+      end
+
+    assert quoted == {:%, [], [User, {:%{}, [], [{:foo, 1}]}]}
   end
 
   test "defstruct can only be used once in a module" do
-    message = "defstruct has already been called for TestMod, " <>
-              "defstruct can only be called once per module"
+    message =
+      "defstruct has already been called for TestMod, " <>
+        "defstruct can only be called once per module"
+
     assert_raise ArgumentError, message, fn ->
       Code.eval_string("""
-        defmodule TestMod do
-          defstruct [:foo]
-          defstruct [:foo]
-        end
-        """)
+      defmodule TestMod do
+        defstruct [:foo]
+        defstruct [:foo]
+      end
+      """)
     end
   end
 
   test "defstruct allows keys to be enforced" do
     message = "the following keys must also be given when building struct TestMod: [:foo]"
+
     assert_raise ArgumentError, message, fn ->
       Code.eval_string("""
-        defmodule TestMod do
-          @enforce_keys :foo
-          defstruct [:foo]
-          def foo do
-            %TestMod{}
-          end
+      defmodule TestMod do
+        @enforce_keys :foo
+        defstruct [:foo]
+        def foo do
+          %TestMod{}
         end
-        """)
+      end
+      """)
     end
   end
 
   test "defstruct raises on invalid enforce_keys" do
     message = "keys given to @enforce_keys must be atoms, got: \"foo\""
+
     assert_raise ArgumentError, message, fn ->
       Code.eval_string("""
-        defmodule TestMod do
-          @enforce_keys "foo"
-          defstruct [:foo]
-        end
-        """)
+      defmodule TestMod do
+        @enforce_keys "foo"
+        defstruct [:foo]
+      end
+      """)
     end
   end
 

  end

  test "maps when quoted" do
    assert (quote do
      %{foo: 1}
    end) == {:%{}, [], [{:foo, 1}]}
  end

  test "maps keywords and atoms" do


  test "new/1" do
    assert Map.new(%{a: 1, b: 2}) == %{a: 1, b: 2}
    assert Map.new(MapSet.new(a: 1, b: 2, a: 3)) == %{b: 2, a: 3}
  end

  test "new/2" do
    transformer = fn {key, value} -> {key, value * 2} end
    assert Map.new(%{a: 1, b: 2}, transformer) == %{a: 2, b: 4}
    assert Map.new(MapSet.new(a: 1, b: 2, a: 3), transformer) == %{b: 4, a: 6}
  end

  test "take/2" do
