示例#1
0
gint testMove2(autounit_test_t *t) {
	Stack stkFrom,stkTo;
	QueryNode tmp;

	stk_init(&stkFrom);
	stk_init(&stkTo);

	tmp.operator = QPP_OP_OR;
	stk_push(&stkFrom,&tmp);	

	tmp.operator = QPP_OP_AND;
	stk_push(&stkFrom,&tmp);	

	tmp.operator = QPP_OP_NEAR;
	stk_push(&stkFrom,&tmp);	

	stk_moveTillParen(&stkFrom,&stkTo);

	au_assert(t,"",stkTo.queryNodes[0].operator == QPP_OP_NEAR);
	au_assert(t,"",stkTo.queryNodes[1].operator == QPP_OP_AND);
	au_assert(t,"",stkTo.queryNodes[2].operator == QPP_OP_OR);
	au_assert(t,"",stkTo.index == 3);
	
	return TRUE;
}
示例#2
0
gint testErrors(autounit_test_t *t) {
	QueryNode tmp;

	stk_init(&stack);

	nRet = stk_pop(&stack,&tmp);

	au_assert(t,"",nRet == STACK_UNDERFLOW);
	return TRUE;
}
示例#3
0
gint testPushPop(autounit_test_t *t) {
	QueryNode queryNode;

	stk_init(&stack);

	queryNode.operator = QPP_OP_STAR;
	stk_push(&stack,&queryNode);
	stk_pop(&stack,&queryNode);

	au_assert(t,"",queryNode.operator == QPP_OP_STAR);
	return TRUE;
}
示例#4
0
gint
test_hash(autounit_test_t *t) 
{
  di_hash_table *table;
  int i,nbr_of_insert=20;
  char str[KEY_VALUE_NBR][STRING_MAX_LENGTH];
  di_rstring key[KEY_VALUE_NBR];


  table = di_hash_table_new(di_rstring_hash, di_rstring_equal);

  for (i=0;i<nbr_of_insert;i++) {
    snprintf(str[i],STRING_MAX_LENGTH,"%d",i);
    get_key(str[i],&key[i]);
    di_hash_table_insert (table, &key[i], str[i]);
  }
  au_assert(t,di_hash_table_size(table) == nbr_of_insert,"hash table size is different with the number of data inserted");

  return TRUE;
}
示例#5
0
gint testInit(autounit_test_t *t) {
	nRet = stk_init(&stack);
	au_assert(t,"",nRet == SUCCESS);
	return TRUE;
}
示例#6
0
gint testMorePushPop(autounit_test_t *t) {
	QueryNode queryNode[10];
	QueryNode tmp;

	queryNode[0].operator = QPP_OP_AND;

	queryNode[1].operator = QPP_OP_OR;
	queryNode[1].num_of_operands = 2;

	queryNode[2].operator = QPP_OP_STAR;
	queryNode[2].num_of_operands = 1;
	queryNode[2].opParam = STAR_BEGIN;

	queryNode[3].operator = QPP_OP_BEG_PHRASE;

	queryNode[4].operator = -1;
	queryNode[4].wordid = 4;

	queryNode[5].operator = QPP_OP_END_PHRASE;

	queryNode[6].operator = -1;
	queryNode[6].wordid = 6;


	stk_init(&stack);

	for (i = 0; i<7; i++)
		stk_push(&stack,&(queryNode[i]) );
	
	stk_pop(&stack,&tmp);
	au_assert(t,"",tmp.operator == -1);
	au_assert(t,"",tmp.wordid == 6);

	stk_pop(&stack,&tmp);
	au_assert(t,"",tmp.operator == QPP_OP_END_PHRASE);

	stk_pop(&stack,&tmp);
	au_assert(t,"",tmp.operator == -1);
	au_assert(t,"",tmp.wordid == 4);

	stk_pop(&stack,&tmp);
	au_assert(t,"",tmp.operator == QPP_OP_BEG_PHRASE);


	stk_pop(&stack,&tmp);
	au_assert(t,"",tmp.operator == QPP_OP_STAR);
	au_assert(t,"",tmp.num_of_operands == 1);
	au_assert(t,"",tmp.opParam == STAR_BEGIN);

	stk_pop(&stack,&tmp);
	au_assert(t,"",tmp.operator == QPP_OP_OR);
	au_assert(t,"",tmp.num_of_operands == 2);

	stk_pop(&stack,&tmp);
	au_assert(t,"",tmp.operator == QPP_OP_AND);

	nRet = stk_pop(&stack,&tmp);
	au_assert(t,"",nRet == STACK_UNDERFLOW);
	return TRUE;
}