diff options
author | Alexandros Frantzis <alexandros.frantzis@collabora.com> | 2017-09-15 09:45:40 +0300 |
---|---|---|
committer | Alexandros Frantzis <alexandros.frantzis@collabora.com> | 2017-09-26 13:09:35 +0300 |
commit | 68223500ea8a7608b1446ac39428118e9b16f625 (patch) | |
tree | 23ab6a3926746612d0f6207cb86634b62ec145fa /libsync | |
parent | dea5e081ac0f94a83650a600af881b529817b6fd (diff) | |
download | system_core-68223500ea8a7608b1446ac39428118e9b16f625.tar.gz system_core-68223500ea8a7608b1446ac39428118e9b16f625.tar.bz2 system_core-68223500ea8a7608b1446ac39428118e9b16f625.zip |
libsync: Add fence info tests
This patch adds regression tests to check that the fence info returned
by libsync contains valid data.
Test: sync-unit-tests
Change-Id: I0c57c49b7be563efc9a43f12381059f20e0a4e52
Signed-off-by: Alexandros Frantzis <alexandros.frantzis@collabora.com>
Diffstat (limited to 'libsync')
-rw-r--r-- | libsync/tests/sync_test.cpp | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/libsync/tests/sync_test.cpp b/libsync/tests/sync_test.cpp index f08e97e2c..0fb86d6fc 100644 --- a/libsync/tests/sync_test.cpp +++ b/libsync/tests/sync_test.cpp @@ -448,6 +448,41 @@ TEST(FenceTest, MultiTimelineWait) { ASSERT_EQ(mergedFence.wait(100), 0); } +TEST(FenceTest, GetInfoActive) { + SyncTimeline timeline; + ASSERT_TRUE(timeline.isValid()); + + SyncFence fence(timeline, 1); + ASSERT_TRUE(fence.isValid()); + + vector<SyncPointInfo> info = fence.getInfo(); + ASSERT_EQ(info.size(), 1); + + ASSERT_FALSE(info[0].driverName.empty()); + ASSERT_FALSE(info[0].objectName.empty()); + ASSERT_EQ(info[0].timeStampNs, 0); + ASSERT_EQ(info[0].status, 0); +} + +TEST(FenceTest, GetInfoSignaled) { + SyncTimeline timeline; + ASSERT_TRUE(timeline.isValid()); + + SyncFence fence(timeline, 1); + ASSERT_TRUE(fence.isValid()); + + ASSERT_EQ(timeline.inc(1), 0); + ASSERT_EQ(fence.wait(), 0); + + vector<SyncPointInfo> info = fence.getInfo(); + ASSERT_EQ(info.size(), 1); + + ASSERT_FALSE(info[0].driverName.empty()); + ASSERT_FALSE(info[0].objectName.empty()); + ASSERT_GT(info[0].timeStampNs, 0); + ASSERT_EQ(info[0].status, 1); +} + TEST(StressTest, TwoThreadsSharedTimeline) { const int iterations = 1 << 16; int counter = 0; |