@@ -10,7 +10,7 @@ TEST(intrusive_stack, construct) {
10
10
}
11
11
12
12
TEST (intrusive_stack, construct_node) {
13
- concur::intrusive_stack<int >::node n;
13
+ concur::intrusive_stack<int >::node n{} ;
14
14
EXPECT_TRUE (n.next .load (std::memory_order_relaxed) == nullptr );
15
15
}
16
16
@@ -26,18 +26,19 @@ TEST(intrusive_stack, moveable) {
26
26
27
27
TEST (intrusive_stack, push_one) {
28
28
concur::intrusive_stack<int > s;
29
- concur::intrusive_stack<int >::node n;
29
+ concur::intrusive_stack<int >::node n{ 123 } ;
30
30
s.push (&n);
31
31
EXPECT_FALSE (s.empty ());
32
32
EXPECT_TRUE (s.top_ .load (std::memory_order_relaxed) == &n);
33
33
EXPECT_TRUE (n.next .load (std::memory_order_relaxed) == nullptr );
34
+ EXPECT_EQ (n.value , 123 );
34
35
}
35
36
36
37
TEST (intrusive_stack, push_many) {
37
38
concur::intrusive_stack<int > s;
38
- concur::intrusive_stack<int >::node n1;
39
- concur::intrusive_stack<int >::node n2;
40
- concur::intrusive_stack<int >::node n3;
39
+ concur::intrusive_stack<int >::node n1{ 111111 } ;
40
+ concur::intrusive_stack<int >::node n2{ 222222 } ;
41
+ concur::intrusive_stack<int >::node n3{ 333333 } ;
41
42
s.push (&n1);
42
43
s.push (&n2);
43
44
s.push (&n3);
@@ -46,16 +47,20 @@ TEST(intrusive_stack, push_many) {
46
47
EXPECT_TRUE (n3.next .load (std::memory_order_relaxed) == &n2);
47
48
EXPECT_TRUE (n2.next .load (std::memory_order_relaxed) == &n1);
48
49
EXPECT_TRUE (n1.next .load (std::memory_order_relaxed) == nullptr );
50
+ EXPECT_EQ (n1.value , 111111 );
51
+ EXPECT_EQ (n2.value , 222222 );
52
+ EXPECT_EQ (n3.value , 333333 );
49
53
}
50
54
51
55
TEST (intrusive_stack, push_same) {
52
56
concur::intrusive_stack<int > s;
53
- concur::intrusive_stack<int >::node n;
57
+ concur::intrusive_stack<int >::node n{ 321 } ;
54
58
s.push (&n);
55
59
s.push (&n);
56
60
EXPECT_FALSE (s.empty ());
57
61
EXPECT_TRUE (s.top_ .load (std::memory_order_relaxed) == &n);
58
62
EXPECT_TRUE (n.next .load (std::memory_order_relaxed) == &n);
63
+ EXPECT_EQ (n.value , 321 );
59
64
}
60
65
61
66
TEST (intrusive_stack, pop_empty) {
@@ -65,19 +70,20 @@ TEST(intrusive_stack, pop_empty) {
65
70
66
71
TEST (intrusive_stack, pop_one) {
67
72
concur::intrusive_stack<int > s;
68
- concur::intrusive_stack<int >::node n;
73
+ concur::intrusive_stack<int >::node n{ 112233 } ;
69
74
s.push (&n);
70
75
EXPECT_TRUE (s.pop () == &n);
71
76
EXPECT_TRUE (s.empty ());
72
77
EXPECT_TRUE (s.top_ .load (std::memory_order_relaxed) == nullptr );
73
78
EXPECT_TRUE (n.next .load (std::memory_order_relaxed) == nullptr );
79
+ EXPECT_EQ (n.value , 112233 );
74
80
}
75
81
76
82
TEST (intrusive_stack, pop_many) {
77
83
concur::intrusive_stack<int > s;
78
- concur::intrusive_stack<int >::node n1;
79
- concur::intrusive_stack<int >::node n2;
80
- concur::intrusive_stack<int >::node n3;
84
+ concur::intrusive_stack<int >::node n1{ 111111 } ;
85
+ concur::intrusive_stack<int >::node n2{ 222222 } ;
86
+ concur::intrusive_stack<int >::node n3{ 333333 } ;
81
87
s.push (&n1);
82
88
s.push (&n2);
83
89
s.push (&n3);
@@ -89,4 +95,7 @@ TEST(intrusive_stack, pop_many) {
89
95
EXPECT_TRUE (n3.next .load (std::memory_order_relaxed) == &n2);
90
96
EXPECT_TRUE (n2.next .load (std::memory_order_relaxed) == &n1);
91
97
EXPECT_TRUE (n1.next .load (std::memory_order_relaxed) == nullptr );
98
+ EXPECT_EQ (n1.value , 111111 );
99
+ EXPECT_EQ (n2.value , 222222 );
100
+ EXPECT_EQ (n3.value , 333333 );
92
101
}
0 commit comments