pmt_write now displays vector and tuple elements.
[debian/gnuradio] / gruel / src / lib / pmt / qa_pmt_prims.cc
index cf1ee0142206aafc74fbb10b3f57d929b0f4c660..899674bbb18b4d2deaaff8cb60902c927b7a2f33 100644 (file)
@@ -216,6 +216,7 @@ qa_pmt_prims::test_tuples()
     pmt_vector_set(v, i, s[i]);
   }
 
+
   pmt_t t;
 
   t = pmt_make_tuple();
@@ -224,6 +225,11 @@ qa_pmt_prims::test_tuples()
   t = pmt_make_tuple(s[0]);
   check_tuple(1, s, t);
 
+  CPPUNIT_ASSERT(pmt_is_vector(v));
+  CPPUNIT_ASSERT(!pmt_is_tuple(v));
+  CPPUNIT_ASSERT(pmt_is_tuple(t));
+  CPPUNIT_ASSERT(!pmt_is_vector(t));
+
   t = pmt_make_tuple(s[0], s[1]);
   check_tuple(2, s, t);
 
@@ -253,13 +259,16 @@ qa_pmt_prims::test_tuples()
 
   t = pmt_make_tuple(s[0], s[1], s[2]);
   CPPUNIT_ASSERT_THROW(pmt_tuple_ref(t, 3), pmt_out_of_range);
+  CPPUNIT_ASSERT_THROW(pmt_vector_ref(t, 0), pmt_wrong_type);
+  CPPUNIT_ASSERT_THROW(pmt_tuple_ref(v, 0), pmt_wrong_type);
 
   t = pmt_make_tuple(s[0], s[1], s[2], s[3], s[4], s[5], s[6], s[7], s[8], s[9]);
-  check_tuple(10, s, t);
-
   pmt_t t2 = pmt_to_tuple(v);
   CPPUNIT_ASSERT_EQUAL(size_t(10), pmt_length(v));
   CPPUNIT_ASSERT(pmt_equal(t, t2));
+  //std::cout << v << std::endl;
+  //std::cout << t2 << std::endl;
+
   
   t = pmt_make_tuple(s[0], s[1], s[2]);
   pmt_t list0 = pmt_list3(s[0], s[1], s[2]);