TC: fix the heap tests
This commit is contained in:
parent
752fe135cd
commit
a51b5799f7
|
@ -9,8 +9,8 @@ static rt_bool_t mem_check(rt_uint8_t *ptr, rt_uint8_t value, rt_uint32_t len)
|
|||
{
|
||||
while (len)
|
||||
{
|
||||
if (*ptr != value) return RT_FALSE;
|
||||
|
||||
if (*ptr != value)
|
||||
return RT_FALSE;
|
||||
ptr ++;
|
||||
len --;
|
||||
}
|
||||
|
@ -20,6 +20,7 @@ static rt_bool_t mem_check(rt_uint8_t *ptr, rt_uint8_t value, rt_uint32_t len)
|
|||
|
||||
static void heap_malloc_init()
|
||||
{
|
||||
rt_uint8_t res = TC_STAT_PASSED;
|
||||
rt_uint8_t *ptr1, *ptr2, *ptr3, *ptr4, *ptr5;
|
||||
|
||||
ptr1 = rt_malloc(1);
|
||||
|
@ -33,14 +34,18 @@ static void heap_malloc_init()
|
|||
memset(ptr3, 3, 31);
|
||||
memset(ptr4, 4, 127);
|
||||
|
||||
if (mem_check(ptr1, 1, 1) != RT_FALSE) goto _failed;
|
||||
if (mem_check(ptr2, 2, 13) != RT_FALSE) goto _failed;
|
||||
if (mem_check(ptr3, 3, 31) != RT_FALSE) goto _failed;
|
||||
if (mem_check(ptr4, 4, 127) != RT_FALSE) goto _failed;
|
||||
if (mem_check(ptr1, 1, 1) == RT_FALSE)
|
||||
res = TC_STAT_FAILED;
|
||||
if (mem_check(ptr2, 2, 13) == RT_FALSE)
|
||||
res = TC_STAT_FAILED;
|
||||
if (mem_check(ptr3, 3, 31) == RT_FALSE)
|
||||
res = TC_STAT_FAILED;
|
||||
if (mem_check(ptr4, 4, 127) == RT_FALSE)
|
||||
res = TC_STAT_FAILED;
|
||||
|
||||
rt_free(ptr4);
|
||||
rt_free(ptr3);
|
||||
rt_free(ptr3);
|
||||
rt_free(ptr2);
|
||||
rt_free(ptr1);
|
||||
|
||||
if (ptr5 != RT_NULL)
|
||||
|
@ -48,10 +53,7 @@ static void heap_malloc_init()
|
|||
rt_free(ptr5);
|
||||
}
|
||||
|
||||
tc_done(TC_STAT_PASSED);
|
||||
|
||||
_failed:
|
||||
tc_done(TC_STAT_FAILED);
|
||||
tc_done(res);
|
||||
}
|
||||
|
||||
#ifdef RT_USING_TC
|
||||
|
|
|
@ -34,10 +34,26 @@ static void heap_realloc_init()
|
|||
memset(ptr3, 3, 31);
|
||||
memset(ptr4, 4, 127);
|
||||
|
||||
if (mem_check(ptr1, 1, 1) != RT_FALSE) goto _failed;
|
||||
if (mem_check(ptr2, 2, 13) != RT_FALSE) goto _failed;
|
||||
if (mem_check(ptr3, 3, 31) != RT_FALSE) goto _failed;
|
||||
if (mem_check(ptr4, 4, 127) != RT_FALSE) goto _failed;
|
||||
if (mem_check(ptr1, 1, 1) == RT_FALSE)
|
||||
{
|
||||
res = TC_STAT_FAILED;
|
||||
goto _free;
|
||||
}
|
||||
if (mem_check(ptr2, 2, 13) == RT_FALSE)
|
||||
{
|
||||
res = TC_STAT_FAILED;
|
||||
goto _free;
|
||||
}
|
||||
if (mem_check(ptr3, 3, 31) == RT_FALSE)
|
||||
{
|
||||
res = TC_STAT_FAILED;
|
||||
goto _free;
|
||||
}
|
||||
if (mem_check(ptr4, 4, 127) == RT_FALSE)
|
||||
{
|
||||
res = TC_STAT_FAILED;
|
||||
goto _free;
|
||||
}
|
||||
|
||||
ptr1 = rt_realloc(ptr1, 13);
|
||||
ptr2 = rt_realloc(ptr2, 31);
|
||||
|
@ -50,14 +66,19 @@ static void heap_realloc_init()
|
|||
res = TC_STAT_FAILED;
|
||||
}
|
||||
|
||||
if (mem_check(ptr1, 1, 1) != RT_FALSE) goto _failed;
|
||||
if (mem_check(ptr2, 2, 13) != RT_FALSE) goto _failed;
|
||||
if (mem_check(ptr3, 3, 31) != RT_FALSE) goto _failed;
|
||||
if (mem_check(ptr4, 4, 1) != RT_FALSE) goto _failed;
|
||||
if (mem_check(ptr1, 1, 1) == RT_FALSE)
|
||||
res = TC_STAT_FAILED;
|
||||
if (mem_check(ptr2, 2, 13) == RT_FALSE)
|
||||
res = TC_STAT_FAILED;
|
||||
if (mem_check(ptr3, 3, 31) == RT_FALSE)
|
||||
res = TC_STAT_FAILED;
|
||||
if (mem_check(ptr4, 4, 1) == RT_FALSE)
|
||||
res = TC_STAT_FAILED;
|
||||
|
||||
_free:
|
||||
rt_free(ptr4);
|
||||
rt_free(ptr3);
|
||||
rt_free(ptr3);
|
||||
rt_free(ptr2);
|
||||
rt_free(ptr1);
|
||||
|
||||
tc_done(res);
|
||||
|
|
Loading…
Reference in New Issue