Ejemplo n.º 1
0
int main(void)
{
	struct diag_port *port;
	uint8_t b;
#define BUFLEN 3
	uint8_t bm[BUFLEN+2] = "abcd";
	uint8_t obuf[BUFLEN] = "12";
	uint8_t ibuf[BUFLEN+1];

	port = diag_port_new_bm((uint8_t *)bm, BUFLEN+1, DIAG_PORT_BOTH);
	ASSERT_NOT_NULL(port);
	ASSERT_TRUE(DIAG_PORT_INPUT_P(port));
	ASSERT_TRUE(DIAG_PORT_OUTPUT_P(port));
	ASSERT_TRUE(DIAG_PORT_BM_P(port));

	ASSERT_EQ_INT(1, diag_port_write_byte(port, (uint8_t)'0'));
	ASSERT_EQ_SIZE(1, port->o_pos);
	ASSERT_EQ_INT(1, diag_port_read_byte(port, &b));
	ASSERT_EQ_UINT8('0', b);
	ASSERT_EQ_SIZE(1, port->i_pos);
	ASSERT_EQ_INT(1, diag_port_write_bytes(port, BUFLEN-1, obuf));
	ASSERT_EQ_SIZE(3, port->o_pos);
	ASSERT_EQ_INT(1, diag_port_read_bytes(port, BUFLEN, ibuf));
	ASSERT_EQ_UINT8('1', ibuf[0]);
	ASSERT_EQ_UINT8('2', ibuf[1]);
	ASSERT_EQ_UINT8('d', ibuf[2]);
	ASSERT_EQ_SIZE(4, port->i_pos);

	diag_port_destroy(port);
	return EXIT_SUCCESS;
}
Ejemplo n.º 2
0
// ------------------------------------------------------------------------------------------------
static void TestCaseEnd()
{
    ASSERT_TRUE(ListIsEmpty(&s_outPackets));
    ASSERT_TRUE(ListIsEmpty(&g_tcpActiveConns));
    ASSERT_EQ_INT(g_netBufAllocCount, 0);
    ASSERT_EQ_UINT(outError, 0);
}
Ejemplo n.º 3
0
static void TestScalarProduct1(PTR a, PTR b, int size)
{
   int count;
   for (count = 0; count < 10; ++count) {
      int i;
      FEL expected = FF_ZERO;
      FfMulRow(a,FF_ZERO);
      FfMulRow(b,FF_ZERO);
      for (i = 0; i < size; ++i) {
         FEL f1 = FTab[MtxRandomInt(FfOrder)];
         FEL f2 = FTab[MtxRandomInt(FfOrder)];
         FfInsert(a,i,f1);
         FfInsert(b,i,f2);
         expected = FfAdd(expected,FfMul(f1,f2));
      }
      ASSERT_EQ_INT(FfScalarProduct(a,b), expected);
   }
}
Ejemplo n.º 4
0
static void TestGrMapRow1(Matrix_t *m, int gr_level)
{
   Matrix_t *input = RndMat(FfOrder,m->Nor,m->Nor);
   GreasedMatrix_t *gm = GrMatAlloc(m,gr_level);
   PTR res_std = FfAlloc(1);
   PTR res_grease = FfAlloc(1);
   int i;

   for (i = 0; i < m->Nor; ++i) {
      PTR vec = MatGetPtr(input,i);
      FfSetNoc(m->Noc);
      FfMapRow(vec,m->Data,m->Nor,res_std);
      GrMapRow(vec,gm,res_grease);
      ASSERT_EQ_INT(FfCmpRows(res_grease,res_std), 0);
   }
   SysFree(res_std);
   SysFree(res_grease);
   MatFree(input);
   GrMatFree(gm);
}