]> sigrok.org Git - pulseview.git/blobdiff - test/data/logicsnapshot.cpp
Added File>Quit menu item
[pulseview.git] / test / data / logicsnapshot.cpp
index 951e3845b1d5651d2c739bbf88d35261965b9477..67321c863557c564dbe57b92ab1d0663fc3815f3 100644 (file)
@@ -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<LogicSnapshot::EdgePair> edges;
+       s.get_subsampled_edges(edges, 0, 2, 0.0004, 1);
+
+       BOOST_CHECK_EQUAL(edges.size(), 2);
+}
+
 BOOST_AUTO_TEST_SUITE_END()