@@ -651,19 +651,25 @@ def check_pool_data( # noqa: C901
651651
652652 errors_list = []
653653
654- if ledger_pool_data ["publicKey" ] != db_pool_data .hash :
654+ public_key = (
655+ ledger_pool_data .get ("publicKey" ) # In cardano-node < 10.6.0
656+ or helpers .decode_bech32 (pool_id )
657+ )
658+
659+ if public_key != db_pool_data .hash :
655660 errors_list .append (
656- "'publicKey' value is different than expected; "
657- f"Expected: { ledger_pool_data [ 'publicKey' ] } vs Returned: { db_pool_data .hash } "
661+ "key hash value is different than expected; "
662+ f"Expected: { public_key } vs Returned: { db_pool_data .hash } "
658663 )
659664
660- if ledger_pool_data ["cost" ] != db_pool_data .fixed_cost :
665+ sps_cost = helpers .get_pool_param ("spsCost" , pool_params = ledger_pool_data )
666+ if sps_cost != db_pool_data .fixed_cost :
661667 errors_list .append (
662668 "'cost' value is different than expected; "
663- f"Expected: { ledger_pool_data [ 'cost' ] } vs Returned: { db_pool_data .fixed_cost } "
669+ f"Expected: { sps_cost } vs Returned: { db_pool_data .fixed_cost } "
664670 )
665671
666- metadata = ledger_pool_data . get ( "metadata" ) or {}
672+ metadata = helpers . get_pool_param ( "spsMetadata" , pool_params = ledger_pool_data ) or {}
667673
668674 metadata_hash = metadata .get ("hash" ) or ""
669675 if metadata_hash != db_pool_data .metadata_hash :
@@ -681,45 +687,51 @@ def check_pool_data( # noqa: C901
681687 f"Returned: { db_pool_data .metadata_url } "
682688 )
683689
684- if sorted (ledger_pool_data ["owners" ]) != sorted (db_pool_data .owners ):
690+ sps_owners = helpers .get_pool_param ("spsOwners" , pool_params = ledger_pool_data )
691+ if sorted (sps_owners ) != sorted (db_pool_data .owners ):
685692 errors_list .append (
686693 "'owners' value is different than expected; "
687- f"Expected: { ledger_pool_data [ 'owners' ] } vs Returned: { db_pool_data .owners } "
694+ f"Expected: { sps_owners } vs Returned: { db_pool_data .owners } "
688695 )
689696
690- if ledger_pool_data ["vrf" ] != db_pool_data .vrf_key_hash :
697+ sps_vrf = helpers .get_pool_param ("spsVrf" , pool_params = ledger_pool_data )
698+ if sps_vrf != db_pool_data .vrf_key_hash :
691699 errors_list .append (
692700 "'vrf' value is different than expected; "
693- f"Expected: { ledger_pool_data [ 'vrf' ] } vs Returned: { db_pool_data .vrf_key_hash } "
701+ f"Expected: { sps_vrf } vs Returned: { db_pool_data .vrf_key_hash } "
694702 )
695703
696- if ledger_pool_data ["pledge" ] != db_pool_data .pledge :
704+ sps_pledge = helpers .get_pool_param ("spsPledge" , pool_params = ledger_pool_data )
705+ if sps_pledge != db_pool_data .pledge :
697706 errors_list .append (
698707 "'pledge' value is different than expected; "
699- f"Expected: { ledger_pool_data [ 'pledge' ] } vs Returned: { db_pool_data .pledge } "
708+ f"Expected: { sps_pledge } vs Returned: { db_pool_data .pledge } "
700709 )
701710
702- if ledger_pool_data ["margin" ] != db_pool_data .margin :
711+ sps_margin = helpers .get_pool_param ("spsMargin" , pool_params = ledger_pool_data )
712+ if sps_margin != db_pool_data .margin :
703713 errors_list .append (
704714 "'margin' value is different than expected; "
705- f"Expected: { ledger_pool_data [ 'margin' ] } vs Returned: { db_pool_data .margin } "
715+ f"Expected: { sps_margin } vs Returned: { db_pool_data .margin } "
706716 )
707717
708- ledger_reward_credential = ledger_pool_data ["rewardAccount" ]["credential" ]
718+ sps_reward_account = helpers .get_pool_param ("spsRewardAccount" , pool_params = ledger_pool_data )
719+ ledger_reward_credential = sps_reward_account ["credential" ]
709720 # The "KeyHash" is present in cardano-node >= 8.4.0
710- ledger_reward_address = (
711- ledger_reward_credential . get ( "key hash" ) or ledger_reward_credential [ "keyHash" ]
721+ ledger_reward_address = ledger_reward_credential . get ( "keyHash" ) or ledger_reward_credential . get (
722+ "key hash"
712723 )
713724 if ledger_reward_address != db_pool_data .reward_addr :
714725 errors_list .append (
715726 "'reward address' value is different than expected; "
716727 f"Expected: { ledger_reward_address } vs Returned: { db_pool_data .reward_addr } "
717728 )
718729
719- if ledger_pool_data ["relays" ] and ledger_pool_data ["relays" ] != db_pool_data .relays :
730+ sps_relays = helpers .get_pool_param ("spsRelays" , pool_params = ledger_pool_data )
731+ if sps_relays and sps_relays != db_pool_data .relays :
720732 errors_list .append (
721733 "'relays' value is different than expected; "
722- f"Expected: { ledger_pool_data [ 'relays' ] } vs Returned: { db_pool_data .relays } "
734+ f"Expected: { sps_relays } vs Returned: { db_pool_data .relays } "
723735 )
724736
725737 if errors_list :
@@ -739,7 +751,8 @@ def check_pool_off_chain_data(
739751 msg = f"no off chain data for pool { pool_id } "
740752 raise DbSyncNoResponseError (msg )
741753
742- metadata_hash = (ledger_pool_data .get ("metadata" ) or {}).get ("hash" ) or ""
754+ metadata = helpers .get_pool_param ("spsMetadata" , pool_params = ledger_pool_data ) or {}
755+ metadata_hash = metadata .get ("hash" ) or ""
743756 db_metadata_hash = db_pool_off_chain_data [0 ].hash .hex ()
744757
745758 assert metadata_hash == db_metadata_hash , (
@@ -762,7 +775,8 @@ def check_pool_off_chain_fetch_error(
762775 raise DbSyncNoResponseError (msg )
763776
764777 fetch_error_str = db_pool_off_chain_fetch_error [0 ].fetch_error or ""
765- metadata_url = (ledger_pool_data .get ("metadata" ) or {}).get ("url" ) or ""
778+ metadata = helpers .get_pool_param ("spsMetadata" , pool_params = ledger_pool_data ) or {}
779+ metadata_url = metadata .get ("url" ) or ""
766780
767781 assert (
768782 f'Connection failure error when fetching metadata from PoolUrl "{ metadata_url } "'
0 commit comments