X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=test%2Fdata%2Flogicsnapshot.cpp;h=67321c863557c564dbe57b92ab1d0663fc3815f3;hp=951e3845b1d5651d2c739bbf88d35261965b9477;hb=2a032dcb6151bd8b019c88f6ef1db1a8c1e5b61e;hpb=6092d96f5d3c4c870b6e476237a105b5f037df70 diff --git a/test/data/logicsnapshot.cpp b/test/data/logicsnapshot.cpp index 951e3845..67321c86 100644 --- a/test/data/logicsnapshot.cpp +++ b/test/data/logicsnapshot.cpp @@ -348,7 +348,7 @@ BOOST_AUTO_TEST_CASE(LongPulses) //----- Create a LogicSnapshot -----// sr_datafeed_logic logic; logic.unitsize = 8; - logic.length = Length; + logic.length = Length * 8; logic.data = (uint64_t*)new uint64_t[Length]; uint64_t *p = (uint64_t*)logic.data; @@ -509,4 +509,28 @@ BOOST_AUTO_TEST_CASE(WideData) delete [] data; } +/* + * This test is a replica of sixteen.sr attached to Bug #33. + */ +BOOST_AUTO_TEST_CASE(Sixteen) +{ + const int Length = 8; + uint16_t data[Length]; + + sr_datafeed_logic logic; + logic.unitsize = sizeof(data[0]); + logic.length = Length * sizeof(data[0]); + logic.data = data; + + for(int i = 0; i < Length; i++) + data[i] = 0xFFFE; + + LogicSnapshot s(logic); + + vector edges; + s.get_subsampled_edges(edges, 0, 2, 0.0004, 1); + + BOOST_CHECK_EQUAL(edges.size(), 2); +} + BOOST_AUTO_TEST_SUITE_END()