Lines Matching refs:machine
116 auto machine = machineBuilder->Build();
117 EXPECT_EQ(machine, nullptr);
127 auto machine = machineBuilder->Build();
128 ASSERT_NE(machine, nullptr);
129 EXPECT_EQ(machine->GetCurrentState(), STATE_COLLECT_STOPPING);
139 auto machine = machineBuilder->Build();
140 ASSERT_NE(machine, nullptr);
141 EXPECT_EQ(machine->GetMachineName(), "testMachine4");
153 auto machine = machineBuilder->Build();
154 ASSERT_NE(machine, nullptr);
155 EXPECT_EQ(machine->GetCurrentState(), STATE_INIT);
157 machine->Schedule(EVENT_START_AUTH);
158 EXPECT_EQ(machine->EnsureCurrentState(), STATE_VERIFY_STARING);
159 machine->Schedule(EVENT_VERIFY_STARTED);
160 EXPECT_EQ(machine->EnsureCurrentState(), STATE_COLLECT_STARING);
161 machine->Schedule(EVENT_VERIFY_STARTED);
162 EXPECT_EQ(machine->EnsureCurrentState(), STATE_COLLECT_STARING);
171 MockFunction<void(FiniteStateMachine & machine, uint32_t event)> action1;
172 MockFunction<void(FiniteStateMachine & machine, uint32_t event)> action2;
174 auto init = [](FiniteStateMachine &machine) { return machine.GetCurrentState() == STATE_INIT; };
175 auto verify = [](FiniteStateMachine &machine) { return machine.GetCurrentState() == EVENT_VERIFY_STARTED; };
183 [&action1](FiniteStateMachine &machine, uint32_t event) { action1.Call(machine, event); })
185 [&action2](FiniteStateMachine &machine, uint32_t event) { action2.Call(machine, event); });
187 auto machine = machineBuilder->Build();
188 ASSERT_NE(machine, nullptr);
189 EXPECT_EQ(machine->EnsureCurrentState(), STATE_INIT);
191 machine->Schedule(EVENT_START_AUTH);
192 EXPECT_EQ(machine->EnsureCurrentState(), STATE_VERIFY_STARING);
193 machine->Schedule(EVENT_VERIFY_STARTED);
194 EXPECT_EQ(machine->EnsureCurrentState(), STATE_COLLECT_STARING);
195 machine->Schedule(EVENT_VERIFY_STARTED);
196 EXPECT_EQ(machine->EnsureCurrentState(), STATE_COLLECT_STARING);
205 MockFunction<void(FiniteStateMachine & machine, uint32_t event)> action1;
206 MockFunction<void(FiniteStateMachine & machine, uint32_t event)> action2;
208 auto init = [](FiniteStateMachine &machine) { return machine.GetCurrentState() == STATE_INIT; };
209 auto verify = [](FiniteStateMachine &machine) { return machine.GetCurrentState() == EVENT_VERIFY_STARTED; };
218 [&action1](FiniteStateMachine &machine, uint32_t event) {
219 action1.Call(machine, event);
220 machine.Schedule(EVENT_VERIFY_STARTED);
223 [&action2](FiniteStateMachine &machine, uint32_t event) {
224 action2.Call(machine, event);
225 machine.Schedule(EVENT_COLLECT_STARTED);
229 auto machine = machineBuilder->Build();
230 ASSERT_NE(machine, nullptr);
231 EXPECT_EQ(machine->EnsureCurrentState(), STATE_INIT);
233 machine->Schedule(EVENT_START_AUTH);
234 EXPECT_EQ(machine->EnsureCurrentState(), STATE_AUTH_PROCESSING);
245 [](FiniteStateMachine &machine, [[maybe_unused]] uint32_t event) {
246 machine.Schedule(EVENT_VERIFY_STARTED);
247 machine.Schedule(EVENT_COLLECT_STARTED);
248 machine.Schedule(EVENT_USER_CANCEL);
253 auto machine = machineBuilder->Build();
254 ASSERT_NE(machine, nullptr);
255 EXPECT_EQ(machine->EnsureCurrentState(), STATE_INIT);
257 machine->Schedule(EVENT_START_AUTH);
258 EXPECT_EQ(machine->EnsureCurrentState(), STATE_END);
266 machineBuilder->MakeTransition(STATE_INIT, STATE_INIT, STATE_INIT, [](FiniteStateMachine &machine, uint32_t event) {
267 machine.Schedule(STATE_INIT);
268 machine.Schedule(STATE_INIT);
269 machine.Schedule(STATE_INIT);
271 auto machine = machineBuilder->Build();
272 ASSERT_NE(machine, nullptr);
273 EXPECT_EQ(machine->EnsureCurrentState(), STATE_INIT);
275 machine->Schedule(EVENT_START_AUTH);
276 EXPECT_EQ(machine->EnsureCurrentState(), STATE_INIT);
281 MockFunction<void(FiniteStateMachine & machine, uint32_t event)> action;
288 [&action](FiniteStateMachine &machine, [[maybe_unused]] uint32_t event) {
289 action.Call(machine, STATE_INIT);
291 auto machine = machineBuilder->Build();
292 ASSERT_NE(machine, nullptr);
293 machine->Schedule(STATE_INIT);
294 machine->Schedule(STATE_INIT);
295 machine->Schedule(STATE_INIT);
304 MockFunction<void(FiniteStateMachine & machine, uint32_t event)> action;
310 [&action](FiniteStateMachine &machine, [[maybe_unused]] uint32_t event) {
312 action.Call(machine, STATE_INIT);
314 auto machine = machineBuilder->Build();
315 ASSERT_NE(machine, nullptr);
317 machine->SetThreadHandler(handler);
319 machine->Schedule(STATE_INIT);
320 machine->Schedule(STATE_INIT);
321 machine->Schedule(STATE_INIT);
322 machine->Schedule(STATE_INIT);
323 machine->Schedule(STATE_INIT);
325 machine = nullptr;
333 MockFunction<void(FiniteStateMachine & machine, uint32_t event)> action;
339 [&action](FiniteStateMachine &machine, [[maybe_unused]] uint32_t event) {
340 action.Call(machine, STATE_INIT);
342 auto machine = machineBuilder->Build();
343 ASSERT_NE(machine, nullptr);
345 machine->Schedule(STATE_INIT);
346 machine->Schedule(STATE_INIT);
347 machine->Schedule(STATE_INIT);
348 machine->Schedule(STATE_INIT);
349 machine->Schedule(STATE_INIT);
350 machine = nullptr;
355 static void GetTestMachine(std::shared_ptr<FiniteStateMachine> &machine,
356 MockFunction<void(FiniteStateMachine &machine, uint32_t event)> &action,
357 MockFunction<void(FiniteStateMachine &machine, uint32_t event)> &enter,
358 MockFunction<void(FiniteStateMachine &machine, uint32_t event)> &leave)
364 [&action](FiniteStateMachine &machine, uint32_t event) {
365 action.Call(machine, event);
366 machine.Schedule(EVENT_VERIFY_STARTED);
367 machine.Schedule(EVENT_COLLECT_STARTED);
370 [&action](FiniteStateMachine &machine, uint32_t event) { action.Call(machine, event); });
372 [&action](FiniteStateMachine &machine, uint32_t event) { action.Call(machine, event); });
374 [&action](FiniteStateMachine &machine, uint32_t event) { action.Call(machine, event); });
377 [&enter](FiniteStateMachine &machine, uint32_t event) { enter.Call(machine, event); });
379 [&leave](FiniteStateMachine &machine, uint32_t event) { leave.Call(machine, event); });
382 [&enter](FiniteStateMachine &machine, uint32_t event) { enter.Call(machine, event); });
384 [&leave](FiniteStateMachine &machine, uint32_t event) { leave.Call(machine, event); });
387 [&enter](FiniteStateMachine &machine, uint32_t event) { enter.Call(machine, event); });
389 [&leave](FiniteStateMachine &machine, uint32_t event) { leave.Call(machine, event); });
392 [&enter](FiniteStateMachine &machine, uint32_t event) { enter.Call(machine, event); });
394 [&leave](FiniteStateMachine &machine, uint32_t event) { leave.Call(machine, event); });
397 [&enter](FiniteStateMachine &machine, uint32_t event) { enter.Call(machine, event); });
399 machine = machineBuilder->Build();
405 MockFunction<void(FiniteStateMachine & machine, uint32_t event)> action;
406 MockFunction<void(FiniteStateMachine & machine, uint32_t event)> enter;
407 MockFunction<void(FiniteStateMachine & machine, uint32_t event)> leave;
426 std::shared_ptr<FiniteStateMachine> machine;
427 GetTestMachine(machine, action, enter, leave);
428 ASSERT_NE(machine, nullptr);
430 machine->SetThreadHandler(handler);
432 machine->Schedule(EVENT_START_AUTH);
434 machine->Schedule(EVENT_USER_CANCEL);
435 EXPECT_EQ(STATE_END, machine->EnsureCurrentState());