Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Improved error message for one assert function
> 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" - excepted 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` (excepted) 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 tarantool#316
- Loading branch information