00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #include <boost/test/unit_test.hpp>
00020 #include "torc/bitstream/Frame.hpp"
00021
00022 namespace torc {
00023 namespace bitstream {
00024
00025 BOOST_AUTO_TEST_SUITE(bitstream)
00026
00027
00028 BOOST_AUTO_TEST_CASE(FrameUnitTest) {
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042 BOOST_REQUIRE(true);
00043 const boost::uint32_t length = 3;
00044 VirtexFrame::word_t data[length] = { 0, 1, 2 };
00045 VirtexFrame virtexFrame1(length, data);
00046 BOOST_CHECK_EQUAL(virtexFrame1.getLength(), length);
00047 BOOST_CHECK_EQUAL(virtexFrame1.isUsed(), true);
00048 BOOST_CHECK_EQUAL(virtexFrame1.isDirty(), false);
00049 const VirtexFrame::word_t* p1 = virtexFrame1.getWords();
00050 for(boost::uint32_t i = 0; i < length; i++) {
00051 BOOST_CHECK_EQUAL(virtexFrame1[i], data[i]);
00052 BOOST_CHECK_EQUAL(*(p1 + i), data[i]);
00053 }
00054 VirtexFrame virtexFrame2(length);
00055 virtexFrame2.touch();
00056 BOOST_CHECK_EQUAL(virtexFrame2.getLength(), length);
00057 BOOST_CHECK_EQUAL(virtexFrame2.isUsed(), true);
00058 BOOST_CHECK_EQUAL(virtexFrame2.isDirty(), true);
00059 const VirtexFrame::word_t* p2 = virtexFrame2.getWords();
00060 BOOST_CHECK(p2 == 0);
00061 for(boost::uint32_t i = 0; i < length; i++) {
00062 BOOST_CHECK_EQUAL(virtexFrame2[i], 0u);
00063 }
00064 }
00065
00066 BOOST_AUTO_TEST_SUITE_END()
00067
00068 }
00069 }