int main() { int ret1,ret2; u8 io = 2,get_val; ret1 = -1; ret2 = -1; u8 mode,od,pu; mode = GPIO_IN; od = GPIO_ODE; pu = GPIO_PUE; //环境初始化 inittest(); gpio_init(); gpio_set(io, mode, od, pu); //测试用例1 //测试用例2 ret2 = gpio_input_get(io, &get_val); assert((ret1 == 0) && (get_val == 1),"gpio_input_get 2 error"); finaltest(); return 0; }
int main() { int ret; //环境初始化 inittest(); ret = syn_init(); p_err(ret); ret = syn_rwlock_init(2); p_err(ret); //测试用例1 ret = syn_rwlock_destroy(2); assert(ret == 0,"syn_rwlock_destroy Use Case 1 error"); //测试用例2 ret = syn_rwlock_init(2); p_err(ret); ret = syn_rwlock_destroy(64); assert(ret == -ERR_INVAL,"syn_rwlock_destroy Use Case 2 error"); //测试用例3 ret = syn_rwlock_destroy(4); assert(ret == -ERR_NOINIT,"syn_rwlock_destroy Use Case 3 error"); //测试用例4 ret = syn_rwlock_rd(2,SYN_RECV_BLOCK); p_err(ret); ret = syn_rwlock_destroy(2); assert(ret == -ERR_BUSY,"syn_rwlock_destroy Use Case 4 error"); finaltest(); return 0; }
int main() { /*power_check相关变量*/ int ret = -1; u8 mode; u16 set_timeout = 1000; /*I/O口相关变量*/ u8 io_mode, io_od, io_pu; u8 io_clearval = 0; u8 io_setval = 1; //I/O口输出高 u8 io_trigger = 35; //pb3触发掉电处理 //环境初始化 inittest(); //测试用例1 io_mode = GPIO_OUT; io_od = GPIO_ODD; io_pu = GPIO_PUD; ret = gpio_init(); //初始化I/O口 if(ret != 0){ printf("gpio_init error\r\n"); } ret = gpio_set(io_trigger, io_mode, io_od, io_pu); //设置pb0为输出口 if(ret != 0){ printf("gpio_set error\r\n"); } gpio_output_set(io_trigger, io_clearval); //PB3口输出低,模拟为掉电 //测试用例2 mode = POWERCHECK_MODE_BLOCK_UP; powercheck_init(mode); powercheck_setwaittime(set_timeout); ret = powercheck_check(); assert(ret == 1,"powercheck_check 2 error"); powercheck_close(); finaltest(); return 0; }
int main() { int ret1,ret2; u16 set_timeout; u16 get_timeout; //环境初始化 inittest(); adc_init(); //测试用例1 set_timeout = 12; ret1 = adc_setwaittime(set_timeout); ret2 = adc_getwaittime(&get_timeout); assert(((ret1 == 0) && (ret1 == 0) && (set_timeout == get_timeout)),\ "adc_setwaittime,adc_getwaittime 1 error"); //测试用例2 set_timeout = 0xffff; ret1 = adc_setwaittime(set_timeout); ret2 = adc_getwaittime(&get_timeout); assert(((ret1 == 0) && (ret1 == 0) && (set_timeout == get_timeout)),\ "adc_setwaittime,adc_getwaittime 2 error"); //测试用例3 set_timeout = 0; ret1 = adc_setwaittime(set_timeout); assert(ret1 == -ERR_INVAL,\ "adc_setwaittime,adc_getwaittime 3 error"); //测试用例4 adc_close(); set_timeout = 12; ret1 = adc_setwaittime(set_timeout); assert(ret1 == -ERR_NOINIT,\ "adc_setwaittime,adc_getwaittime 4 error"); printf("ret1 = %d\r\n",ret1); finaltest(); return 0; }
int main() { int ret; u8 id = 2; u32 get_num; //环境初始化 inittest(); pulse_init(); //测试用例1 ret = pulse_get(id, &get_num); assert((ret == 0) && (get_num == 0),"pulse_get error"); //测试用例2 //测试用例3 //测试用例4 finaltest(); return 0; }
int main() { int ret; //环境初始化 inittest(); ret = syn_init(); p_err(ret); ret = syn_rwlock_init(2); p_err(ret); //测试用例1 ret = syn_rwlock_wr(2,SYN_RECV_BLOCK); assert(ret == 0,"syn_rwlock_wr Use Case 1 error"); ret = syn_rwlock_unlock(2); p_err(ret); //测试用例2-边界 ret = syn_rwlock_wr(64,SYN_RECV_BLOCK); assert(ret == -ERR_INVAL,"syn_rwlock_wr Use Case 2 error"); //测试用例3-错误 ret = syn_rwlock_wr(4,SYN_RECV_BLOCK); assert(ret == -ERR_NOINIT,"syn_rwlock_wr Use Case 3 error"); //测试用例4-错误 ret = syn_rwlock_wr(2,10); assert(ret == -ERR_INVAL, "syn_rwlock_wr Use Case 4 error"); //测试用例5-覆盖 ret = syn_rwlock_wr(2,SYN_RECV_NONBLOCK); assert(ret == 0,"syn_rwlock_wr Use Case 5 error"); //测试用例5-覆盖 ret = syn_rwlock_wr(2,SYN_RECV_NONBLOCK); assert(ret == -ERR_BUSY,"syn_rwlock_wr Use Case 5 error"); finaltest(); return 0; }
int main() { int ret = -1; u8 id, mode; //环境初始化 inittest(); //测试用例1 id = 2; mode = TIMER_MODE_HEART; timer_init(id, mode); ret = timer_close(id); assert(ret == 0,"timer_close 1 error"); //测试用例2 id = 0; mode = TIMER_MODE_HEART; timer_init(id, mode); ret = timer_close(id); assert(ret == 0,"timer_close 2 error"); //测试用例3 id = 5; mode = TIMER_MODE_HEART; timer_init(id, mode); ret = timer_close(id); assert(ret == 0,"timer_close 3 error"); //测试用例4 id = 2; ret = timer_close(id); assert(ret == -ERR_NOINIT,"timer_close 4 error"); finaltest(); return 0; }
int main() { gVar = (int *)malloc((sizeof(int))*CL*RTN); inittest(); gq = Queue_new(); t0 = clock(); printf("Starting Test 1 ...\n"); start_multi(0); wait_multi(); //t2 = clock(); //if ( checkresult != 0 ) // return -1; printf("TEST 1 , Multi In.\n"); printf(" PUT USE : %f seconds\n", (double)(t1 - t0) / CLOCKS_PER_SEC); //printf(" GET USE : %f seconds\n", (double)(t2 - t0) / CLOCKS_PER_SEC); t0 = clock(); printf("Starting Test 2 ...\n"); start_multi(1); wait_multi2(); //t1 = clock(); if ( checkresult() != 0 ) return -1; printf("TEST 2 , Multi Out.\n"); //printf(" PUT USE : %f seconds\n", (double)(t1 - t0) / CLOCKS_PER_SEC); printf(" GET USE : %f seconds\n", (double)(t2 - t0) / CLOCKS_PER_SEC); inittest(); gq = Queue_new(); t0 = clock(); printf("Starting Test 3 ...\n"); start_multi(0); single_get(); t2 = clock(); wait_multi(); if ( checkresult() != 0 ) return -1; printf("TEST 3 , Multi In Single Out.\n"); printf(" PUT USE : %f seconds\n", (double)(t1 - t0) / CLOCKS_PER_SEC); printf(" GET USE : %f seconds\n", (double)(t2 - t0) / CLOCKS_PER_SEC); inittest(); gq = Queue_new(); t0 = clock(); printf("Starting Test 4 ...\n"); single_put(); t1 = clock(); printf("TEST 4 , Single In .\n"); printf(" PUT USE : %f seconds\n", (double)(t1 - t0) / CLOCKS_PER_SEC); //printf(" GET USE : %f seconds\n", (double)(t2 - t0) / CLOCKS_PER_SEC); t0 = clock(); printf("Starting Test 5 ...\n"); start_multi(2); wait_multi2(); //t1 = clock(); if ( checkresult() != 0 ) return -1; printf("TEST 5 , Multi Out 2.\n"); //printf(" PUT USE : %f seconds\n", (double)(t1 - t0) / CLOCKS_PER_SEC); printf(" GET USE : %f seconds\n", (double)(t2 - t0) / CLOCKS_PER_SEC); inittest(); gq = Queue_new(); t0 = clock(); printf("Starting Test 6 ...\n"); start_multi(0); start_multi(1); wait_multi(); wait_multi2(); if ( checkresult() != 0 ) return -1; printf("TEST 6 , Multi In Multi Out.\n"); printf(" PUT USE : %f seconds\n", (double)(t1 - t0) / CLOCKS_PER_SEC); printf(" GET USE : %f seconds\n", (double)(t2 - t0) / CLOCKS_PER_SEC); inittest(); gq = Queue_new(); t0 = clock(); printf("Starting Test 7 ...\n"); start_multi(0); start_multi(2); wait_multi(); wait_multi2(); if ( checkresult() != 0 ) return -1; printf("TEST 7 , Multi In Multi Out 2.\n"); printf(" PUT USE : %f seconds\n", (double)(t1 - t0) / CLOCKS_PER_SEC); printf(" GET USE : %f seconds\n", (double)(t2 - t0) / CLOCKS_PER_SEC); return 0; }
int main() { int ret; //环境的初始化 inittest(); u8 id1,id2; ret = thread_init(); //初始化模块环境 if(ret){ printf("thread init error!\n"); goto error; } id1 = 2; ret = thread_create(id1, (void *)thread_test1, NULL, THREAD_MODE_NORMAL, 0); //建立普通线程 if(ret){ printf("thread1 create error!\n"); goto error; } id2 = 3; u8 test_num = 10; u8 prio = 5; ret = thread_create(id2, (void *)thread_test2, &test_num, THREAD_MODE_REALTIME, prio); //建立实时线程 if(ret){ printf("thread1 create error!\n"); goto error; } sleep(5); /*********测试用例1**************/ ret = thread_cancel(id1); //普通线程取消 assert(ret==0,"test1:thread cancel fail!"); /*********测试用例2**************/ ret = thread_cancel(id2); //实时线程取消 assert(ret==0,"test2:thread cancel fail!"); /*********测试用例3**************/ id1 = 1; ret = thread_create(id1, (void *)thread_test1, NULL, THREAD_MODE_NORMAL, 0); //建立普通线程 if(ret){ printf("thread1 create error!\n"); goto error; } ret = thread_cancel(id1); //普通线程取消 assert(ret==0,"test3:thread cancel fail!"); /*********测试用例4**************/ id1 = 31; ret = thread_create(id1, (void *)thread_test1, NULL, THREAD_MODE_NORMAL, 0); //建立普通线程 if(ret){ printf("thread1 create error!\n"); goto error; } ret = thread_cancel(id1); //普通线程取消 assert(ret==0,"test4:thread cancel fail!"); /*********测试用例5**************/ id1 = 32; ret = thread_cancel(id1); //普通线程取消 assert(ret==-ERR_INVAL,"test5:thread cancel fail!"); /*********测试用例6**************/ id1 = 6; ret = thread_cancel(id1); //普通线程取消 assert(ret==-ERR_NODEV,"test6:thread cancel fail!"); sleep(5); finaltest(); error: exit(0); }