diff options
author | Eric Watson <wasnotrice@gmail.com> | 2018-04-23 15:24:38 -0500 |
---|---|---|
committer | José Valim <jose.valim@gmail.com> | 2018-04-23 22:24:38 +0200 |
commit | 2f5c147ac110374ea47bbfd624d341c265e3751c (patch) | |
tree | 89c76a516d03fc87fbb9b7c3801fe3e9a6a1339a | |
parent | 7289e23b0d499785e7addfbb05839a7b8ad5d4a3 (diff) | |
download | elixir-2f5c147ac110374ea47bbfd624d341c265e3751c.tar.gz |
Add diff to doctest (#7585)
Pass both left and right values into `test_case_content`, so that failures get
diff highlighting
-rw-r--r-- | lib/ex_unit/lib/ex_unit/doc_test.ex | 4 | ||||
-rw-r--r-- | lib/ex_unit/test/ex_unit/doc_test_test.exs | 10 |
2 files changed, 8 insertions, 6 deletions
diff --git a/lib/ex_unit/lib/ex_unit/doc_test.ex b/lib/ex_unit/lib/ex_unit/doc_test.ex index e3eb7d09c..eddfeebea 100644 --- a/lib/ex_unit/lib/ex_unit/doc_test.ex +++ b/lib/ex_unit/lib/ex_unit/doc_test.ex @@ -322,7 +322,7 @@ defmodule ExUnit.DocTest do actual -> expr = "#{unquote(String.trim(expr))} === #{unquote(String.trim(expected))}" - error = [message: "Doctest failed", expr: expr, left: actual] + error = [message: "Doctest failed", expr: expr, left: actual, right: expected] reraise ExUnit.AssertionError, error, unquote(stack) end end @@ -345,7 +345,7 @@ defmodule ExUnit.DocTest do actual -> expr = "inspect(#{unquote(String.trim(expr))}) === #{unquote(String.trim(expected))}" - error = [message: "Doctest failed", expr: expr, left: actual] + error = [message: "Doctest failed", expr: expr, left: actual, right: expected] reraise ExUnit.AssertionError, error, unquote(stack) end end diff --git a/lib/ex_unit/test/ex_unit/doc_test_test.exs b/lib/ex_unit/test/ex_unit/doc_test_test.exs index 478a6e5b3..000298e7f 100644 --- a/lib/ex_unit/test/ex_unit/doc_test_test.exs +++ b/lib/ex_unit/test/ex_unit/doc_test_test.exs @@ -446,8 +446,9 @@ defmodule ExUnit.DocTestTest do 2) doctest module ExUnit.DocTestTest.Invalid (2) (ExUnit.DocTestTest.ActuallyCompiled) test/ex_unit/doc_test_test.exs:#{doctest_line} Doctest failed - code: 1 + hd(List.flatten([1])) === 3 - left: 2 + code: 1 + hd(List.flatten([1])) === 3 + left: 2 + right: 3 stacktrace: test/ex_unit/doc_test_test.exs:141: ExUnit.DocTestTest.Invalid (module) """ @@ -456,8 +457,9 @@ defmodule ExUnit.DocTestTest do 3) doctest module ExUnit.DocTestTest.Invalid (3) (ExUnit.DocTestTest.ActuallyCompiled) test/ex_unit/doc_test_test.exs:#{doctest_line} Doctest failed - code: inspect(:oops) === "#MapSet<[]>" - left: ":oops" + code: inspect(:oops) === "#MapSet<[]>" + left: ":oops" + right: "#MapSet<[]>" stacktrace: test/ex_unit/doc_test_test.exs:144: ExUnit.DocTestTest.Invalid (module) """ |