How to write test dependent on line number?

I wan’t to write a test about Clouseau, a tool I am writing to help me debug. Here is what I have so far

  test "displays correct info" do
    result =
      capture_io(fn ->
        Cl.inspect(@shopping_list, label: "The shopping list")
      end)
      |> String.split("\n", trim: true)

    # WARNING: The next line should be always be 5 lines below the Cl.inspect otherwise the test will fail
    line = __ENV__.line - 5

  # ...a bunch of code and asserts
end

Cl.inspect inspects the pased term and prepends some meta information. Among others the line number where it was called.

I want to test that it shows the correct number. For example, in the code above, the call is in the number 17 in my file. So it should output the number 17. But I don’t have any means to see that in my file and compare actual with output.

The best I came up with is putting that line line = __ENV__.line - 5 exactly 5 lines below the call. This way I know that the line Cl.inspect was called is exactly 5 lines above.

The problem is that this kind of code is the kind of code I would show my nephew to make him eat his vegetables. Many things could change in the file, causing the test to fail.

Is there any better way to get the line number of Cl.inspect inside the same macro?