@@ -160,6 +160,7 @@ defmodule ExUnit.Assertions do
160160 end
161161 end
162162
163+ { left , right } = move_match ( left , right )
163164 __match__ ( left , right , code , check , __CALLER__ )
164165 end
165166
@@ -380,6 +381,12 @@ defmodule ExUnit.Assertions do
380381 { ExUnit.AssertionError . no_value ( ) , expr }
381382 end
382383
384+ defp move_match ( left , { := , meta , [ middle , right ] } ) ,
385+ do: move_match ( { := , meta , [ left , middle ] } , right )
386+
387+ defp move_match ( left , right ) ,
388+ do: { left , right }
389+
383390 @ doc false
384391 def __match__ ( { :when , _ , _ } = left , right , _ , _ , _ ) do
385392 suggestion =
@@ -409,7 +416,7 @@ defmodule ExUnit.Assertions do
409416 case right do
410417 unquote ( left ) ->
411418 unquote ( check )
412- unquote ( mark_as_generated ( vars ) )
419+ { unquote_splicing ( mark_as_generated ( vars ) ) }
413420
414421 _ ->
415422 left = unquote ( Macro . escape ( left ) )
@@ -427,7 +434,7 @@ defmodule ExUnit.Assertions do
427434 quote do
428435 right = unquote ( right )
429436 expr = unquote ( code )
430- unquote ( vars ) = unquote ( match_expr )
437+ { unquote_splicing ( vars ) } = unquote ( match_expr )
431438 right
432439 end
433440 end
0 commit comments