示例#1
0
static void show_multi_test_result(void)
{
	int ret = RL_NA;
	int row = 3;
	char tmp[128];
	char* rl_str;
	int i,j;
	menu_info* ptest=multi_test_item;
	menu_info* pmenu = menu_auto_test;
	ui_fill_locked();
	ui_show_title(MENU_MULTI_TEST);
	gr_flip();

	for(i = 0; i < MULTI_TEST_CNT; i++) {
		ret = ptest[i].func();
		if(ret == RL_PASS) {
			ui_set_color(CL_GREEN);
			rl_str = TEXT_PASS;
		} else {
			ui_set_color(CL_RED);
			rl_str = TEXT_FAIL;
		}
		memset(tmp, 0, sizeof(tmp));
		for(j=0;i<CASE_NUM;j++){
			if(ptest[i].num==pmenu[j].num)
				break;
		}
		sprintf(tmp, "%s: %s", (pmenu[j].title+1), rl_str);
		row = ui_show_text(row, 0, tmp);
		gr_flip();
	}

	sleep(1);
}
示例#2
0
文件: gps.c 项目: sky8336/mn201307
int test_gps_start(void)
{
	int ret;
	pthread_t t1;
	int row = 2;

	ui_fill_locked();
	ui_show_title(MENU_TEST_GPS);
	ui_set_color(CL_WHITE);
	row = ui_show_text(row, 0, TEXT_WAIT_TIPS);
	gr_flip();

	ret = gpsOpen();
	if( ret < 0){
		LOGD("gps open failed ret = %d",ret);
		return -1;
	}
	gOpenTime=time(NULL);
	thread_run = 1;
	pthread_create(&t1, NULL, (void*)processThread_show, NULL);
	usleep(10*1000);
	ret = ui_handle_button(TEXT_PASS,NULL,TEXT_FAIL);//, TEXT_GOBACK
	thread_run = 0;
	pthread_join(t1,NULL);
	gpsStop();
	sleep(1);
	gpsClose();

	save_result(CASE_TEST_GPS,ret);
	return ret;
}
示例#3
0
static int
lua_ui_set_color(lua_State *L) {
   int r, g, b, a;

   r = lua_tonumber(L, 2);
   g = lua_tonumber(L, 3);
   b = lua_tonumber(L, 4);
   a = lua_tonumber(L, 5);

   ui_set_color(r, g, b, a);
   return 0;
}
示例#4
0
文件: gps.c 项目: sky8336/mn201307
static void gps_show_result(unsigned int result)
{
	char buffer[64];
	int row = 4;
	int i;

	if(result == 1){
		ui_clear_rows(row, 2);
		memset(buffer, 0, sizeof(buffer));
		sprintf(buffer, GPS_TEST_PASS);
	}else if(result == 0){
		ui_clear_rows(row, 2);
		memset(buffer, 0, sizeof(buffer));
		sprintf(buffer, GPS_TEST_FAILED);

	}else if(result == 2){
		ui_clear_rows(row, 2);
		memset(buffer, 0, sizeof(buffer));
		sprintf(buffer, "%s, %ds", GPS_TESTING, sTimeout);
	}else{
		// Must never go to here
		LOGD("wrong show result");
	}
	ui_set_color(CL_WHITE);
	row = ui_show_text(row, 0, buffer);
	memset(buffer, 0, sizeof(buffer));
	row++;
	ui_clear_rows(row, last_sSVNum+1);
	ui_set_color(CL_WHITE);
	sprintf(buffer, "GPS NUM: %d",sSVNum);
	row = ui_show_text(row, 0, buffer);
	gr_flip();
	for(i=0;i<sSVNum;i++){
        memset(buffer, 0, sizeof(buffer));
        sprintf(buffer, "GPS SNR: %d",sSvSnr[i]);
        row = ui_show_text(row, 0, buffer);
	}
	gr_flip();
}
示例#5
0
文件: otg.c 项目: sky8336/mn201307
int test_otg_start(void)
{
    int cur_row=2;
    int ret;
    pthread_t t1;

    ui_fill_locked();
    ui_show_title(MENU_TEST_OTG);
    ui_set_color(CL_WHITE);
    ui_show_text(cur_row, 0, OTG_TEST_START);
    gr_flip();

    thread_run=1;
    pthread_create(&t1, NULL, (void*)otg_check_thread, NULL);
    usleep(10*1000);
    ret = ui_handle_button(TEXT_PASS, NULL,TEXT_FAIL);
    thread_run=0;
    pthread_join(t1, NULL);
    save_result(CASE_TEST_OTG,ret);
    return ret;
}
示例#6
0
文件: key.c 项目: sky8336/mn201307
int test_key_start(void)
{
	int ret;
	struct timespec ntime;
	ntime.tv_sec= time(NULL)+KEY_TIMEOUT;
	ntime.tv_nsec=0;
	int menu_count=0;
	int key = -1;
	int test_cnt = sizeof(test_key_info) / sizeof(struct test_key);
	int i = 0;
	int cur_row = 2;
	int count = 0;

	LOGD("mmitest start");
	ui_fill_locked();
	ui_show_title(MENU_TEST_KEY);

	ui_set_color(CL_GREEN);
	cur_row=ui_show_text(cur_row, 0, TEXT_KEY_ILLUSTRATE);

	for(i = 0; i < test_cnt; i++) {
		test_key_info[i].done = 0;
	}
	for(;;) {
		cur_row = 4;
		for(i = 0; i < test_cnt; i++) {
			if(test_key_info[i].done) {
				ui_set_color(CL_GREEN);
			} else {
				ui_set_color(CL_RED);
			}
			cur_row = ui_show_text(cur_row, 0, test_key_info[i].name);
		}
		gr_flip();
		if((count >= test_cnt)) break;
		if(key==ETIMEDOUT) break;
		key = ui_wait_key(&ntime);
		LOGD("mmitest key = %d",key);
		for(i = 0; i < test_cnt; i++) {
			if((test_key_info[i].key == key)
				&&(test_key_info[i].done == 0))	{
				test_key_info[i].done = 1;
				count++;
			}
		}
		LOGD("mmitest count=%d",count);

	}

	LOGD("mmitest key over");

	if(key==ETIMEDOUT){
		ui_set_color(CL_RED);
		ui_show_text(cur_row+2, 0, TEXT_TEST_FAIL);
		gr_flip();
		sleep(1);
		ret=RL_FAIL;
	}else{
		ui_set_color(CL_GREEN);
		ui_show_text(cur_row+2, 0, TEXT_TEST_PASS);
		gr_flip();
		sleep(1);
		ret=RL_PASS;
	}
	save_result(CASE_TEST_KEY,ret);
	return ret;
}
示例#7
0
文件: otg.c 项目: sky8336/mn201307
void* otg_check_thread(void)
{
    int fp,fp1,fp2,fp3;
    int i,cur_row,read_len;
    int j = 30;
    unsigned long value=0;
    char support,flag = 0;
    char sta_device[12]={0};
    char sta_insert[4]={0};
    char buffer[64],temp[64];
    char *endptr;

    while(thread_run==1){
	cur_row=3;
	if(access(OTG_FILE_PATH,F_OK)!=-1){
		fp=open(OTG_FILE_PATH,O_RDONLY);
		read(fp,&support,sizeof(char));
		close(fp);
		if(support=='1'){
		      fp1=open(OTG_INSERT_STATUS, O_RDONLY);
		      read(fp1,&sta_insert,sizeof(sta_insert));
		      close(fp1);
			if(NULL!=strstr(sta_insert, "low")){
				j = 30;
				if(0 == flag){
					ui_clear_rows(cur_row, 2);
					ui_set_color(CL_GREEN);
					cur_row=ui_show_text(cur_row, 0, OTG_INSERT);
					//gr_flip();
					usleep(500*1000);
					fp2=open(OTG_DEVICE_HOST,O_RDONLY);
					read(fp2,&sta_device,sizeof(sta_device));
					close(fp2);
					if(NULL!=strstr(sta_device, "Mode = 0x1")){
						LOGD("mmitest %s  Mode = 0x1",__func__ );
						cur_row=ui_show_text(cur_row, 0, OTG_HOST);
						flag = 1;
					}else if(NULL != strstr(sta_device, "Mode = 0x0")){
						cur_row=ui_show_text(cur_row, 0, OTG_DEVICE);
					}
					gr_flip();
					i = 10;
				}else
					cur_row = cur_row + 2;
				if(1 == flag){
					ui_clear_rows(cur_row, 4);
					ui_set_color(CL_GREEN);
					//sleep(3);
					if (0 == access("/sys/block/sda",F_OK)){
						cur_row = ui_show_text(cur_row, 0, TEXT_OTG_UDISK_OK);
						//gr_flip();
						fp3 = open("/sys/block/sda/size",O_RDONLY);
						read_len = read(fp3,buffer,sizeof(buffer));
						if(read_len > 0)
							value = strtoul(buffer,&endptr,0);
						close(fp3);
						LOGD("%s /sys/block/sda/size value = %lu, read_len = %d \n",__FUNCTION__, value, read_len);
						sprintf(temp, "%s %ld MB", TEXT_OTG_CAPACITY,(value/2/1024));
						cur_row = ui_show_text(cur_row, 0, temp);
						gr_flip();
						usbin_state = 0;
						i = 10;
					}else{
						ui_set_color(CL_RED);
						if(i){
							sprintf(temp, "%s, %ds", TEXT_OTG_UDISK_SCANING, i);
							ui_show_text(cur_row, 0, temp);
							gr_flip();
							sleep(1);
							i--;
						}else{
							cur_row = ui_show_text(cur_row, 0, TEXT_OTG_UDISK_NO);
							gr_flip();
						}
						usbin_state = 1;
					}
				}
			} else if(NULL!=strstr(sta_insert, "hign")){
				flag = 0;
				ui_clear_rows(cur_row, 4);
				ui_set_color(CL_RED);
				if(j){
					sprintf(temp, "%s, %ds", OTG_DEVICE_INSERT, j);
					cur_row = ui_show_text(cur_row, 0, OTG_UNSERT);
					cur_row = ui_show_text(cur_row, 0, temp);
					gr_flip();
					sleep(1);
					usbin_state = 1;
					j--;
				}else{
					cur_row = ui_show_text(cur_row, 0, TEXT_OTG_UDISK_NO);
					gr_flip();
					sleep(1);
					ui_push_result(RL_FAIL);
					break;
				}
			}
		}else{
			ui_set_color(CL_RED);
			cur_row = ui_show_text(cur_row, 0, OTG_NOT_SUPPORT);
			gr_flip();
		}
	}else{
		ui_set_color(CL_RED);
		cur_row = ui_show_text(cur_row, 0, OTG_NOT_SUPPORT);
		gr_flip();
	}
	//sleep(1);
    }
  return NULL;
}