Check verifies if the first value matches the expected value according to the provided checker. If they do not match, an error is logged, the test is marked as failed, and the test execution continues.
Some checkers may not need the expected argument (e.g. IsNil).
Extra arguments provided to the function are logged next to the reported problem when the matching fails.