@@ -19,18 +19,18 @@ import Cardano.Mock.ChainSync.Server (IOManager ())
19
19
import qualified Cardano.Mock.Forging.Tx.Alonzo.ScriptsExamples as Examples
20
20
import qualified Cardano.Mock.Forging.Tx.Conway as Conway
21
21
import Cardano.Mock.Forging.Types
22
- import Cardano.Mock.Query ( queryMultiAssetCount , queryMultiAssetMetadataPolicy , queryStakeAddressHashRaw , queryTxMetadataCount )
22
+ import qualified Cardano.Mock.Query as MockQ
23
23
import Cardano.Prelude hiding (head )
24
24
import Data.ByteString.Short (toShort )
25
25
import Data.List.NonEmpty (fromList )
26
26
import qualified Data.Map as Map
27
27
import Test.Cardano.Db.Mock.Config
28
+ import Test.Cardano.Db.Mock.UnifiedApi (withConwayFindLeaderAndSubmit )
28
29
import qualified Test.Cardano.Db.Mock.UnifiedApi as Api
29
30
import qualified Test.Cardano.Db.Mock.UnifiedApi as UnifiedApi
30
31
import Test.Cardano.Db.Mock.Validate
31
32
import Test.Tasty.HUnit (Assertion ())
32
33
import Prelude (head , (!!) )
33
- import Test.Cardano.Db.Mock.UnifiedApi (withConwayFindLeaderAndSubmit )
34
34
35
35
addTxMultiAssetsWhitelist :: IOManager -> [(Text , Text )] -> Assertion
36
36
addTxMultiAssetsWhitelist ioManager metadata = do
@@ -91,9 +91,9 @@ addTxMultiAssetsWhitelist ioManager metadata = do
91
91
assertBlockNoBackoff dbSync 1
92
92
assertAlonzoCounts dbSync (2 , 4 , 1 , 2 , 4 , 2 , 0 , 0 )
93
93
-- create 4 multi-assets but only 2 should be added due to the whitelist
94
- assertEqBackoff dbSync queryMultiAssetCount 2 [] " Expected 2 multi-assets"
94
+ assertEqBackoff dbSync MockQ. queryMultiAssetCount 2 [] " Expected 2 multi-assets"
95
95
-- do the policy match the whitelist
96
- assertEqBackoff dbSync queryMultiAssetMetadataPolicy (Just policyShortBs) [] " Expected correct policy in db"
96
+ assertEqBackoff dbSync MockQ. queryMultiAssetMetadataPolicy (Just policyShortBs) [] " Expected correct policy in db"
97
97
98
98
args = initCommandLineArgs {claFullMode = False }
99
99
testLabel = " conwayConfigMultiAssetsWhitelist"
@@ -140,7 +140,7 @@ addTxMetadataWhitelist ioManager metadata = do
140
140
141
141
assertBlockNoBackoff dbSync 2
142
142
-- Should have first block's tx metadata
143
- assertEqBackoff dbSync queryTxMetadataCount 4 [] " Expected tx metadata"
143
+ assertEqBackoff dbSync MockQ. queryTxMetadataCount 4 [] " Expected tx metadata"
144
144
145
145
args = initCommandLineArgs {claFullMode = False }
146
146
testLabel = " conwayConfigMetadataWhitelist"
@@ -181,7 +181,7 @@ addTxMetadataWhitelistMultiple ioManager metadata = do
181
181
182
182
assertBlockNoBackoff dbSync 2
183
183
-- Should have both block's tx metadata
184
- assertEqBackoff dbSync queryTxMetadataCount 8 [] " Expected tx metadata"
184
+ assertEqBackoff dbSync MockQ. queryTxMetadataCount 8 [] " Expected tx metadata"
185
185
186
186
args = initCommandLineArgs {claFullMode = False }
187
187
testLabel = " conwayConfigMetadataWhitelist"
@@ -214,7 +214,7 @@ addSimpleTxStakeAddrsWhitelist ioManager metadata = do
214
214
assertBlockNoBackoff dbSync 1
215
215
assertTxCount dbSync 12
216
216
217
- assertEqBackoff dbSync queryStakeAddressHashRaw (Just shelleyStakeAddrShortBs) [] " Expected matching stake address"
217
+ assertEqBackoff dbSync MockQ. queryStakeAddressHashRaw (Just shelleyStakeAddrShortBs) [] " Expected matching stake address"
218
218
219
219
testLabel = " conwayAddSimpleTx"
220
220
args = initCommandLineArgs {claFullMode = False }
@@ -235,33 +235,45 @@ addSimpleTxStakeAddrsWhitelist ioManager metadata = do
235
235
}
236
236
}
237
237
238
-
239
238
fullTxStakeAddressWhitelist :: IOManager -> [(Text , Text )] -> Assertion
240
239
fullTxStakeAddressWhitelist ioManager metadata = do
241
240
syncNodeConfig <- mksNodeConfig
242
- withCustomConfigAndDropDB args (Just syncNodeConfig) cfgDir testLabel action ioManager metadata
241
+ withCustomConfig args (Just syncNodeConfig) cfgDir testLabel action ioManager metadata
243
242
where
244
243
action =
245
- \ interpreter mockServer dbSync -> do
244
+ \ interpreter mockServer dbSync -> do
246
245
startDBSync dbSync
247
246
-- Add some blocks with transactions
248
247
void $ withConwayFindLeaderAndSubmit interpreter mockServer $ \ state' ->
249
- sequence
250
- [ Conway. mkFullTx 0 100 state'
251
- -- , Conway.mkFullTx 1 200 state'
252
- ]
248
+ sequence
249
+ [ Conway. mkFullTx 0 100 state'
250
+ , Conway. mkFullTx 1 200 state'
251
+ ]
253
252
-- Wait for them to sync
254
253
assertBlockNoBackoff dbSync 1
255
- assertTxCount dbSync 12
256
- -- assertTxCount dbSync 13
254
+ assertTxCount dbSync 13
255
+ -- Check all tables that stake addresses effect
256
+ assertEqBackoff dbSync MockQ. queryStakeAddressCount 5 [] " Expected 5 stake addresses"
257
+ assertEqBackoff dbSync MockQ. queryCollateralTxOutCount 2 [] " Expected 1 collateral tx out"
258
+ assertEqBackoff dbSync MockQ. queryPoolUpdateCount 5 [] " Expected 3 pool updates"
259
+ assertEqBackoff dbSync MockQ. queryStakeDeRegCount 2 [] " Expected 1 stake deregistration"
260
+ assertEqBackoff dbSync MockQ. queryStakeRegCount 2 [] " Expected 1 stake registration"
261
+ assertEqBackoff dbSync MockQ. countTxOutNonNullStakeAddrIds 2 [] " Expected 1 non-null stake address id"
262
+ -- TODO: Cmdv: Missing tables that are currently blank:
263
+ -- delegation, epoch_stake, pool_owner, stake_deregistration
264
+ -- One's that are needed for sanchonet:
265
+ -- delegation_vote, gov_action_proposal, instant_reward, reserve,
266
+ -- treasury, treasury_withdrawl.
257
267
258
268
testLabel = " fullTxStakeAddressWhitelist"
259
- args = initCommandLineArgs {claFullMode = False }
269
+ args = initCommandLineArgs {claFullMode = True }
260
270
cfgDir = conwayConfigDir
261
- -- shelleyStakeAddr0 = toShort "e0addfa484e8095ff53f45b25cf337923cf79abe6ec192fdf288d621f9"
262
- -- shelleyStakeAddr1 = toShort "e0921c25093b263793a1baf36166b819543f5822c62f72571111111111"
263
- -- shelleyStakeAddr2 = toShort "e0921c25093b263793a1baf36166b819543f5822c62f72573333333333"
264
- -- match all metadata keys of value 1
271
+ shelleyStakeAddr0 = toShort " e0addfa484e8095ff53f45b25cf337923cf79abe6ec192fdf288d621f9"
272
+ shelleyStakeAddr1 = toShort " e0921c25093b263793a1baf36166b819543f5822c62f72571111111111"
273
+ shelleyStakeAddr2 = toShort " e0921c25093b263793a1baf36166b819543f5822c62f72573333333333"
274
+ shelleyStakeAddr3 = toShort " e0000131350ac206583290486460934394208654903261221230945870"
275
+ shelleyStakeAddr4 = toShort " e022236827154873624578632414768234573268457923654973246472"
276
+
265
277
mksNodeConfig :: IO SyncNodeConfig
266
278
mksNodeConfig = do
267
279
initConfigFile <- mkSyncNodeConfig cfgDir args
@@ -271,8 +283,7 @@ fullTxStakeAddressWhitelist ioManager metadata = do
271
283
{ dncInsertOptions =
272
284
dncInsertOptions'
273
285
{ sioShelley =
274
- ShelleyEnable
275
- -- ShelleyStakeAddrs $
276
- -- fromList [shelleyStakeAddr0, shelleyStakeAddr1, shelleyStakeAddr2]
286
+ ShelleyStakeAddrs $
287
+ fromList [shelleyStakeAddr0, shelleyStakeAddr1, shelleyStakeAddr2, shelleyStakeAddr3, shelleyStakeAddr4]
277
288
}
278
289
}
0 commit comments