mirror of
https://github.com/vim/vim.git
synced 2025-09-27 04:14:06 -04:00
patch 9.0.1507: assert message is confusing with boolean result
Problem: Assert message is confusing with boolean result. assert_inrange() replaces message instead of adding it. Solution: Don't put quotes around expected boolean value. Append message for assert_inrange(). (closes #12342, closes #12341)
This commit is contained in:
@@ -9,11 +9,11 @@ func Test_assert_false()
|
|||||||
call assert_equal(0, v:false->assert_false())
|
call assert_equal(0, v:false->assert_false())
|
||||||
|
|
||||||
call assert_equal(1, assert_false(123))
|
call assert_equal(1, assert_false(123))
|
||||||
call assert_match("Expected 'False' but got 123", v:errors[0])
|
call assert_match("Expected False but got 123", v:errors[0])
|
||||||
call remove(v:errors, 0)
|
call remove(v:errors, 0)
|
||||||
|
|
||||||
call assert_equal(1, 123->assert_false())
|
call assert_equal(1, 123->assert_false())
|
||||||
call assert_match("Expected 'False' but got 123", v:errors[0])
|
call assert_match("Expected False but got 123", v:errors[0])
|
||||||
call remove(v:errors, 0)
|
call remove(v:errors, 0)
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
@@ -24,11 +24,11 @@ func Test_assert_true()
|
|||||||
call assert_equal(0, v:true->assert_true())
|
call assert_equal(0, v:true->assert_true())
|
||||||
|
|
||||||
call assert_equal(1, assert_true(0))
|
call assert_equal(1, assert_true(0))
|
||||||
call assert_match("Expected 'True' but got 0", v:errors[0])
|
call assert_match("Expected True but got 0", v:errors[0])
|
||||||
call remove(v:errors, 0)
|
call remove(v:errors, 0)
|
||||||
|
|
||||||
call assert_equal(1, 0->assert_true())
|
call assert_equal(1, 0->assert_true())
|
||||||
call assert_match("Expected 'True' but got 0", v:errors[0])
|
call assert_match("Expected True but got 0", v:errors[0])
|
||||||
call remove(v:errors, 0)
|
call remove(v:errors, 0)
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
@@ -416,8 +416,11 @@ func Test_assert_inrange()
|
|||||||
call remove(v:errors, 0)
|
call remove(v:errors, 0)
|
||||||
|
|
||||||
" Use a custom message
|
" Use a custom message
|
||||||
|
call assert_equal(1, assert_inrange(5, 7, 8, "Higher"))
|
||||||
|
call assert_match("Higher: Expected range 5 - 7, but got 8", v:errors[0])
|
||||||
|
call remove(v:errors, 0)
|
||||||
call assert_equal(1, assert_inrange(5, 7, 8.0, "Higher"))
|
call assert_equal(1, assert_inrange(5, 7, 8.0, "Higher"))
|
||||||
call assert_match("Higher", v:errors[0])
|
call assert_match("Higher: Expected range 5.0 - 7.0, but got 8.0", v:errors[0])
|
||||||
call remove(v:errors, 0)
|
call remove(v:errors, 0)
|
||||||
|
|
||||||
" Invalid arguments
|
" Invalid arguments
|
||||||
|
@@ -223,9 +223,11 @@ fill_assert_error(
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
ga_concat(gap, (char_u *)"'");
|
if (atype == ASSERT_FAILS)
|
||||||
|
ga_concat(gap, (char_u *)"'");
|
||||||
ga_concat_shorten_esc(gap, exp_str);
|
ga_concat_shorten_esc(gap, exp_str);
|
||||||
ga_concat(gap, (char_u *)"'");
|
if (atype == ASSERT_FAILS)
|
||||||
|
ga_concat(gap, (char_u *)"'");
|
||||||
}
|
}
|
||||||
if (atype != ASSERT_NOTEQUAL)
|
if (atype != ASSERT_NOTEQUAL)
|
||||||
{
|
{
|
||||||
@@ -743,7 +745,7 @@ f_assert_fails(typval_T *argvars, typval_T *rettv)
|
|||||||
actual_tv.vval.v_string = actual;
|
actual_tv.vval.v_string = actual;
|
||||||
}
|
}
|
||||||
fill_assert_error(&ga, &argvars[2], expected_str,
|
fill_assert_error(&ga, &argvars[2], expected_str,
|
||||||
&argvars[error_found_index], &actual_tv, ASSERT_OTHER);
|
&argvars[error_found_index], &actual_tv, ASSERT_FAILS);
|
||||||
ga_concat(&ga, (char_u *)": ");
|
ga_concat(&ga, (char_u *)": ");
|
||||||
assert_append_cmd_or_arg(&ga, argvars, cmd);
|
assert_append_cmd_or_arg(&ga, argvars, cmd);
|
||||||
assert_error(&ga);
|
assert_error(&ga);
|
||||||
@@ -785,9 +787,7 @@ assert_inrange(typval_T *argvars)
|
|||||||
{
|
{
|
||||||
garray_T ga;
|
garray_T ga;
|
||||||
int error = FALSE;
|
int error = FALSE;
|
||||||
char_u *tofree;
|
char_u expected_str[200];
|
||||||
char msg[200];
|
|
||||||
char_u numbuf[NUMBUFLEN];
|
|
||||||
|
|
||||||
if (argvars[0].v_type == VAR_FLOAT
|
if (argvars[0].v_type == VAR_FLOAT
|
||||||
|| argvars[1].v_type == VAR_FLOAT
|
|| argvars[1].v_type == VAR_FLOAT
|
||||||
@@ -800,17 +800,10 @@ assert_inrange(typval_T *argvars)
|
|||||||
if (factual < flower || factual > fupper)
|
if (factual < flower || factual > fupper)
|
||||||
{
|
{
|
||||||
prepare_assert_error(&ga);
|
prepare_assert_error(&ga);
|
||||||
if (argvars[3].v_type != VAR_UNKNOWN)
|
vim_snprintf((char *)expected_str, 200, "range %g - %g,",
|
||||||
{
|
flower, fupper);
|
||||||
ga_concat(&ga, tv2string(&argvars[3], &tofree, numbuf, 0));
|
fill_assert_error(&ga, &argvars[3], expected_str, NULL,
|
||||||
vim_free(tofree);
|
&argvars[2], ASSERT_OTHER);
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
vim_snprintf(msg, 200, "Expected range %g - %g, but got %g",
|
|
||||||
flower, fupper, factual);
|
|
||||||
ga_concat(&ga, (char_u *)msg);
|
|
||||||
}
|
|
||||||
assert_error(&ga);
|
assert_error(&ga);
|
||||||
ga_clear(&ga);
|
ga_clear(&ga);
|
||||||
return 1;
|
return 1;
|
||||||
@@ -827,17 +820,10 @@ assert_inrange(typval_T *argvars)
|
|||||||
if (actual < lower || actual > upper)
|
if (actual < lower || actual > upper)
|
||||||
{
|
{
|
||||||
prepare_assert_error(&ga);
|
prepare_assert_error(&ga);
|
||||||
if (argvars[3].v_type != VAR_UNKNOWN)
|
vim_snprintf((char *)expected_str, 200, "range %ld - %ld,",
|
||||||
{
|
(long)lower, (long)upper);
|
||||||
ga_concat(&ga, tv2string(&argvars[3], &tofree, numbuf, 0));
|
fill_assert_error(&ga, &argvars[3], expected_str, NULL,
|
||||||
vim_free(tofree);
|
&argvars[2], ASSERT_OTHER);
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
vim_snprintf(msg, 200, "Expected range %ld - %ld, but got %ld",
|
|
||||||
(long)lower, (long)upper, (long)actual);
|
|
||||||
ga_concat(&ga, (char_u *)msg);
|
|
||||||
}
|
|
||||||
assert_error(&ga);
|
assert_error(&ga);
|
||||||
ga_clear(&ga);
|
ga_clear(&ga);
|
||||||
return 1;
|
return 1;
|
||||||
|
@@ -695,6 +695,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
1507,
|
||||||
/**/
|
/**/
|
||||||
1506,
|
1506,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user