11{-# LANGUAGE CPP #-}
22{-# LANGUAGE NumericUnderscores #-}
3+ {-# LANGUAGE OverloadedStrings #-}
34{-# LANGUAGE RankNTypes #-}
45{-# LANGUAGE TypeApplications #-}
5- {-# LANGUAGE OverloadedStrings #-}
6-
76
87module Test.Cardano.Db.Mock.Unit.Conway.Config.Schema where
98
10-
119import qualified Cardano.Db as DB
10+ import qualified Cardano.Db.Schema.Variants.TxOutAddress as DB
11+ import qualified Cardano.Db.Schema.Variants.TxOutCore as DB
1212import Cardano.Mock.ChainSync.Server (IOManager (), ServerHandle )
1313import Cardano.Mock.Forging.Interpreter (Interpreter )
1414import qualified Cardano.Mock.Forging.Tx.Conway as Conway
15- import Cardano.Mock.Forging.Types (UTxOIndex (.. ), CardanoBlock )
16- import Cardano.Prelude hiding (show , putStrLn )
15+ import Cardano.Mock.Forging.Types (CardanoBlock , UTxOIndex (.. ))
16+ import Cardano.Prelude hiding (putStrLn , show )
1717import qualified Data.Text as Text
1818import Test.Cardano.Db.Mock.Config
1919import Test.Cardano.Db.Mock.UnifiedApi
2020import Test.Cardano.Db.Mock.Validate
2121import Test.Tasty.HUnit (Assertion , assertBool )
22- import qualified Cardano.Db.Schema.Variants.TxOutCore as DB
23- import qualified Cardano.Db.Schema.Variants.TxOutAddress as DB
2422
2523------------------------------------------------------------------------------
2624-- Main Schema Validation Test
@@ -30,112 +28,109 @@ import qualified Cardano.Db.Schema.Variants.TxOutAddress as DB
3028validateSchemaColumns :: IOManager -> [(Text , Text )] -> Assertion
3129validateSchemaColumns =
3230 withFullConfigDropDb conwayConfigDir testLabel $ \ interpreter mockServer dbSync -> do
33- startDBSync dbSync
34-
35- -- Setup test data
36- setupTestData interpreter mockServer dbSync
37-
38- -- Cardano.Db.Schema.Core.Base
39- validateCall dbSync (Proxy @ DB. Block )
40- validateCall dbSync (Proxy @ DB. Tx )
41- validateCall dbSync (Proxy @ DB. TxMetadata )
42- validateCall dbSync (Proxy @ DB. TxIn )
43- validateCall dbSync (Proxy @ DB. CollateralTxIn )
44- validateCall dbSync (Proxy @ DB. ReferenceTxIn )
45- validateCall dbSync (Proxy @ DB. ReverseIndex )
46- validateCall dbSync (Proxy @ DB. TxCbor )
47- validateCall dbSync (Proxy @ DB. Datum )
48- validateCall dbSync (Proxy @ DB. Script )
49- validateCall dbSync (Proxy @ DB. Redeemer )
50- validateCall dbSync (Proxy @ DB. RedeemerData )
51- validateCall dbSync (Proxy @ DB. ExtraKeyWitness )
52- validateCall dbSync (Proxy @ DB. SlotLeader )
53- validateCall dbSync (Proxy @ DB. SchemaVersion )
54- validateCall dbSync (Proxy @ DB. Meta )
55- validateCall dbSync (Proxy @ DB. Withdrawal )
56- validateCall dbSync (Proxy @ DB. ExtraMigrations )
57-
58- -- Cardano.Db.Schema.Core.Pool
59- validateCall dbSync (Proxy @ DB. PoolHash )
60- validateCall dbSync (Proxy @ DB. PoolStat )
61- validateCall dbSync (Proxy @ DB. PoolUpdate )
62- validateCall dbSync (Proxy @ DB. PoolMetadataRef )
63- validateCall dbSync (Proxy @ DB. PoolOwner )
64- validateCall dbSync (Proxy @ DB. PoolRetire )
65- validateCall dbSync (Proxy @ DB. PoolRelay )
66- validateCall dbSync (Proxy @ DB. DelistedPool )
67- validateCall dbSync (Proxy @ DB. ReservedPoolTicker )
68-
69- -- Cardano.Db.Schema.Core.OffChain
70- validateCall dbSync (Proxy @ DB. OffChainPoolData )
71- validateCall dbSync (Proxy @ DB. OffChainPoolFetchError )
72- validateCall dbSync (Proxy @ DB. OffChainVoteData )
73- validateCall dbSync (Proxy @ DB. OffChainVoteGovActionData )
74- validateCall dbSync (Proxy @ DB. OffChainVoteDrepData )
75- validateCall dbSync (Proxy @ DB. OffChainVoteAuthor )
76- validateCall dbSync (Proxy @ DB. OffChainVoteReference )
77- validateCall dbSync (Proxy @ DB. OffChainVoteExternalUpdate )
78- validateCall dbSync (Proxy @ DB. OffChainVoteFetchError )
79-
80- -- Cardano.Db.Schema.Core.MultiAsset
81- validateCall dbSync (Proxy @ DB. MultiAsset )
82- validateCall dbSync (Proxy @ DB. MaTxMint )
83-
84- -- Cardano.Db.Schema.Core.StakeDeligation
85- validateCall dbSync (Proxy @ DB. StakeAddress )
86- validateCall dbSync (Proxy @ DB. StakeRegistration )
87- validateCall dbSync (Proxy @ DB. StakeDeregistration )
88- validateCall dbSync (Proxy @ DB. Delegation )
89- validateCall dbSync (Proxy @ DB. Reward )
90- validateCall dbSync (Proxy @ DB. RewardRest )
91- validateCall dbSync (Proxy @ DB. EpochStake )
92- validateCall dbSync (Proxy @ DB. EpochStakeProgress )
93-
94- -- Cardano.Db.Schema.Core.EpochAndProtocol
95- validateCall dbSync (Proxy @ DB. Epoch )
96- validateCall dbSync (Proxy @ DB. EpochParam )
97- validateCall dbSync (Proxy @ DB. EpochState )
98- validateCall dbSync (Proxy @ DB. AdaPots )
99- validateCall dbSync (Proxy @ DB. PotTransfer )
100- validateCall dbSync (Proxy @ DB. Treasury )
101- validateCall dbSync (Proxy @ DB. Reserve )
102- validateCall dbSync (Proxy @ DB. CostModel )
103-
104- -- Cardano.Db.Schema.Variants.TxOutCore
105- validateCall dbSync (Proxy @ DB. TxOutCore )
106- validateCall dbSync (Proxy @ DB. CollateralTxOutCore )
107- validateCall dbSync (Proxy @ DB. MaTxOutCore )
108-
31+ startDBSync dbSync
32+
33+ -- Setup test data
34+ setupTestData interpreter mockServer dbSync
35+
36+ -- Cardano.Db.Schema.Core.Base
37+ validateCall dbSync (Proxy @ DB. Block )
38+ validateCall dbSync (Proxy @ DB. Tx )
39+ validateCall dbSync (Proxy @ DB. TxMetadata )
40+ validateCall dbSync (Proxy @ DB. TxIn )
41+ validateCall dbSync (Proxy @ DB. CollateralTxIn )
42+ validateCall dbSync (Proxy @ DB. ReferenceTxIn )
43+ validateCall dbSync (Proxy @ DB. ReverseIndex )
44+ validateCall dbSync (Proxy @ DB. TxCbor )
45+ validateCall dbSync (Proxy @ DB. Datum )
46+ validateCall dbSync (Proxy @ DB. Script )
47+ validateCall dbSync (Proxy @ DB. Redeemer )
48+ validateCall dbSync (Proxy @ DB. RedeemerData )
49+ validateCall dbSync (Proxy @ DB. ExtraKeyWitness )
50+ validateCall dbSync (Proxy @ DB. SlotLeader )
51+ validateCall dbSync (Proxy @ DB. SchemaVersion )
52+ validateCall dbSync (Proxy @ DB. Meta )
53+ validateCall dbSync (Proxy @ DB. Withdrawal )
54+ validateCall dbSync (Proxy @ DB. ExtraMigrations )
55+
56+ -- Cardano.Db.Schema.Core.Pool
57+ validateCall dbSync (Proxy @ DB. PoolHash )
58+ validateCall dbSync (Proxy @ DB. PoolStat )
59+ validateCall dbSync (Proxy @ DB. PoolUpdate )
60+ validateCall dbSync (Proxy @ DB. PoolMetadataRef )
61+ validateCall dbSync (Proxy @ DB. PoolOwner )
62+ validateCall dbSync (Proxy @ DB. PoolRetire )
63+ validateCall dbSync (Proxy @ DB. PoolRelay )
64+ validateCall dbSync (Proxy @ DB. DelistedPool )
65+ validateCall dbSync (Proxy @ DB. ReservedPoolTicker )
66+
67+ -- Cardano.Db.Schema.Core.OffChain
68+ validateCall dbSync (Proxy @ DB. OffChainPoolData )
69+ validateCall dbSync (Proxy @ DB. OffChainPoolFetchError )
70+ validateCall dbSync (Proxy @ DB. OffChainVoteData )
71+ validateCall dbSync (Proxy @ DB. OffChainVoteGovActionData )
72+ validateCall dbSync (Proxy @ DB. OffChainVoteDrepData )
73+ validateCall dbSync (Proxy @ DB. OffChainVoteAuthor )
74+ validateCall dbSync (Proxy @ DB. OffChainVoteReference )
75+ validateCall dbSync (Proxy @ DB. OffChainVoteExternalUpdate )
76+ validateCall dbSync (Proxy @ DB. OffChainVoteFetchError )
77+
78+ -- Cardano.Db.Schema.Core.MultiAsset
79+ validateCall dbSync (Proxy @ DB. MultiAsset )
80+ validateCall dbSync (Proxy @ DB. MaTxMint )
81+
82+ -- Cardano.Db.Schema.Core.StakeDeligation
83+ validateCall dbSync (Proxy @ DB. StakeAddress )
84+ validateCall dbSync (Proxy @ DB. StakeRegistration )
85+ validateCall dbSync (Proxy @ DB. StakeDeregistration )
86+ validateCall dbSync (Proxy @ DB. Delegation )
87+ validateCall dbSync (Proxy @ DB. Reward )
88+ validateCall dbSync (Proxy @ DB. RewardRest )
89+ validateCall dbSync (Proxy @ DB. EpochStake )
90+ validateCall dbSync (Proxy @ DB. EpochStakeProgress )
91+
92+ -- Cardano.Db.Schema.Core.EpochAndProtocol
93+ validateCall dbSync (Proxy @ DB. Epoch )
94+ validateCall dbSync (Proxy @ DB. EpochParam )
95+ validateCall dbSync (Proxy @ DB. EpochState )
96+ validateCall dbSync (Proxy @ DB. AdaPots )
97+ validateCall dbSync (Proxy @ DB. PotTransfer )
98+ validateCall dbSync (Proxy @ DB. Treasury )
99+ validateCall dbSync (Proxy @ DB. Reserve )
100+ validateCall dbSync (Proxy @ DB. CostModel )
101+
102+ -- Cardano.Db.Schema.Variants.TxOutCore
103+ validateCall dbSync (Proxy @ DB. TxOutCore )
104+ validateCall dbSync (Proxy @ DB. CollateralTxOutCore )
105+ validateCall dbSync (Proxy @ DB. MaTxOutCore )
109106 where
110107 testLabel = " validateSchemaColumns"
111108
112-
113109validateVariantAddressSchemaColumns :: IOManager -> [(Text , Text )] -> Assertion
114110validateVariantAddressSchemaColumns =
115111 withCustomConfigDropDb args (Just $ configPruneForceTxIn True ) cfgDir testLabel $ \ interpreter mockServer dbSync -> do
116- startDBSync dbSync
117-
118- -- Setup test data
119- setupTestData interpreter mockServer dbSync
112+ startDBSync dbSync
120113
121- -- Cardano.Db.Schema.Variants.TxOutAddress
122- validateCall dbSync (Proxy @ DB. TxOutAddress )
123- validateCall dbSync (Proxy @ DB. CollateralTxOutAddress )
124- validateCall dbSync (Proxy @ DB. Address )
125- validateCall dbSync (Proxy @ DB. MaTxOutAddress )
114+ -- Setup test data
115+ setupTestData interpreter mockServer dbSync
126116
117+ -- Cardano.Db.Schema.Variants.TxOutAddress
118+ validateCall dbSync (Proxy @ DB. TxOutAddress )
119+ validateCall dbSync (Proxy @ DB. CollateralTxOutAddress )
120+ validateCall dbSync (Proxy @ DB. Address )
121+ validateCall dbSync (Proxy @ DB. MaTxOutAddress )
127122 where
128123 args = initCommandLineArgs
129124 cfgDir = conwayConfigDir
130125 testLabel = " validateVariantAddressSchemaColumns"
131126
132-
133127-- | Setup minimal test data for validation
134128setupTestData :: Interpreter -> ServerHandle IO CardanoBlock -> DBSyncEnv -> IO ()
135129setupTestData interpreter mockServer dbSync = do
136130 void $ forgeAndSubmitBlocks interpreter mockServer 5
137- void $ withConwayFindLeaderAndSubmitTx interpreter mockServer $
138- Conway. mkPaymentTx (UTxOIndex 0 ) (UTxOIndex 1 ) 10_000 10_000 0
131+ void $
132+ withConwayFindLeaderAndSubmitTx interpreter mockServer $
133+ Conway. mkPaymentTx (UTxOIndex 0 ) (UTxOIndex 1 ) 10_000 10_000 0
139134 assertBlockNoBackoff dbSync 6
140135
141136------------------------------------------------------------------------------
0 commit comments