void test_update_data_2(UBFH *p_ub) { short s; long l; char c; float f; double d; char buf[100]; BFLDLEN len; char carr[] = "CARRAY1 TEST STRING DATA1 --- SOME --- LONG - STUFF"; /* OCC 0 */ assert_equal(Bget(p_ub, T_SHORT_FLD, 0, (char *)&s, 0), SUCCEED); assert_equal(s, 881); assert_equal(Bget(p_ub, T_LONG_FLD, 0, (char *)&l, 0), SUCCEED); assert_equal(l, -10211); assert_equal(Bget(p_ub, T_CHAR_FLD, 0, (char *)&c, 0), SUCCEED); assert_equal(c, '1'); assert_equal(Bget(p_ub, T_FLOAT_FLD, 0, (char *)&f, 0), SUCCEED); assert_double_equal(f, 117.31); assert_equal(Bget(p_ub, T_DOUBLE_FLD, 0, (char *)&d, 0), SUCCEED); assert_double_equal(d, 112312.1111); assert_equal(Bget(p_ub, T_STRING_FLD, 0, (char *)buf, 0), SUCCEED); assert_string_equal(buf, "TEST STR VAL1M THIS IS LOGN STRING"); len = sizeof(buf); assert_equal(Bget(p_ub, T_CARRAY_FLD, 0, (char *)buf, &len), SUCCEED); assert_equal(strncmp(buf, carr, strlen(carr)), 0); /* OCC 1 */ assert_equal(Bget(p_ub, T_SHORT_FLD, 6, (char *)&s, 0), SUCCEED); assert_equal(s, 81); assert_equal(Bget(p_ub, T_LONG_FLD, 6, (char *)&l, 0), SUCCEED); assert_equal(l, -211); assert_equal(Bget(p_ub, T_CHAR_FLD, 6, (char *)&c, 0), SUCCEED); assert_equal(c, '.'); assert_equal(Bget(p_ub, T_FLOAT_FLD, 6, (char *)&f, 0), SUCCEED); assert_double_equal(f, 11.31); assert_equal(Bget(p_ub, T_DOUBLE_FLD, 6, (char *)&d, 0), SUCCEED); assert_double_equal(d, 11231.1111); assert_equal(Bget(p_ub, T_STRING_FLD, 6, (char *)buf, 0), SUCCEED); assert_string_equal(buf, "3EST STRING ARRAY2 THIS IS EVEN MORE LONGER"); len = sizeof(buf); carr[0] = '2'; assert_equal(Bget(p_ub, T_CARRAY_FLD, 6, (char *)buf, &len), SUCCEED); assert_equal(strncmp(buf, carr, strlen(carr)), 0); /* Test FLD2 */ assert_equal(Bget(p_ub, T_SHORT_2_FLD, 1, (char *)&s, 0), SUCCEED); assert_equal(s, 2121); assert_equal(Bget(p_ub, T_LONG_2_FLD, 1, (char *)&l, 0), SUCCEED); assert_equal(l, 2121); assert_equal(Bget(p_ub, T_CHAR_2_FLD, 1, (char *)&c, 0), SUCCEED); assert_equal(c, 'c'); assert_equal(Bget(p_ub, T_FLOAT_2_FLD, 1, (char *)&f, 0), SUCCEED); assert_double_equal(f, 1227); assert_equal(Bget(p_ub, T_DOUBLE_2_FLD, 1, (char *)&d, 0), SUCCEED); assert_double_equal(d, 1232.1); assert_equal(Bget(p_ub, T_STRING_2_FLD, 1, (char *)buf, 0), SUCCEED); assert_string_equal(buf, "XTEST STR VAL"); len = sizeof(buf); carr[0] = 'G'; assert_equal(Bget(p_ub, T_CARRAY_2_FLD, 1, (char *)buf, &len), SUCCEED); assert_equal(strncmp(buf, carr, strlen(carr)), 0); }
void test_update_data_1(UBFH *p_ub) { short s; long l; char c; float f; double d; char buf[100]; BFLDLEN len; char carr[] = "CARRAY1 TEST STRING DATA"; /* OCC 0 */ assert_equal(Bget(p_ub, T_SHORT_FLD, 0, (char *)&s, 0), SUCCEED); assert_equal(s, 88); assert_equal(Bget(p_ub, T_LONG_FLD, 0, (char *)&l, 0), SUCCEED); assert_equal(l, -1021); assert_equal(Bget(p_ub, T_CHAR_FLD, 0, (char *)&c, 0), SUCCEED); assert_equal(c, 'c'); assert_equal(Bget(p_ub, T_FLOAT_FLD, 0, (char *)&f, 0), SUCCEED); assert_double_equal(f, 17.31); assert_equal(Bget(p_ub, T_DOUBLE_FLD, 0, (char *)&d, 0), SUCCEED); assert_double_equal(d, 12312.1111); assert_equal(Bget(p_ub, T_STRING_FLD, 0, (char *)buf, 0), SUCCEED); assert_string_equal(buf, "TEST STR VAL"); len = sizeof(buf); assert_equal(Bget(p_ub, T_CARRAY_FLD, 0, (char *)buf, &len), SUCCEED); assert_equal(strncmp(buf, carr, strlen(carr)), 0); /* OCC 1 */ assert_equal(Bget(p_ub, T_SHORT_FLD, 5, (char *)&s, 0), SUCCEED); assert_equal(s, 8); assert_equal(Bget(p_ub, T_LONG_FLD, 5, (char *)&l, 0), SUCCEED); assert_equal(l, -21); assert_equal(Bget(p_ub, T_CHAR_FLD, 5, (char *)&c, 0), SUCCEED); assert_equal(c, '.'); assert_equal(Bget(p_ub, T_FLOAT_FLD, 5, (char *)&f, 0), SUCCEED); assert_double_equal(f, 1.31); assert_equal(Bget(p_ub, T_DOUBLE_FLD, 5, (char *)&d, 0), SUCCEED); assert_double_equal(d, 1231.1111); assert_equal(Bget(p_ub, T_STRING_FLD, 5, (char *)buf, 0), SUCCEED); assert_string_equal(buf, "TEST STRING ARRAY2"); len = sizeof(buf); carr[0] = 'Y'; assert_equal(Bget(p_ub, T_CARRAY_FLD, 5, (char *)buf, &len), SUCCEED); assert_equal(strncmp(buf, carr, strlen(carr)), 0); /* Test FLD2 */ assert_equal(Bget(p_ub, T_SHORT_2_FLD, 8, (char *)&s, 0), SUCCEED); assert_equal(s, 212); assert_equal(Bget(p_ub, T_LONG_2_FLD, 8, (char *)&l, 0), SUCCEED); assert_equal(l, 212); assert_equal(Bget(p_ub, T_CHAR_2_FLD, 8, (char *)&c, 0), SUCCEED); assert_equal(c, 'b'); assert_equal(Bget(p_ub, T_FLOAT_2_FLD, 8, (char *)&f, 0), SUCCEED); assert_double_equal(f, 12127); assert_equal(Bget(p_ub, T_DOUBLE_2_FLD, 8, (char *)&d, 0), SUCCEED); assert_double_equal(d, 1231232.1); assert_equal(Bget(p_ub, T_STRING_2_FLD, 8, (char *)buf, 0), SUCCEED); assert_string_equal(buf, "XTEST STR VAL"); len = sizeof(buf); carr[0] = 'X'; assert_equal(Bget(p_ub, T_CARRAY_2_FLD, 8, (char *)buf, &len), SUCCEED); assert_equal(strncmp(buf, carr, strlen(carr)), 0); }
Ensure double_differences_do_not_matter_past_significant_figures() { significant_figures_for_assert_double_are(3); assert_double_equal(1.113, 1.115); assert_double_equal(1113, 1115); assert_double_equal(1113000, 1115000); }
Ensure one_should_assert_long_double_equal_to_one() { long double x = 1; long double y = 1; assert_double_equal(x, y); }
Ensure one_should_assert_double_equal_to_one() { assert_double_equal(1, 1); }
Ensure one_should_assert_float_equal_to_one() { float x = 1; float y = 1; assert_double_equal(x, y); }
/** * Basic test for Badd & Bget */ void test_Badd_str(void) { char pan1[32] = "THIS IS 1"; char pan2[32] = "THIS IS 2"; char pan3[32] = "THIS IS 3"; char pan4[32] = "THIS IS 4"; double amttxn1=10021.123; double amttxn2=20021.123; double amttxn3=321.123; double amttxn4=11.123; double amttxn5=33.123; double tmp_amttxn=0; char tmp_buf[32+8]; /* 8 for alignment */ int org_used = Bused(M_p_ub1); assert_equal( Badd(M_p_ub1, T_STRING_FLD, pan1, 0), SUCCEED); assert_equal( Badd(M_p_ub1, T_STRING_FLD, pan2, 0), SUCCEED); assert_equal( Badd(M_p_ub1, T_STRING_FLD, pan3, 0), SUCCEED); assert_equal( Badd(M_p_ub1, T_STRING_FLD, pan4, 0), SUCCEED); /* Get the data from buffer */ assert_equal( Bget(M_p_ub1, T_STRING_FLD, 0, tmp_buf, 0), SUCCEED); assert_string_equal(pan1, tmp_buf); assert_equal( Bget(M_p_ub1, T_STRING_FLD, 1, tmp_buf, 0), SUCCEED); assert_string_equal(pan2, tmp_buf); assert_equal( Bget(M_p_ub1, T_STRING_FLD, 2, tmp_buf, 0), SUCCEED); assert_string_equal(pan3, tmp_buf); assert_equal( Bget(M_p_ub1, T_STRING_FLD, 3, tmp_buf, 0), SUCCEED); assert_string_equal(pan4, tmp_buf); /* Now add something other, some double value? */ assert_equal( Badd(M_p_ub1, T_DOUBLE_4_FLD, (char *)&amttxn1, 0), SUCCEED); assert_equal( Badd(M_p_ub1, T_DOUBLE_4_FLD, (char *)&amttxn2, 0), SUCCEED); assert_equal( Badd(M_p_ub1, T_DOUBLE_4_FLD, (char *)&amttxn3, 0), SUCCEED); assert_equal( Badd(M_p_ub1, T_DOUBLE_4_FLD, (char *)&amttxn4, 0), SUCCEED); /* Do not have space availabel in buffer */ assert_equal( Badd(M_p_ub1, T_DOUBLE_4_FLD, (char *)&amttxn5, 0), FAIL); /* Compare the values from buffer */ assert_equal( Bget(M_p_ub1, T_DOUBLE_4_FLD, 0, (char *)&tmp_amttxn, 0), SUCCEED); assert_double_equal(tmp_amttxn, 10021.123); assert_equal( Bget(M_p_ub1, T_DOUBLE_4_FLD, 1, (char *)&tmp_amttxn, 0), SUCCEED); assert_double_equal(tmp_amttxn, 20021.123); assert_equal( Bget(M_p_ub1, T_DOUBLE_4_FLD, 2, (char *)&tmp_amttxn, 0), SUCCEED); assert_double_equal(tmp_amttxn, 321.123); assert_equal( Bget(M_p_ub1, T_DOUBLE_4_FLD, 3, (char *)&tmp_amttxn, 0), SUCCEED); assert_double_equal(tmp_amttxn, 11.123); /* Do not have space in buffer! */ assert_equal( Bget(M_p_ub1, T_DOUBLE_4_FLD, 4, (char *)&tmp_amttxn, 0), FAIL); /* Summ the stuff up (+4 - EOS symbols in buffer)*/ assert_equal(org_used+strlen(pan1)+strlen(pan2)+strlen(pan3)+strlen(pan4)+4+ sizeof(amttxn1)+sizeof(amttxn2)+sizeof(amttxn3)+sizeof(amttxn4)+ 8*sizeof(BFLDID)+8/*align*/, Bused(M_p_ub1)); }