   end
 
   test "two levels with" do
-    result = with({:ok, n1} <- ok(11), n2 <- 22, do: n1 + n2)
+    result =
+      with(
+        {:ok, n1} <- ok(11),
+        n2 <- 22,
+        do: n1 + n2
+      )
+
     assert result == 33
 
-    result = with(n1 <- 11, {:ok, n2} <- error(), do: n1 + n2)
+    result =
+      with(
+        n1 <- 11,
+        {:ok, n2} <- error(),
+        do: n1 + n2
+      )
+
     assert result == :error
   end
 

  end

  test "else conditions" do
    assert with({:ok, res} <- four(), do: res, else: ({:error, error} -> error; res -> res + 1)) == 5
    assert with({:ok, res} <- four(), do: res, else: (res when res == 4 -> res + 1; res -> res)) == 5
    assert with({:ok, res} <- four(), do: res, else: (_ -> :error)) == :error
  end

  test "else conditions with match error" do
    assert_raise WithClauseError, "no with clause matching: :error",  fn ->
      with({:ok, res} <- error(), do: res, else: ({:error, error} -> error))
    end
  end

Code.require_file("../test_helper.exs", __DIR__)

defmodule Kernel.WithTest do
  use ExUnit.Case, async: true
