@@ -5,7 +5,7 @@ use super::*;
55use insta:: { assert_debug_snapshot, assert_snapshot} ;
66
77#[ derive( Clone , Debug , Default , PartialEq , Eq ) ]
8- enum State {
8+ enum Lr {
99 #[ default]
1010 Init ,
1111 Left ,
@@ -16,7 +16,7 @@ enum State {
1616 RightRight ,
1717}
1818
19- impl State {
19+ impl Lr {
2020 event ! {
2121 on_left(
2222 Init => Left ,
@@ -33,12 +33,65 @@ impl State {
3333
3434#[ test]
3535#[ cfg_attr( miri, ignore) ]
36- fn snapshots ( ) {
37- assert_debug_snapshot ! ( State :: test_transitions( ) ) ;
36+ fn lr_snapshots ( ) {
37+ assert_debug_snapshot ! ( Lr :: test_transitions( ) ) ;
3838}
3939
4040#[ test]
4141#[ cfg_attr( miri, ignore) ]
42- fn dot_test ( ) {
43- assert_snapshot ! ( State :: dot( ) ) ;
42+ fn lr_dot_test ( ) {
43+ assert_snapshot ! ( Lr :: dot( ) ) ;
44+ }
45+
46+ #[ derive( Clone , Debug , Default , PartialEq , Eq ) ]
47+ enum Microwave {
48+ #[ default]
49+ Idle ,
50+ OpenIdle ,
51+ SettingTime ,
52+ OpenSettingTime ,
53+ Paused ,
54+ OpenPaused ,
55+ Running ,
56+ }
57+
58+ impl Microwave {
59+ event ! {
60+ on_number(
61+ Idle | SettingTime => SettingTime ,
62+ OpenSettingTime => OpenSettingTime ,
63+ ) ;
64+ on_cancel(
65+ Idle | SettingTime | Paused | Running => Idle ,
66+ OpenIdle | OpenSettingTime | OpenPaused => OpenIdle ,
67+ ) ;
68+ on_start(
69+ SettingTime | Paused | Running => Running ,
70+ ) ;
71+ on_door_open(
72+ Idle => OpenIdle ,
73+ SettingTime => OpenSettingTime ,
74+ Paused | Running => OpenPaused ,
75+ ) ;
76+ on_door_close(
77+ OpenIdle => Idle ,
78+ OpenSettingTime => SettingTime ,
79+ OpenPaused => Paused ,
80+ ) ;
81+ on_time_finished(
82+ Running => Idle ,
83+ ) ;
84+ }
85+ }
86+
87+ #[ test]
88+ #[ cfg_attr( miri, ignore) ]
89+ fn microwave_snapshots ( ) {
90+ assert_debug_snapshot ! ( Microwave :: test_transitions( ) ) ;
91+ }
92+
93+ #[ test]
94+ #[ cfg_attr( miri, ignore) ]
95+ fn microwave_dot_test ( ) {
96+ assert_snapshot ! ( Microwave :: dot( ) ) ;
4497}
0 commit comments