You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
> What's the problem?
If the user makes a mistake in the `assert_error_msg_content_equals`:
t.assert_error_msg_content_equals("bad", error, "foo:1: bar")
where:
"bad" - expected error message
error - built-in function (there may be another function here)
"foo:1: bar" - argument for the function
then the following error will be returned:
Error message expected: "bad"
Error message received: "foo:1: bar"
The user thinks that a comparison is being made between `foo:1: bar` and
`bad` strings. He notices this error and at the same time can write the
following:
t.assert_error_msg_content_equals("foo:1: bar", error, "foo:1: bar")
Now he will get the following error:
Error message expected: "foo:1: bar"
Error message received: "foo:1: bar"
It seems that the function doesn't work cause these strings are equal.
In fact, a comparison will be performed between `foo:1: bar` (expected)
and `bar` (actual, because `foo:1:` will be dropped from the error
message by regex).
The next use of the function will be correct:
t.assert_error_msg_content_equals("bar", error, "foo:1: bar")
> What's the solution?
It is necessary to save the result of conversion after the `gsub`. So
this way the user will see the actual strings that are being compared:
t.assert_error_msg_content_equals("bad", error, "foo:1: bar")
Error message expected: "bad"
Error message received: "bar"
Close#316
0 commit comments