q.enqueue_strict(c1, 1, Request(1));
q.enqueue_strict(c2, 2, Request(2));
q.enqueue_strict(c1, 2, Request(3));
- q.enqueue(c2, 1, 0, Request(4));
- q.enqueue(c1, 2, 0, Request(5));
+ q.enqueue(c2, 1, 1u, Request(4));
+ q.enqueue(c1, 2, 1u, Request(5));
q.enqueue_strict(c2, 1, Request(6));
ASSERT_FALSE(q.empty());
// non-strict queue ignores priorites, but will divide between
// clients evenly and maintain orders between clients
- q.enqueue(c1, 1, 0, Request(1));
- q.enqueue(c1, 2, 0, Request(2));
- q.enqueue(c2, 3, 0, Request(3));
- q.enqueue(c2, 4, 0, Request(4));
+ q.enqueue(c1, 1, 1u, Request(1));
+ q.enqueue(c1, 2, 1u, Request(2));
+ q.enqueue(c2, 3, 1u, Request(3));
+ q.enqueue(c2, 4, 1u, Request(4));
Request r1, r2;
// non-strict queue ignores priorites, but will divide between
// clients evenly and maintain orders between clients
- q.enqueue(c1, 1, 0, Request(1));
- q.enqueue(c1, 2, 0, Request(2));
- q.enqueue(c2, 3, 0, Request(3));
- q.enqueue(c2, 4, 0, Request(4));
+ q.enqueue(c1, 1, 1u, Request(1));
+ q.enqueue(c1, 2, 1u, Request(2));
+ q.enqueue(c2, 3, 1u, Request(3));
+ q.enqueue(c2, 4, 1u, Request(4));
q.enqueue_strict(c2, 6, Request(6));
q.enqueue_strict(c1, 7, Request(7));
Client c2(2);
Client c3(3);
- q.enqueue(c1, 1, 0, Request(1));
- q.enqueue(c2, 1, 0, Request(2));
- q.enqueue(c3, 1, 0, Request(4));
+ q.enqueue(c1, 1, 1u, Request(1));
+ q.enqueue(c2, 1, 1u, Request(2));
+ q.enqueue(c3, 1, 1u, Request(4));
q.enqueue_strict(c1, 2, Request(8));
q.enqueue_strict(c2, 1, Request(16));
q.enqueue_strict(c3, 3, Request(32));
- q.enqueue(c3, 1, 0, Request(64));
- q.enqueue(c2, 1, 0, Request(128));
- q.enqueue(c1, 1, 0, Request(256));
+ q.enqueue(c3, 1, 1u, Request(64));
+ q.enqueue(c2, 1, 1u, Request(128));
+ q.enqueue(c1, 1, 1u, Request(256));
int out_mask = 2 | 16 | 128;
int in_mask = 1 | 8 | 256;
Client c2(2);
Client c3(3);
- q.enqueue(c1, 1, 0, Request(1));
- q.enqueue(c2, 1, 0, Request(2));
- q.enqueue(c3, 1, 0, Request(3));
+ q.enqueue(c1, 1, 1u, Request(1));
+ q.enqueue(c2, 1, 1u, Request(2));
+ q.enqueue(c3, 1, 1u, Request(3));
q.enqueue_strict(c1, 2, Request(4));
q.enqueue_strict(c2, 1, Request(5));
q.enqueue_strict(c3, 3, Request(6));
- q.enqueue(c3, 1, 0, Request(7));
- q.enqueue(c2, 1, 0, Request(8));
- q.enqueue(c1, 1, 0, Request(9));
+ q.enqueue(c3, 1, 1u, Request(7));
+ q.enqueue(c2, 1, 1u, Request(8));
+ q.enqueue(c1, 1, 1u, Request(9));
std::list<Request> filtered;
ASSERT_TRUE(q.empty());
ASSERT_EQ(0u, q.length());
- q.enqueue(client1, 12, 0, create_snaptrim(100, client1));
+ q.enqueue(client1, 12, 1u, create_snaptrim(100, client1));
q.enqueue_strict(client2, 12, create_snaptrim(101, client2));
- q.enqueue(client2, 12, 0, create_snaptrim(102, client2));
+ q.enqueue(client2, 12, 1u, create_snaptrim(102, client2));
q.enqueue_strict(client3, 12, create_snaptrim(103, client3));
- q.enqueue(client1, 12, 0, create_snaptrim(104, client1));
+ q.enqueue(client1, 12, 1u, create_snaptrim(104, client1));
ASSERT_FALSE(q.empty());
ASSERT_EQ(5u, q.length());
ASSERT_FALSE(q.empty());
ASSERT_EQ(2u, q.length());
- q.enqueue_front(client2, 12, 0, std::move(reqs.back()));
+ q.enqueue_front(client2, 12, 1u, std::move(reqs.back()));
reqs.pop_back();
q.enqueue_strict_front(client3, 12, std::move(reqs.back()));
TEST_F(MClockClientQueueTest, TestEnqueue) {
- q.enqueue(client1, 12, 0, create_snaptrim(100, client1));
- q.enqueue(client2, 12, 0, create_snaptrim(101, client2));
- q.enqueue(client2, 12, 0, create_snaptrim(102, client2));
- q.enqueue(client3, 12, 0, create_snaptrim(103, client3));
- q.enqueue(client1, 12, 0, create_snaptrim(104, client1));
+ q.enqueue(client1, 12, 1u, create_snaptrim(100, client1));
+ q.enqueue(client2, 12, 1u, create_snaptrim(101, client2));
+ q.enqueue(client2, 12, 1u, create_snaptrim(102, client2));
+ q.enqueue(client3, 12, 1u, create_snaptrim(103, client3));
+ q.enqueue(client1, 12, 1u, create_snaptrim(104, client1));
Request r = q.dequeue();
ASSERT_EQ(100u, r.get_map_epoch());
TEST_F(MClockClientQueueTest, TestRemoveByClass) {
- q.enqueue(client1, 12, 0, create_snaptrim(100, client1));
+ q.enqueue(client1, 12, 1u, create_snaptrim(100, client1));
q.enqueue_strict(client2, 12, create_snaptrim(101, client2));
- q.enqueue(client2, 12, 0, create_snaptrim(102, client2));
+ q.enqueue(client2, 12, 1u, create_snaptrim(102, client2));
q.enqueue_strict(client3, 12, create_snaptrim(103, client3));
- q.enqueue(client1, 12, 0, create_snaptrim(104, client1));
+ q.enqueue(client1, 12, 1u, create_snaptrim(104, client1));
std::list<Request> filtered_out;
q.remove_by_class(client2, &filtered_out);