+LOCAL UNITTEST_RESULT test_tadstack_2()
+{
+ tadstack_t stack;
+ taddecoder_t decoder;
+ tadsegment segment;
+ Bool cont;
+ TADSTACK_RESULT stk_result;
+ UNITTEST_RESULT ok = UNITTEST_RESULT_PASS;
+
+ tadstack_initialize(&stack);
+ taddecoder_initialize(&decoder, (TC*)test_tadstack_testdata01, sizeof(test_tadstack_testdata01)/sizeof(TC));
+
+ for (;;) {
+ cont = taddecoder_next(&decoder, &segment);
+ if (cont == False) {
+ break;
+ }
+
+ stk_result = tadstack_inputsegment(&stack, &segment);
+ if (stk_result == TADSTACK_RESULT_FORMAT_ERROR) {
+ printf("format error\n");
+ ok = UNITTEST_RESULT_FAIL;
+ }
+ }
+
+ taddecoder_finalize(&decoder);
+ tadstack_finalize(&stack);
+
+ return ok;
+}
+