MCPcopy Create free account
hub / github.com/cameron314/readerwriterqueue / ReaderWriterQueueTests

Class ReaderWriterQueueTests

tests/unittests/unittests.cpp:89–836  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

87
88
89class ReaderWriterQueueTests : public TestClass<ReaderWriterQueueTests>
90{
91public:
92 ReaderWriterQueueTests()
93 {
94 REGISTER_TEST(create_empty_queue);
95 REGISTER_TEST(enqueue_one);
96 REGISTER_TEST(enqueue_many);
97 REGISTER_TEST(nonempty_destroy);
98 REGISTER_TEST(try_enqueue);
99 REGISTER_TEST(try_dequeue);
100 REGISTER_TEST(peek);
101 REGISTER_TEST(pop);
102 REGISTER_TEST(size_approx);
103 REGISTER_TEST(max_capacity);
104 REGISTER_TEST(threaded);
105 REGISTER_TEST(blocking);
106 REGISTER_TEST(vector);
107#if MOODYCAMEL_HAS_EMPLACE
108 REGISTER_TEST(emplace);
109 REGISTER_TEST(try_enqueue_fail_workaround);
110 REGISTER_TEST(try_emplace_fail);
111#endif
112 REGISTER_TEST(blocking_circular_buffer);
113 }
114
115 bool create_empty_queue()
116 {
117 {
118 ReaderWriterQueue<int> q;
119 }
120
121 {
122 ReaderWriterQueue<int> q(1234);
123 }
124
125 return true;
126 }
127
128 bool enqueue_one()
129 {
130 int item;
131
132 {
133 item = 0;
134 ReaderWriterQueue<int> q(1);
135 q.enqueue(12345);
136 ASSERT_OR_FAIL(q.try_dequeue(item));
137 ASSERT_OR_FAIL(item == 12345);
138 }
139
140 {
141 item = 0;
142 ReaderWriterQueue<int> q(1);
143 ASSERT_OR_FAIL(q.try_enqueue(12345));
144 ASSERT_OR_FAIL(q.try_dequeue(item));
145 ASSERT_OR_FAIL(item == 12345);
146 }

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected