22
22
using utest::v1::Case;
23
23
24
24
25
- volatile bool callback_called;
25
+ bool callback_called;
26
26
27
27
void tiemout_callback (void )
28
28
{
29
- callback_called = true ;
29
+ core_util_atomic_store (& callback_called, true ) ;
30
30
}
31
31
32
32
template <int N>
@@ -49,7 +49,7 @@ void critical_section_raii_recursive(Timeout &timeout)
49
49
wait_us (wait_time_us);
50
50
}
51
51
TEST_ASSERT_TRUE (core_util_in_critical_section ());
52
- TEST_ASSERT_FALSE (callback_called);
52
+ TEST_ASSERT_FALSE (core_util_atomic_load (& callback_called) );
53
53
}
54
54
55
55
@@ -82,31 +82,30 @@ void test_C_API(void)
82
82
83
83
TEST_ASSERT_FALSE (core_util_in_critical_section ());
84
84
85
- callback_called = false ;
85
+ core_util_atomic_store (& callback_called, false ) ;
86
86
timeout.attach_us (callback (tiemout_callback), timeout_time_us);
87
87
wait_us (wait_time_us);
88
- TEST_ASSERT_TRUE (callback_called);
88
+ TEST_ASSERT_TRUE (core_util_atomic_exchange (& callback_called, false ) );
89
89
90
90
for (int i = 0 ; i < N; i++) {
91
91
core_util_critical_section_enter ();
92
92
TEST_ASSERT_TRUE (core_util_in_critical_section ());
93
93
}
94
94
95
- callback_called = false ;
96
95
timeout.attach_us (callback (tiemout_callback), timeout_time_us);
97
96
wait_us (wait_time_us);
98
- TEST_ASSERT_FALSE (callback_called);
97
+ TEST_ASSERT_FALSE (core_util_atomic_load (& callback_called) );
99
98
TEST_ASSERT_TRUE (core_util_in_critical_section ());
100
99
101
100
for (int i = 0 ; i < N - 1 ; i++) {
102
101
core_util_critical_section_exit ();
103
102
TEST_ASSERT_TRUE (core_util_in_critical_section ());
104
- TEST_ASSERT_FALSE (callback_called);
103
+ TEST_ASSERT_FALSE (core_util_atomic_load (& callback_called) );
105
104
}
106
105
107
106
core_util_critical_section_exit ();
108
107
TEST_ASSERT_FALSE (core_util_in_critical_section ());
109
- TEST_ASSERT_TRUE (callback_called);
108
+ TEST_ASSERT_TRUE (core_util_atomic_load (& callback_called) );
110
109
}
111
110
112
111
/* * Template for tests
@@ -138,16 +137,15 @@ void test_CPP_API_constructor_destructor(void)
138
137
139
138
TEST_ASSERT_FALSE (core_util_in_critical_section ());
140
139
141
- callback_called = false ;
140
+ core_util_atomic_store (& callback_called, false ) ;
142
141
timeout.attach_us (callback (tiemout_callback), timeout_time_us);
143
142
wait_us (wait_time_us);
144
- TEST_ASSERT_TRUE (callback_called);
143
+ TEST_ASSERT_TRUE (core_util_atomic_exchange (& callback_called, false ) );
145
144
146
- callback_called = false ;
147
145
critical_section_raii_recursive<N>(timeout);
148
146
149
147
TEST_ASSERT_FALSE (core_util_in_critical_section ());
150
- TEST_ASSERT_TRUE (callback_called);
148
+ TEST_ASSERT_TRUE (core_util_atomic_load (& callback_called) );
151
149
}
152
150
153
151
/* * Template for tests
@@ -179,31 +177,30 @@ void test_CPP_API_enable_disable(void)
179
177
180
178
TEST_ASSERT_FALSE (core_util_in_critical_section ());
181
179
182
- callback_called = false ;
180
+ core_util_atomic_store (& callback_called, false ) ;
183
181
timeout.attach_us (callback (tiemout_callback), timeout_time_us);
184
182
wait_us (wait_time_us);
185
- TEST_ASSERT_TRUE (callback_called);
183
+ TEST_ASSERT_TRUE (core_util_atomic_exchange (& callback_called, false ) );
186
184
187
185
for (int i = 0 ; i < N; i++) {
188
186
CriticalSectionLock::enable ();
189
187
TEST_ASSERT_TRUE (core_util_in_critical_section ());
190
188
}
191
189
192
- callback_called = false ;
193
190
timeout.attach_us (callback (tiemout_callback), timeout_time_us);
194
191
wait_us (wait_time_us);
195
- TEST_ASSERT_FALSE (callback_called);
192
+ TEST_ASSERT_FALSE (core_util_atomic_load (& callback_called) );
196
193
TEST_ASSERT_TRUE (core_util_in_critical_section ());
197
194
198
195
for (int i = 0 ; i < N - 1 ; i++) {
199
196
CriticalSectionLock::disable ();
200
197
TEST_ASSERT_TRUE (core_util_in_critical_section ());
201
- TEST_ASSERT_FALSE (callback_called);
198
+ TEST_ASSERT_FALSE (core_util_atomic_load (& callback_called) );
202
199
}
203
200
204
201
CriticalSectionLock::disable ();
205
202
TEST_ASSERT_FALSE (core_util_in_critical_section ());
206
- TEST_ASSERT_TRUE (callback_called);
203
+ TEST_ASSERT_TRUE (core_util_atomic_load (& callback_called) );
207
204
}
208
205
209
206
0 commit comments