80 lines
2.0 KiB
C
80 lines
2.0 KiB
C
#include "ut_fuses.h"
|
|
|
|
#include "..\..\src\hw\board\utils\fuses.h"
|
|
|
|
static int ut_fuse_reset(fuse_t* fuse, fuse_t* exp_out_fuse)
|
|
{
|
|
printf("State:%d Timer:%d Count:%d \n", fuse->state, fuse->timer, fuse->count);
|
|
|
|
fuse_reset(fuse);
|
|
|
|
printf(" Output: State:%d Timer:%d Count:%d \n", fuse->state, fuse->timer, fuse->count);
|
|
printf("Expected: State:%d Timer:%d Count:%d \n", exp_out_fuse->state, exp_out_fuse->timer, exp_out_fuse->count);
|
|
|
|
if((fuse->state==exp_out_fuse->state)&&(fuse->timer==exp_out_fuse->timer)&&(fuse->count==exp_out_fuse->count))
|
|
{
|
|
printf("PASS\n\n");
|
|
return 1;
|
|
}
|
|
else
|
|
{
|
|
printf("FAIL\n\n");
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
int ut_fuse_reset_test(void)
|
|
{
|
|
printf("******************************************************\n");
|
|
printf("void fuse_reset(fuse_t* fuse)\n");
|
|
|
|
int test_res;
|
|
int pass = 1;
|
|
|
|
fuse_t fuse;
|
|
|
|
fuse_t exp_out_fuse;
|
|
|
|
// No change test
|
|
fuse.state = FUSE_OFF;
|
|
fuse.timer = 0;
|
|
fuse.count = 0;
|
|
exp_out_fuse.state = FUSE_OFF;
|
|
exp_out_fuse.timer = 0;
|
|
exp_out_fuse.count = 0;
|
|
test_res = ut_fuse_reset(&fuse, &exp_out_fuse);
|
|
if(!test_res) pass = 0;
|
|
|
|
// No change test
|
|
fuse.state = FUSE_ACTIVE;
|
|
fuse.timer = 1254;
|
|
fuse.count = 124;
|
|
exp_out_fuse.state = FUSE_OFF;
|
|
exp_out_fuse.timer = 0;
|
|
exp_out_fuse.count = 0;
|
|
test_res = ut_fuse_reset(&fuse, &exp_out_fuse);
|
|
if(!test_res) pass = 0;
|
|
|
|
// No change test
|
|
fuse.state = FUSE_COOLDOWN;
|
|
fuse.timer = 4578;
|
|
fuse.count = 14;
|
|
exp_out_fuse.state = FUSE_OFF;
|
|
exp_out_fuse.timer = 0;
|
|
exp_out_fuse.count = 0;
|
|
test_res = ut_fuse_reset(&fuse, &exp_out_fuse);
|
|
if(!test_res) pass = 0;
|
|
|
|
// No change test
|
|
fuse.state = FUSE_RETRY;
|
|
fuse.timer = 0;
|
|
fuse.count = 0;
|
|
exp_out_fuse.state = FUSE_OFF;
|
|
exp_out_fuse.timer = 0;
|
|
exp_out_fuse.count = 0;
|
|
test_res = ut_fuse_reset(&fuse, &exp_out_fuse);
|
|
if(!test_res) pass = 0;
|
|
|
|
return pass;
|
|
}
|