 
   test "defines?" do
     in_module do
-      refute Module.defines? __MODULE__, {:foo, 0}
+      refute Module.defines?(__MODULE__, {:foo, 0})
       def foo(), do: bar()
-      assert Module.defines? __MODULE__, {:foo, 0}
-      assert Module.defines? __MODULE__, {:foo, 0}, :def
-
-      refute Module.defines? __MODULE__, {:bar, 0}, :defp
+      assert Module.defines?(__MODULE__, {:foo, 0})
+      assert Module.defines?(__MODULE__, {:foo, 0}, :def)
+
+      refute Module.defines?(__MODULE__, {:bar, 0}, :defp)
       defp bar(), do: :ok
-      assert Module.defines? __MODULE__, {:bar, 0}, :defp
-
-      refute Module.defines? __MODULE__, {:baz, 0}, :defmacro
+      assert Module.defines?(__MODULE__, {:bar, 0}, :defp)
+
+      refute Module.defines?(__MODULE__, {:baz, 0}, :defmacro)
       defmacro baz(), do: :ok
-      assert Module.defines? __MODULE__, {:baz, 0}, :defmacro
+      assert Module.defines?(__MODULE__, {:baz, 0}, :defmacro)
     end
   end
 

  end

  test "retrieves line from macros" do
    assert ModuleTest.ToUse.line == 36
  end

  ## Callbacks

end

defmodule ModuleTest.ToUse do
  # Moving the next line around can make tests fail
  35 = __ENV__.line
  var = 1
  # Not available in callbacks
  _ = var
  def callback_value(false), do: false
  use ModuleTest.ToBeUsed
end
