@@ -42,6 +42,7 @@ import Cardano.Wallet.DB.Store.Delegations.Store
42
42
import Cardano.Wallet.Delegation.Model
43
43
( Operation (.. )
44
44
, Status (.. )
45
+ , Transition (.. )
45
46
, status
46
47
)
47
48
import Cardano.Wallet.Delegation.ModelSpec
@@ -112,16 +113,20 @@ conf =
112
113
}
113
114
114
115
pattern Register :: slot -> Operation slot drep pool
115
- pattern Register i = VoteAndDelegate Nothing Nothing i
116
+ pattern Register i = ApplyTransition ( VoteAndDelegate Nothing Nothing ) i
116
117
117
118
pattern Delegate :: pool -> slot -> Operation slot drep pool
118
- pattern Delegate p i = VoteAndDelegate Nothing (Just p) i
119
+ pattern Delegate p i = ApplyTransition ( VoteAndDelegate Nothing (Just p) ) i
119
120
120
121
pattern Vote :: drep -> slot -> Operation slot drep pool
121
- pattern Vote v i = VoteAndDelegate (Just v) Nothing i
122
+ pattern Vote v i = ApplyTransition (VoteAndDelegate (Just v) Nothing ) i
123
+
124
+ pattern Deregister' :: slot -> Operation slot drep pool
125
+ pattern Deregister' i = ApplyTransition (VoteAndDelegate Nothing Nothing ) i
122
126
123
127
pattern DelegateAndVote :: pool -> drep -> slot -> Operation slot drep pool
124
- pattern DelegateAndVote p v i = VoteAndDelegate (Just v) (Just p) i
128
+ pattern DelegateAndVote p v i
129
+ = ApplyTransition (VoteAndDelegate (Just v) (Just p)) i
125
130
126
131
pattern Registered :: Status drep pool
127
132
pattern Registered = Active Nothing Nothing
@@ -151,20 +156,20 @@ units = withInitializedWalletProp $ \_ runQ -> do
151
156
runQ $ unitTestStore mempty mkStoreDelegations $ do
152
157
unit " reg-dereg" $ do
153
158
applyS $ Register 0
154
- applyS $ Deregister 0
159
+ applyS $ Deregister' 0
155
160
observeStatus 0 Inactive
156
161
unit " reg-dereg, different time" $ do
157
162
applyS $ Register 0
158
163
observeStatus 0 Registered
159
- applyS $ Deregister 1
164
+ applyS $ Deregister' 1
160
165
observeStatus 0 Registered
161
166
observeStatus 1 Inactive
162
167
unit " dereg-reg" $ do
163
- applyS $ Deregister 0
168
+ applyS $ Deregister' 0
164
169
applyS $ Register 0
165
170
observeStatus 0 Registered
166
171
unit " dereg-reg different time" $ do
167
- applyS $ Deregister 0
172
+ applyS $ Deregister' 0
168
173
applyS $ Register 1
169
174
observeStatus 1 Registered
170
175
unit " reg-deleg" $ do
@@ -184,7 +189,7 @@ units = withInitializedWalletProp $ \_ runQ -> do
184
189
unit " reg-deleg-dereg" $ do
185
190
applyS $ Register 0
186
191
applyS $ Delegate p0 0
187
- applyS $ Deregister 1
192
+ applyS $ Deregister' 1
188
193
observeStatus 2 Inactive
189
194
unit " reg-vote" $ do
190
195
applyS $ Register 0
@@ -203,7 +208,7 @@ units = withInitializedWalletProp $ \_ runQ -> do
203
208
unit " reg-vote-dereg" $ do
204
209
applyS $ Register 0
205
210
applyS $ Vote v0 0
206
- applyS $ Deregister 1
211
+ applyS $ Deregister' 1
207
212
observeStatus 2 Inactive
208
213
unit " reg-deleg-and-vote" $ do
209
214
applyS $ Register 0
@@ -222,7 +227,7 @@ units = withInitializedWalletProp $ \_ runQ -> do
222
227
unit " reg-deleg-and-vote-dereg" $ do
223
228
applyS $ Register 0
224
229
applyS $ DelegateAndVote p0 v0 0
225
- applyS $ Deregister 1
230
+ applyS $ Deregister' 1
226
231
observeStatus 2 Inactive
227
232
unit " reg-deleg-then-vote" $ do
228
233
applyS $ Register 0
0 commit comments