web3-wizzard-lib 0.0.2__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- core/__init__.py +1 -0
- core/contract/__init__.py +0 -0
- core/contract/aavecontract.py +36 -0
- core/contract/alienswap_contract.py +21 -0
- core/contract/arena_games_contract.py +16 -0
- core/contract/basiliskcontract.py +58 -0
- core/contract/bilinear_contract.py +22 -0
- core/contract/bungee.py +33 -0
- core/contract/coredao_contract.py +35 -0
- core/contract/coredao_from_contract.py +40 -0
- core/contract/dmail_send_mail.py +18 -0
- core/contract/empty_nft.py +18 -0
- core/contract/era_name.py +23 -0
- core/contract/eralendcontract.py +34 -0
- core/contract/eth_scroll_bridge_contract.py +25 -0
- core/contract/frog_war_contract.py +48 -0
- core/contract/horizondex_quoter.py +14 -0
- core/contract/horizondex_router.py +91 -0
- core/contract/imagine_contract.py +18 -0
- core/contract/izumi.py +63 -0
- core/contract/kreatorland_contract.py +21 -0
- core/contract/l0_claim.py +254 -0
- core/contract/l2_telegraph.py +21 -0
- core/contract/layerbank_price.py +18 -0
- core/contract/layerbank_token.py +29 -0
- core/contract/layerbankcontract.py +59 -0
- core/contract/linea_day_2_contract.py +19 -0
- core/contract/linea_day_3_contract.py +55 -0
- core/contract/linea_ens_names_contract.py +55 -0
- core/contract/lineaswaprouter.py +52 -0
- core/contract/maverick_multicall.py +52 -0
- core/contract/mendi_finance_contract.py +11 -0
- core/contract/mendi_token.py +25 -0
- core/contract/merkly_minter.py +47 -0
- core/contract/micro3_contract.py +18 -0
- core/contract/mute_router.py +93 -0
- core/contract/nidum_contract.py +44 -0
- core/contract/nile_contract.py +60 -0
- core/contract/nomis_attest_contract.py +40 -0
- core/contract/nomis_contract.py +40 -0
- core/contract/octomos.py +31 -0
- core/contract/odos.py +104 -0
- core/contract/omnisea.py +29 -0
- core/contract/orbiter_starknet.py +30 -0
- core/contract/pancake_pool.py +19 -0
- core/contract/pancake_quoter.py +20 -0
- core/contract/pancake_router.py +72 -0
- core/contract/rage_claim.py +24 -0
- core/contract/reactor_fusion_contract.py +78 -0
- core/contract/readon_contract.py +19 -0
- core/contract/rubyscore_contract.py +31 -0
- core/contract/satoshi_universe_contract.py +29 -0
- core/contract/scroll_bridge_contract.py +24 -0
- core/contract/scroll_canvas_mint_contract.py +26 -0
- core/contract/scroll_oracle.py +11 -0
- core/contract/snap_contract.py +16 -0
- core/contract/social_scan_contract.py +20 -0
- core/contract/stargate_farming.py +37 -0
- core/contract/stargate_router.py +84 -0
- core/contract/stargate_router_eth.py +41 -0
- core/contract/stargate_token_pool.py +46 -0
- core/contract/stargate_v2_contract.py +36 -0
- core/contract/syncswap_classic_pool.py +15 -0
- core/contract/syncswap_classic_pool_factory.py +15 -0
- core/contract/syncswap_pool.py +25 -0
- core/contract/syncswap_router.py +123 -0
- core/contract/tavaera_id.py +18 -0
- core/contract/tavaera_mint.py +17 -0
- core/contract/townstory_bonus_contract.py +19 -0
- core/contract/townstory_contract.py +21 -0
- core/contract/velocore_lens.py +44 -0
- core/contract/velocore_pool.py +198 -0
- core/contract/velocore_router.py +80 -0
- core/contract/woofi_swap.py +29 -0
- core/contract/xy_finance_contract.py +87 -0
- core/contract/yoddlo_contract.py +19 -0
- core/contract/yuliverse_contract.py +36 -0
- core/contract/zebra_contract.py +68 -0
- core/contract/zerolend_contract.py +34 -0
- core/contract/zerolend_liq_contract.py +20 -0
- core/contract/zkdx_contract.py +40 -0
- core/contract/zkdx_data.py +14 -0
- core/contract/zks.py +24 -0
- core/modules/__init__.py +0 -0
- core/modules/ads_import_proxy.py +52 -0
- core/modules/airdrop_printer.py +80 -0
- core/modules/bank/__init__.py +0 -0
- core/modules/bank/aave.py +25 -0
- core/modules/bank/bank.py +15 -0
- core/modules/bank/bank_module.py +99 -0
- core/modules/bank/basilisk.py +25 -0
- core/modules/bank/eralend.py +25 -0
- core/modules/bank/layerbank.py +116 -0
- core/modules/bank/mendi_finance.py +57 -0
- core/modules/bank/reactorfusion.py +25 -0
- core/modules/bank/zerolend.py +36 -0
- core/modules/bridge/__init__.py +0 -0
- core/modules/bridge/bridge.py +8 -0
- core/modules/bridge/coredao_bridge_sub.py +47 -0
- core/modules/bridge/orbiter_sub.py +112 -0
- core/modules/bridge/scroll_bridge_sub.py +42 -0
- core/modules/bridge/stargate_v2_sub.py +74 -0
- core/modules/bridge_module.py +47 -0
- core/modules/bungee.py +109 -0
- core/modules/cex_sender.py +60 -0
- core/modules/cex_subaccount_transfer.py +34 -0
- core/modules/cex_withdraw.py +91 -0
- core/modules/claimer.py +45 -0
- core/modules/claims/__init__.py +0 -0
- core/modules/claims/layerzero_claimer.py +64 -0
- core/modules/claims/rabby_claimer.py +81 -0
- core/modules/concrete_swap.py +97 -0
- core/modules/coredao_bridge.py +32 -0
- core/modules/coredao_bridge_auto.py +39 -0
- core/modules/debank_checker.py +90 -0
- core/modules/dmail.py +54 -0
- core/modules/erc20_balance.py +42 -0
- core/modules/intract/__init__.py +0 -0
- core/modules/intract/intract_api.py +212 -0
- core/modules/intract/utils.py +81 -0
- core/modules/intract_claim.py +104 -0
- core/modules/layer_2_20.py +65 -0
- core/modules/lending_module.py +134 -0
- core/modules/linea_appeal.py +70 -0
- core/modules/linea_poh_lxp.py +64 -0
- core/modules/liquidity/__init__.py +0 -0
- core/modules/liquidity/nile_pool.py +64 -0
- core/modules/liquidity/pool.py +16 -0
- core/modules/liquidity/syncswap_pool.py +61 -0
- core/modules/liquidity/velocore_pool.py +55 -0
- core/modules/liquidity/zerolend_liquidity.py +26 -0
- core/modules/liquidity_pool.py +60 -0
- core/modules/merkly_refuel.py +87 -0
- core/modules/modules.py +4 -0
- core/modules/nft/__init__.py +0 -0
- core/modules/nft/abbys_world.py +22 -0
- core/modules/nft/acg_worlds.py +25 -0
- core/modules/nft/alienswap_linea.py +22 -0
- core/modules/nft/arena_games.py +22 -0
- core/modules/nft/asmatch.py +22 -0
- core/modules/nft/battlemon.py +25 -0
- core/modules/nft/bilinear.py +22 -0
- core/modules/nft/bitavatar.py +25 -0
- core/modules/nft/culture_satoshi_universe.py +24 -0
- core/modules/nft/efrogs.py +26 -0
- core/modules/nft/empty_nft.py +22 -0
- core/modules/nft/era_domain.py +42 -0
- core/modules/nft/frog_war.py +22 -0
- core/modules/nft/frog_war_bonus.py +22 -0
- core/modules/nft/gamerboom.py +25 -0
- core/modules/nft/gamerboom_bonus.py +26 -0
- core/modules/nft/imagine.py +32 -0
- core/modules/nft/kreatorland_module.py +35 -0
- core/modules/nft/l2_telegraph_module.py +22 -0
- core/modules/nft/layer3_meta.py +25 -0
- core/modules/nft/linea_culture_2_2_linus.py +24 -0
- core/modules/nft/linea_culture_2_3_yooldo.py +24 -0
- core/modules/nft/linea_culture_2_4_frogwar.py +24 -0
- core/modules/nft/linea_culture_2_5_acg.py +25 -0
- core/modules/nft/linea_culture_2_6_ascend_the_end.py +25 -0
- core/modules/nft/linea_culture_3_1_ascend_the_end.py +25 -0
- core/modules/nft/linea_culture_3_2_sending_me.py +25 -0
- core/modules/nft/linea_culture_3_3_townstory.py +25 -0
- core/modules/nft/linea_culture_3_4_daniele.py +25 -0
- core/modules/nft/linea_culture_3_5_demmortal.py +25 -0
- core/modules/nft/linea_culture_3_6_foxy.py +25 -0
- core/modules/nft/linea_culture_4_1_coop_records.py +60 -0
- core/modules/nft/linea_culture_4_2_borja_moskv.py +65 -0
- core/modules/nft/linea_culture_4_2_borja_moskv_approve.py +27 -0
- core/modules/nft/linea_culture_4_3_fruit.py +66 -0
- core/modules/nft/linea_culture_4_4_fruit_crux.py +67 -0
- core/modules/nft/linea_culture_4_5_forbidden_fruit.py +67 -0
- core/modules/nft/linea_culture_4_6_laurent.py +67 -0
- core/modules/nft/linea_culture_day2.py +20 -0
- core/modules/nft/linea_culture_day3.py +20 -0
- core/modules/nft/linea_ens_names.py +107 -0
- core/modules/nft/lucky_cat.py +25 -0
- core/modules/nft/merkly_minter_module.py +22 -0
- core/modules/nft/micro3.py +23 -0
- core/modules/nft/mint_2048.py +28 -0
- core/modules/nft/nft_submodule.py +16 -0
- core/modules/nft/nidum.py +87 -0
- core/modules/nft/nidum_bonus.py +23 -0
- core/modules/nft/nomis.py +64 -0
- core/modules/nft/nomis_attest.py +66 -0
- core/modules/nft/nouns.py +27 -0
- core/modules/nft/octomos.py +32 -0
- core/modules/nft/omnisea.py +33 -0
- core/modules/nft/omnizone.py +25 -0
- core/modules/nft/orbiter_claim.py +87 -0
- core/modules/nft/readon.py +30 -0
- core/modules/nft/rubyscore.py +45 -0
- core/modules/nft/sarubol.py +22 -0
- core/modules/nft/satoshi_universe.py +22 -0
- core/modules/nft/scroll_canvas_attest_year_badge.py +35 -0
- core/modules/nft/scroll_canvas_mint.py +51 -0
- core/modules/nft/sign.py +32 -0
- core/modules/nft/snap.py +25 -0
- core/modules/nft/snap_bonus.py +31 -0
- core/modules/nft/social_scan.py +22 -0
- core/modules/nft/sub_module.py +8 -0
- core/modules/nft/tavaera.py +30 -0
- core/modules/nft/townstory.py +75 -0
- core/modules/nft/townstory_bonus.py +45 -0
- core/modules/nft/trusta_reputation.py +48 -0
- core/modules/nft/trustaa_poh.py +49 -0
- core/modules/nft/uber_poh.py +24 -0
- core/modules/nft/wizards_of_linea.py +26 -0
- core/modules/nft/yoddlo.py +22 -0
- core/modules/nft/yuliverse.py +22 -0
- core/modules/nft/zace.py +25 -0
- core/modules/nft/zks_domain.py +41 -0
- core/modules/nft_minter.py +107 -0
- core/modules/orbiter.py +39 -0
- core/modules/orbiter_checker.py +26 -0
- core/modules/rage.py +54 -0
- core/modules/scroll_bridge.py +45 -0
- core/modules/sell_all.py +51 -0
- core/modules/sleep_module.py +25 -0
- core/modules/smart_contract_deployment.py +37 -0
- core/modules/stargate/__init__.py +0 -0
- core/modules/stargate/auto_bridge.py +91 -0
- core/modules/stargate/bridge.py +38 -0
- core/modules/stargate/bridge_eth.py +59 -0
- core/modules/stargate/bridge_tokens.py +48 -0
- core/modules/stargate/classic_bridge.py +34 -0
- core/modules/stargate/farming.py +163 -0
- core/modules/stargate/l0_data.py +10 -0
- core/modules/stargate/pool.py +74 -0
- core/modules/stargate/stargate_balance_utils.py +25 -0
- core/modules/stargate/stargate_gas_checker.py +68 -0
- core/modules/swap/__init__.py +1 -0
- core/modules/swap/horizondex.py +38 -0
- core/modules/swap/izumi.py +41 -0
- core/modules/swap/lineaswap.py +34 -0
- core/modules/swap/maverick.py +66 -0
- core/modules/swap/mute.py +39 -0
- core/modules/swap/odos.py +58 -0
- core/modules/swap/one_inch.py +58 -0
- core/modules/swap/pancake.py +41 -0
- core/modules/swap/swap_facade.py +10 -0
- core/modules/swap/syncswap.py +62 -0
- core/modules/swap/velocore.py +40 -0
- core/modules/swap/woofi.py +38 -0
- core/modules/swap/xy_finance.py +43 -0
- core/modules/swap/zebra.py +32 -0
- core/modules/warm_up.py +98 -0
- core/modules/wrapping.py +74 -0
- core/modules/zkdx.py +63 -0
- data/__init__.py +0 -0
- data/config_default.py +52 -0
- data/module_config_default.py +209 -0
- tests/__init__.py +0 -0
- tests/core/__init__.py +0 -0
- tests/core/contracts/__init__.py +0 -0
- tests/core/contracts/test_horizondex_quoter.py +37 -0
- tests/core/contracts/test_uniswap_quoter.py +35 -0
- tests/core/contracts/test_velocore_lens.py +67 -0
- tests/core/contracts/test_velocore_pool.py +57 -0
- tests/core/modules/__init__.py +67 -0
- tests/core/modules/swap/__init__.py +0 -0
- tests/core/modules/swap/test_horizondex.py +37 -0
- tests/core/modules/swap/test_lineaswap.py +28 -0
- tests/core/modules/swap/test_maverick.py +31 -0
- tests/core/modules/swap/test_mute.py +29 -0
- tests/core/modules/swap/test_odos.py +36 -0
- tests/core/modules/swap/test_pancake.py +54 -0
- tests/core/modules/swap/test_syncswap.py +59 -0
- tests/core/modules/swap/test_velocore.py +33 -0
- tests/core/modules/swap/test_woofi.py +22 -0
- tests/core/modules/test_bungee.py +27 -0
- tests/core/modules/test_concrete_swap.py +62 -0
- tests/core/modules/test_dmail.py +41 -0
- tests/core/modules/test_lending.py +122 -0
- tests/core/modules/test_nft.py +32 -0
- tests/core/modules/test_nft_minter.py +30 -0
- tests/core/modules/test_orbiter.py +28 -0
- tests/core/modules/test_sellall.py +27 -0
- tests/core/modules/test_send_to_cex.py +27 -0
- tests/core/modules/test_stargate_auto_bridge.py +32 -0
- tests/core/modules/test_stargate_bridge.py +25 -0
- tests/core/modules/test_stargate_farming.py +108 -0
- tests/core/modules/test_warmup.py +78 -0
- tests/core/modules/test_wrapping.py +68 -0
- tests/core/scenario/__init__.py +0 -0
- tests/core/scenario/module_0_test_config.py +91 -0
- tests/core/test_app.py +19 -0
- tests/core/test_config.py +34 -0
- web3_wizzard_lib/__init__.py +0 -0
- web3_wizzard_lib/core/__init__.py +1 -0
- web3_wizzard_lib/core/contract/__init__.py +0 -0
- web3_wizzard_lib/core/contract/aavecontract.py +36 -0
- web3_wizzard_lib/core/contract/alienswap_contract.py +21 -0
- web3_wizzard_lib/core/contract/arena_games_contract.py +16 -0
- web3_wizzard_lib/core/contract/basiliskcontract.py +58 -0
- web3_wizzard_lib/core/contract/bilinear_contract.py +22 -0
- web3_wizzard_lib/core/contract/bungee.py +33 -0
- web3_wizzard_lib/core/contract/coredao_contract.py +35 -0
- web3_wizzard_lib/core/contract/coredao_from_contract.py +40 -0
- web3_wizzard_lib/core/contract/dmail_send_mail.py +18 -0
- web3_wizzard_lib/core/contract/empty_nft.py +18 -0
- web3_wizzard_lib/core/contract/era_name.py +23 -0
- web3_wizzard_lib/core/contract/eralendcontract.py +34 -0
- web3_wizzard_lib/core/contract/eth_scroll_bridge_contract.py +25 -0
- web3_wizzard_lib/core/contract/frog_war_contract.py +48 -0
- web3_wizzard_lib/core/contract/horizondex_quoter.py +14 -0
- web3_wizzard_lib/core/contract/horizondex_router.py +91 -0
- web3_wizzard_lib/core/contract/imagine_contract.py +18 -0
- web3_wizzard_lib/core/contract/izumi.py +63 -0
- web3_wizzard_lib/core/contract/kreatorland_contract.py +21 -0
- web3_wizzard_lib/core/contract/l0_claim.py +254 -0
- web3_wizzard_lib/core/contract/l2_telegraph.py +21 -0
- web3_wizzard_lib/core/contract/layerbank_price.py +18 -0
- web3_wizzard_lib/core/contract/layerbank_token.py +29 -0
- web3_wizzard_lib/core/contract/layerbankcontract.py +59 -0
- web3_wizzard_lib/core/contract/linea_day_2_contract.py +19 -0
- web3_wizzard_lib/core/contract/linea_day_3_contract.py +55 -0
- web3_wizzard_lib/core/contract/linea_ens_names_contract.py +55 -0
- web3_wizzard_lib/core/contract/lineaswaprouter.py +52 -0
- web3_wizzard_lib/core/contract/maverick_multicall.py +52 -0
- web3_wizzard_lib/core/contract/mendi_finance_contract.py +11 -0
- web3_wizzard_lib/core/contract/mendi_token.py +25 -0
- web3_wizzard_lib/core/contract/merkly_minter.py +47 -0
- web3_wizzard_lib/core/contract/micro3_contract.py +18 -0
- web3_wizzard_lib/core/contract/mute_router.py +93 -0
- web3_wizzard_lib/core/contract/nidum_contract.py +44 -0
- web3_wizzard_lib/core/contract/nile_contract.py +60 -0
- web3_wizzard_lib/core/contract/nomis_attest_contract.py +40 -0
- web3_wizzard_lib/core/contract/nomis_contract.py +40 -0
- web3_wizzard_lib/core/contract/octomos.py +31 -0
- web3_wizzard_lib/core/contract/odos.py +104 -0
- web3_wizzard_lib/core/contract/omnisea.py +29 -0
- web3_wizzard_lib/core/contract/orbiter_starknet.py +30 -0
- web3_wizzard_lib/core/contract/pancake_pool.py +19 -0
- web3_wizzard_lib/core/contract/pancake_quoter.py +20 -0
- web3_wizzard_lib/core/contract/pancake_router.py +72 -0
- web3_wizzard_lib/core/contract/rage_claim.py +24 -0
- web3_wizzard_lib/core/contract/reactor_fusion_contract.py +78 -0
- web3_wizzard_lib/core/contract/readon_contract.py +19 -0
- web3_wizzard_lib/core/contract/rubyscore_contract.py +31 -0
- web3_wizzard_lib/core/contract/satoshi_universe_contract.py +29 -0
- web3_wizzard_lib/core/contract/scroll_bridge_contract.py +24 -0
- web3_wizzard_lib/core/contract/scroll_canvas_mint_contract.py +26 -0
- web3_wizzard_lib/core/contract/scroll_oracle.py +11 -0
- web3_wizzard_lib/core/contract/snap_contract.py +16 -0
- web3_wizzard_lib/core/contract/social_scan_contract.py +20 -0
- web3_wizzard_lib/core/contract/stargate_farming.py +37 -0
- web3_wizzard_lib/core/contract/stargate_router.py +84 -0
- web3_wizzard_lib/core/contract/stargate_router_eth.py +41 -0
- web3_wizzard_lib/core/contract/stargate_token_pool.py +46 -0
- web3_wizzard_lib/core/contract/stargate_v2_contract.py +36 -0
- web3_wizzard_lib/core/contract/syncswap_classic_pool.py +15 -0
- web3_wizzard_lib/core/contract/syncswap_classic_pool_factory.py +15 -0
- web3_wizzard_lib/core/contract/syncswap_pool.py +25 -0
- web3_wizzard_lib/core/contract/syncswap_router.py +123 -0
- web3_wizzard_lib/core/contract/tavaera_id.py +18 -0
- web3_wizzard_lib/core/contract/tavaera_mint.py +17 -0
- web3_wizzard_lib/core/contract/townstory_bonus_contract.py +19 -0
- web3_wizzard_lib/core/contract/townstory_contract.py +21 -0
- web3_wizzard_lib/core/contract/velocore_lens.py +44 -0
- web3_wizzard_lib/core/contract/velocore_pool.py +198 -0
- web3_wizzard_lib/core/contract/velocore_router.py +80 -0
- web3_wizzard_lib/core/contract/woofi_swap.py +29 -0
- web3_wizzard_lib/core/contract/xy_finance_contract.py +87 -0
- web3_wizzard_lib/core/contract/yoddlo_contract.py +19 -0
- web3_wizzard_lib/core/contract/yuliverse_contract.py +36 -0
- web3_wizzard_lib/core/contract/zebra_contract.py +68 -0
- web3_wizzard_lib/core/contract/zerolend_contract.py +34 -0
- web3_wizzard_lib/core/contract/zerolend_liq_contract.py +20 -0
- web3_wizzard_lib/core/contract/zkdx_contract.py +40 -0
- web3_wizzard_lib/core/contract/zkdx_data.py +14 -0
- web3_wizzard_lib/core/contract/zks.py +24 -0
- web3_wizzard_lib/core/modules/__init__.py +0 -0
- web3_wizzard_lib/core/modules/ads_import_proxy.py +52 -0
- web3_wizzard_lib/core/modules/airdrop_printer.py +80 -0
- web3_wizzard_lib/core/modules/bank/__init__.py +0 -0
- web3_wizzard_lib/core/modules/bank/aave.py +25 -0
- web3_wizzard_lib/core/modules/bank/bank.py +15 -0
- web3_wizzard_lib/core/modules/bank/bank_module.py +99 -0
- web3_wizzard_lib/core/modules/bank/basilisk.py +25 -0
- web3_wizzard_lib/core/modules/bank/eralend.py +25 -0
- web3_wizzard_lib/core/modules/bank/layerbank.py +116 -0
- web3_wizzard_lib/core/modules/bank/mendi_finance.py +57 -0
- web3_wizzard_lib/core/modules/bank/reactorfusion.py +25 -0
- web3_wizzard_lib/core/modules/bank/zerolend.py +36 -0
- web3_wizzard_lib/core/modules/bridge/__init__.py +0 -0
- web3_wizzard_lib/core/modules/bridge/bridge.py +8 -0
- web3_wizzard_lib/core/modules/bridge/coredao_bridge_sub.py +47 -0
- web3_wizzard_lib/core/modules/bridge/orbiter_sub.py +112 -0
- web3_wizzard_lib/core/modules/bridge/scroll_bridge_sub.py +42 -0
- web3_wizzard_lib/core/modules/bridge/stargate_v2_sub.py +74 -0
- web3_wizzard_lib/core/modules/bridge_module.py +47 -0
- web3_wizzard_lib/core/modules/bungee.py +109 -0
- web3_wizzard_lib/core/modules/cex_sender.py +60 -0
- web3_wizzard_lib/core/modules/cex_subaccount_transfer.py +34 -0
- web3_wizzard_lib/core/modules/cex_withdraw.py +91 -0
- web3_wizzard_lib/core/modules/claimer.py +45 -0
- web3_wizzard_lib/core/modules/claims/__init__.py +0 -0
- web3_wizzard_lib/core/modules/claims/layerzero_claimer.py +64 -0
- web3_wizzard_lib/core/modules/claims/rabby_claimer.py +81 -0
- web3_wizzard_lib/core/modules/concrete_swap.py +97 -0
- web3_wizzard_lib/core/modules/coredao_bridge.py +32 -0
- web3_wizzard_lib/core/modules/coredao_bridge_auto.py +39 -0
- web3_wizzard_lib/core/modules/debank_checker.py +90 -0
- web3_wizzard_lib/core/modules/dmail.py +54 -0
- web3_wizzard_lib/core/modules/erc20_balance.py +42 -0
- web3_wizzard_lib/core/modules/intract/__init__.py +0 -0
- web3_wizzard_lib/core/modules/intract/intract_api.py +212 -0
- web3_wizzard_lib/core/modules/intract/utils.py +81 -0
- web3_wizzard_lib/core/modules/intract_claim.py +104 -0
- web3_wizzard_lib/core/modules/layer_2_20.py +65 -0
- web3_wizzard_lib/core/modules/lending_module.py +134 -0
- web3_wizzard_lib/core/modules/linea_appeal.py +70 -0
- web3_wizzard_lib/core/modules/linea_poh_lxp.py +64 -0
- web3_wizzard_lib/core/modules/liquidity/__init__.py +0 -0
- web3_wizzard_lib/core/modules/liquidity/nile_pool.py +64 -0
- web3_wizzard_lib/core/modules/liquidity/pool.py +16 -0
- web3_wizzard_lib/core/modules/liquidity/syncswap_pool.py +61 -0
- web3_wizzard_lib/core/modules/liquidity/velocore_pool.py +55 -0
- web3_wizzard_lib/core/modules/liquidity/zerolend_liquidity.py +26 -0
- web3_wizzard_lib/core/modules/liquidity_pool.py +60 -0
- web3_wizzard_lib/core/modules/merkly_refuel.py +87 -0
- web3_wizzard_lib/core/modules/modules.py +27 -0
- web3_wizzard_lib/core/modules/nft/__init__.py +0 -0
- web3_wizzard_lib/core/modules/nft/abbys_world.py +22 -0
- web3_wizzard_lib/core/modules/nft/acg_worlds.py +25 -0
- web3_wizzard_lib/core/modules/nft/alienswap_linea.py +22 -0
- web3_wizzard_lib/core/modules/nft/arena_games.py +22 -0
- web3_wizzard_lib/core/modules/nft/asmatch.py +22 -0
- web3_wizzard_lib/core/modules/nft/battlemon.py +25 -0
- web3_wizzard_lib/core/modules/nft/bilinear.py +22 -0
- web3_wizzard_lib/core/modules/nft/bitavatar.py +25 -0
- web3_wizzard_lib/core/modules/nft/culture_satoshi_universe.py +24 -0
- web3_wizzard_lib/core/modules/nft/efrogs.py +26 -0
- web3_wizzard_lib/core/modules/nft/empty_nft.py +22 -0
- web3_wizzard_lib/core/modules/nft/era_domain.py +42 -0
- web3_wizzard_lib/core/modules/nft/frog_war.py +22 -0
- web3_wizzard_lib/core/modules/nft/frog_war_bonus.py +22 -0
- web3_wizzard_lib/core/modules/nft/gamerboom.py +25 -0
- web3_wizzard_lib/core/modules/nft/gamerboom_bonus.py +26 -0
- web3_wizzard_lib/core/modules/nft/imagine.py +32 -0
- web3_wizzard_lib/core/modules/nft/kreatorland_module.py +35 -0
- web3_wizzard_lib/core/modules/nft/l2_telegraph_module.py +22 -0
- web3_wizzard_lib/core/modules/nft/layer3_meta.py +25 -0
- web3_wizzard_lib/core/modules/nft/linea_culture_2_2_linus.py +24 -0
- web3_wizzard_lib/core/modules/nft/linea_culture_2_3_yooldo.py +24 -0
- web3_wizzard_lib/core/modules/nft/linea_culture_2_4_frogwar.py +24 -0
- web3_wizzard_lib/core/modules/nft/linea_culture_2_5_acg.py +25 -0
- web3_wizzard_lib/core/modules/nft/linea_culture_2_6_ascend_the_end.py +25 -0
- web3_wizzard_lib/core/modules/nft/linea_culture_3_1_ascend_the_end.py +25 -0
- web3_wizzard_lib/core/modules/nft/linea_culture_3_2_sending_me.py +25 -0
- web3_wizzard_lib/core/modules/nft/linea_culture_3_3_townstory.py +25 -0
- web3_wizzard_lib/core/modules/nft/linea_culture_3_4_daniele.py +25 -0
- web3_wizzard_lib/core/modules/nft/linea_culture_3_5_demmortal.py +25 -0
- web3_wizzard_lib/core/modules/nft/linea_culture_3_6_foxy.py +25 -0
- web3_wizzard_lib/core/modules/nft/linea_culture_4_1_coop_records.py +60 -0
- web3_wizzard_lib/core/modules/nft/linea_culture_4_2_borja_moskv.py +65 -0
- web3_wizzard_lib/core/modules/nft/linea_culture_4_2_borja_moskv_approve.py +27 -0
- web3_wizzard_lib/core/modules/nft/linea_culture_4_3_fruit.py +66 -0
- web3_wizzard_lib/core/modules/nft/linea_culture_4_4_fruit_crux.py +67 -0
- web3_wizzard_lib/core/modules/nft/linea_culture_4_5_forbidden_fruit.py +67 -0
- web3_wizzard_lib/core/modules/nft/linea_culture_4_6_laurent.py +67 -0
- web3_wizzard_lib/core/modules/nft/linea_culture_day2.py +20 -0
- web3_wizzard_lib/core/modules/nft/linea_culture_day3.py +20 -0
- web3_wizzard_lib/core/modules/nft/linea_ens_names.py +107 -0
- web3_wizzard_lib/core/modules/nft/lucky_cat.py +25 -0
- web3_wizzard_lib/core/modules/nft/merkly_minter_module.py +22 -0
- web3_wizzard_lib/core/modules/nft/micro3.py +23 -0
- web3_wizzard_lib/core/modules/nft/mint_2048.py +28 -0
- web3_wizzard_lib/core/modules/nft/nft_submodule.py +16 -0
- web3_wizzard_lib/core/modules/nft/nidum.py +87 -0
- web3_wizzard_lib/core/modules/nft/nidum_bonus.py +23 -0
- web3_wizzard_lib/core/modules/nft/nomis.py +64 -0
- web3_wizzard_lib/core/modules/nft/nomis_attest.py +66 -0
- web3_wizzard_lib/core/modules/nft/nouns.py +27 -0
- web3_wizzard_lib/core/modules/nft/octomos.py +32 -0
- web3_wizzard_lib/core/modules/nft/omnisea.py +33 -0
- web3_wizzard_lib/core/modules/nft/omnizone.py +25 -0
- web3_wizzard_lib/core/modules/nft/orbiter_claim.py +87 -0
- web3_wizzard_lib/core/modules/nft/readon.py +30 -0
- web3_wizzard_lib/core/modules/nft/rubyscore.py +45 -0
- web3_wizzard_lib/core/modules/nft/sarubol.py +22 -0
- web3_wizzard_lib/core/modules/nft/satoshi_universe.py +22 -0
- web3_wizzard_lib/core/modules/nft/scroll_canvas_attest_year_badge.py +35 -0
- web3_wizzard_lib/core/modules/nft/scroll_canvas_mint.py +51 -0
- web3_wizzard_lib/core/modules/nft/sign.py +32 -0
- web3_wizzard_lib/core/modules/nft/snap.py +25 -0
- web3_wizzard_lib/core/modules/nft/snap_bonus.py +31 -0
- web3_wizzard_lib/core/modules/nft/social_scan.py +22 -0
- web3_wizzard_lib/core/modules/nft/sub_module.py +8 -0
- web3_wizzard_lib/core/modules/nft/tavaera.py +30 -0
- web3_wizzard_lib/core/modules/nft/townstory.py +75 -0
- web3_wizzard_lib/core/modules/nft/townstory_bonus.py +45 -0
- web3_wizzard_lib/core/modules/nft/trusta_reputation.py +48 -0
- web3_wizzard_lib/core/modules/nft/trustaa_poh.py +49 -0
- web3_wizzard_lib/core/modules/nft/uber_poh.py +24 -0
- web3_wizzard_lib/core/modules/nft/wizards_of_linea.py +26 -0
- web3_wizzard_lib/core/modules/nft/yoddlo.py +22 -0
- web3_wizzard_lib/core/modules/nft/yuliverse.py +22 -0
- web3_wizzard_lib/core/modules/nft/zace.py +25 -0
- web3_wizzard_lib/core/modules/nft/zks_domain.py +41 -0
- web3_wizzard_lib/core/modules/nft_minter.py +107 -0
- web3_wizzard_lib/core/modules/orbiter.py +39 -0
- web3_wizzard_lib/core/modules/orbiter_checker.py +26 -0
- web3_wizzard_lib/core/modules/rage.py +54 -0
- web3_wizzard_lib/core/modules/scroll_bridge.py +45 -0
- web3_wizzard_lib/core/modules/sell_all.py +51 -0
- web3_wizzard_lib/core/modules/sleep_module.py +25 -0
- web3_wizzard_lib/core/modules/smart_contract_deployment.py +37 -0
- web3_wizzard_lib/core/modules/stargate/__init__.py +0 -0
- web3_wizzard_lib/core/modules/stargate/auto_bridge.py +91 -0
- web3_wizzard_lib/core/modules/stargate/bridge.py +38 -0
- web3_wizzard_lib/core/modules/stargate/bridge_eth.py +59 -0
- web3_wizzard_lib/core/modules/stargate/bridge_tokens.py +48 -0
- web3_wizzard_lib/core/modules/stargate/classic_bridge.py +34 -0
- web3_wizzard_lib/core/modules/stargate/farming.py +163 -0
- web3_wizzard_lib/core/modules/stargate/l0_data.py +10 -0
- web3_wizzard_lib/core/modules/stargate/pool.py +74 -0
- web3_wizzard_lib/core/modules/stargate/stargate_balance_utils.py +25 -0
- web3_wizzard_lib/core/modules/stargate/stargate_gas_checker.py +68 -0
- web3_wizzard_lib/core/modules/swap/__init__.py +1 -0
- web3_wizzard_lib/core/modules/swap/horizondex.py +38 -0
- web3_wizzard_lib/core/modules/swap/izumi.py +41 -0
- web3_wizzard_lib/core/modules/swap/lineaswap.py +34 -0
- web3_wizzard_lib/core/modules/swap/maverick.py +66 -0
- web3_wizzard_lib/core/modules/swap/mute.py +39 -0
- web3_wizzard_lib/core/modules/swap/odos.py +58 -0
- web3_wizzard_lib/core/modules/swap/one_inch.py +58 -0
- web3_wizzard_lib/core/modules/swap/pancake.py +41 -0
- web3_wizzard_lib/core/modules/swap/swap_facade.py +10 -0
- web3_wizzard_lib/core/modules/swap/swap_list.py +10 -0
- web3_wizzard_lib/core/modules/swap/syncswap.py +62 -0
- web3_wizzard_lib/core/modules/swap/velocore.py +40 -0
- web3_wizzard_lib/core/modules/swap/woofi.py +38 -0
- web3_wizzard_lib/core/modules/swap/xy_finance.py +43 -0
- web3_wizzard_lib/core/modules/swap/zebra.py +32 -0
- web3_wizzard_lib/core/modules/warm_up.py +98 -0
- web3_wizzard_lib/core/modules/wrapping.py +74 -0
- web3_wizzard_lib/core/modules/zkdx.py +63 -0
- web3_wizzard_lib/core/utils/__init__.py +0 -0
- web3_wizzard_lib/core/utils/sub_module.py +8 -0
- web3_wizzard_lib/launcher.py +39 -0
- web3_wizzard_lib-0.0.2.data/data/requirements.txt +1 -0
- web3_wizzard_lib-0.0.2.dist-info/METADATA +10 -0
- web3_wizzard_lib-0.0.2.dist-info/RECORD +547 -0
- web3_wizzard_lib-0.0.2.dist-info/WHEEL +5 -0
- web3_wizzard_lib-0.0.2.dist-info/top_level.txt +3 -0
@@ -0,0 +1,36 @@
|
|
1
|
+
import unittest
|
2
|
+
|
3
|
+
from tests.core.modules import init_set_test_config
|
4
|
+
|
5
|
+
|
6
|
+
class TestOdos(unittest.TestCase):
|
7
|
+
init_set_test_config()
|
8
|
+
|
9
|
+
# def test_odosShouldSwap(self, chain='ZKSYNC'):
|
10
|
+
# logger.info("Test odos")
|
11
|
+
#
|
12
|
+
# chain_instance = get_chain_instance(chain)
|
13
|
+
# web3 = init_web3(chain_instance, None)
|
14
|
+
#
|
15
|
+
# logger.info(get_native_balance(zksync_test_account, web3, chain_instance))
|
16
|
+
#
|
17
|
+
# odos = OdosSwap(chain_instance, web3)
|
18
|
+
#
|
19
|
+
# odos.swap(
|
20
|
+
# NativeBalance(10000, chain, 'ETH'),
|
21
|
+
# 'ETH',
|
22
|
+
# 'USDC',
|
23
|
+
# 25,
|
24
|
+
# base_test_account
|
25
|
+
# )
|
26
|
+
#
|
27
|
+
# amount_to_swap = Erc20Token(chain, 'USDC', web3).balance(zksync_test_account)
|
28
|
+
#
|
29
|
+
#
|
30
|
+
# odos.swap(
|
31
|
+
# amount_to_swap,
|
32
|
+
# 'LIN',
|
33
|
+
# 'ETH',
|
34
|
+
# 0.98,
|
35
|
+
# base_test_account
|
36
|
+
# )
|
@@ -0,0 +1,54 @@
|
|
1
|
+
import unittest
|
2
|
+
|
3
|
+
from loguru import logger
|
4
|
+
from sybil_engine.data.networks import get_chain_instance
|
5
|
+
from sybil_engine.domain.balance.balance import NativeBalance
|
6
|
+
from sybil_engine.domain.balance.balance_utils import from_eth_to_wei
|
7
|
+
from sybil_engine.domain.balance.tokens import Erc20Token
|
8
|
+
from sybil_engine.utils.web3_utils import init_web3
|
9
|
+
|
10
|
+
from web3_wizzard_lib.core.modules import Pancake
|
11
|
+
from tests.core.modules import zksync_test_account, test_account, init_set_test_config
|
12
|
+
|
13
|
+
|
14
|
+
class TestPancake(unittest.TestCase):
|
15
|
+
init_set_test_config()
|
16
|
+
|
17
|
+
def test_pancakeShouldSwap(self, chains=[
|
18
|
+
('ZKSYNC', zksync_test_account),
|
19
|
+
('BASE', test_account),
|
20
|
+
('LINEA', test_account),
|
21
|
+
('ARBITRUM', test_account),
|
22
|
+
], token='USDC'):
|
23
|
+
logger.info("Test pancake")
|
24
|
+
|
25
|
+
for chain, account in chains:
|
26
|
+
chain_instance = get_chain_instance(chain)
|
27
|
+
web3 = init_web3(chain_instance, None)
|
28
|
+
|
29
|
+
native_balance_to_sell = NativeBalance(from_eth_to_wei(1), chain, 'ETH')
|
30
|
+
|
31
|
+
pancake = Pancake(chain_instance, web3)
|
32
|
+
|
33
|
+
pancake.swap(native_balance_to_sell, 'ETH', token, 0.01, account)
|
34
|
+
amount_to_swap = Erc20Token(chain_instance['chain'], token, web3).balance(account)
|
35
|
+
logger.info(f"{native_balance_to_sell} > {amount_to_swap}")
|
36
|
+
pancake.swap(amount_to_swap, token, 'ETH', 0.01, account)
|
37
|
+
|
38
|
+
def test_pancakeShouldSwapUSDT(self, chains=[
|
39
|
+
('ZKSYNC', zksync_test_account),
|
40
|
+
], token='USDT'):
|
41
|
+
logger.info("Test mute")
|
42
|
+
|
43
|
+
for chain, account in chains:
|
44
|
+
chain_instance = get_chain_instance(chain)
|
45
|
+
web3 = init_web3(chain_instance, None)
|
46
|
+
|
47
|
+
native_balance_to_sell = NativeBalance(from_eth_to_wei(1), chain, 'ETH')
|
48
|
+
|
49
|
+
mute = Pancake(chain_instance, web3)
|
50
|
+
|
51
|
+
mute.swap(native_balance_to_sell, 'ETH', token, 0.01, account)
|
52
|
+
amount_to_swap = Erc20Token(chain_instance['chain'], token, web3).balance(account)
|
53
|
+
logger.info(f"{native_balance_to_sell} > {amount_to_swap}")
|
54
|
+
mute.swap(amount_to_swap, token, 'ETH', 0.01, account)
|
@@ -0,0 +1,59 @@
|
|
1
|
+
import unittest
|
2
|
+
|
3
|
+
from loguru import logger
|
4
|
+
from sybil_engine.data.networks import get_chain_instance
|
5
|
+
from sybil_engine.domain.balance.balance import NativeBalance
|
6
|
+
from sybil_engine.domain.balance.balance_utils import from_eth_to_wei
|
7
|
+
from sybil_engine.domain.balance.tokens import Erc20Token
|
8
|
+
from sybil_engine.utils.web3_utils import init_web3
|
9
|
+
|
10
|
+
from web3_wizzard_lib.core.modules import Syncswap
|
11
|
+
from tests.core.modules import zksync_test_account, init_set_test_config, test_account
|
12
|
+
|
13
|
+
|
14
|
+
class TestSyncswap(unittest.TestCase):
|
15
|
+
init_set_test_config()
|
16
|
+
|
17
|
+
def test_syncswapShouldSwap(self, chain='ZKSYNC', account=zksync_test_account):
|
18
|
+
logger.info("Test syncswap")
|
19
|
+
|
20
|
+
chain_instance = get_chain_instance(chain)
|
21
|
+
web3 = init_web3(chain_instance, None)
|
22
|
+
|
23
|
+
native_balance = NativeBalance(from_eth_to_wei(1), chain, 'ETH')
|
24
|
+
|
25
|
+
syncswap = Syncswap(chain_instance, web3)
|
26
|
+
syncswap.swap(native_balance, 'ETH', 'USDC', 0.98, account)
|
27
|
+
amount_to_swap = Erc20Token(chain, 'USDC', web3).balance(account)
|
28
|
+
syncswap.swap(amount_to_swap, 'USDC', 'ETH', 0.98, account)
|
29
|
+
|
30
|
+
syncswap = Syncswap(chain_instance, web3)
|
31
|
+
syncswap.swap(native_balance, 'ETH', 'USDT', 0.98, account)
|
32
|
+
amount_to_swap = Erc20Token(chain, 'USDT', web3).balance(account)
|
33
|
+
syncswap.swap(amount_to_swap, 'USDT', 'ETH', 0.98, account)
|
34
|
+
|
35
|
+
syncswap = Syncswap(chain_instance, web3)
|
36
|
+
syncswap.swap(native_balance, 'ETH', 'WBTC', 0.98, account)
|
37
|
+
amount_to_swap = Erc20Token(chain, 'WBTC', web3).balance(account)
|
38
|
+
syncswap.swap(amount_to_swap, 'WBTC', 'ETH', 0.98, account)
|
39
|
+
|
40
|
+
def test_syncswapShouldSwapForLinea(self, chain='LINEA', account=test_account):
|
41
|
+
logger.info("Test syncswap")
|
42
|
+
|
43
|
+
chain_instance = get_chain_instance(chain)
|
44
|
+
web3 = init_web3(chain_instance, None)
|
45
|
+
|
46
|
+
native_balance = NativeBalance(from_eth_to_wei(0.1), chain, 'ETH')
|
47
|
+
|
48
|
+
syncswap = Syncswap(chain_instance, web3)
|
49
|
+
syncswap.swap(native_balance, 'ETH', 'USDC', 0.98, account)
|
50
|
+
amount_to_swap = Erc20Token(chain, 'USDC', web3).balance(account)
|
51
|
+
syncswap.swap(amount_to_swap, 'USDC', 'ETH', 0.98, account)
|
52
|
+
|
53
|
+
syncswap = Syncswap(chain_instance, web3, {
|
54
|
+
"ETH>USDC": "0x5Ec5b1E9b1Bd5198343ABB6E55Fb695d2F7Bb308",
|
55
|
+
"USDC>USDT": "0x258d5f860B11ec73Ee200eB14f1b60A3B7A536a2"
|
56
|
+
})
|
57
|
+
syncswap.swap(native_balance, 'ETH', 'USDT', 0.98, account)
|
58
|
+
amount_to_swap = Erc20Token(chain, 'USDT', web3).balance(account)
|
59
|
+
syncswap.swap(amount_to_swap, 'USDT', 'ETH', 0.98, account)
|
@@ -0,0 +1,33 @@
|
|
1
|
+
import unittest
|
2
|
+
|
3
|
+
from loguru import logger
|
4
|
+
from sybil_engine.data.networks import get_chain_instance
|
5
|
+
from sybil_engine.domain.balance.balance import NativeBalance
|
6
|
+
from sybil_engine.domain.balance.balance_utils import from_eth_to_wei
|
7
|
+
from sybil_engine.domain.balance.tokens import Erc20Token
|
8
|
+
from sybil_engine.utils.web3_utils import init_web3
|
9
|
+
|
10
|
+
from web3_wizzard_lib.core.modules import Velocore
|
11
|
+
from tests.core.modules import local_evm_test_account, init_set_test_config
|
12
|
+
|
13
|
+
|
14
|
+
class TestVelocore(unittest.TestCase):
|
15
|
+
init_set_test_config()
|
16
|
+
|
17
|
+
def test_velocoreShouldSwap(self, chain='ZKSYNC'):
|
18
|
+
logger.info("Test velocore")
|
19
|
+
|
20
|
+
chain_instance = get_chain_instance(chain)
|
21
|
+
web3 = init_web3(chain_instance, None)
|
22
|
+
|
23
|
+
velocore = Velocore(chain_instance, web3)
|
24
|
+
|
25
|
+
native_balance_to_swap = NativeBalance(from_eth_to_wei(1), chain, 'ETH')
|
26
|
+
|
27
|
+
velocore.swap(native_balance_to_swap, 'ETH', 'USDC', 0.98, local_evm_test_account)
|
28
|
+
amount_to_swap = Erc20Token(chain_instance['chain'], 'USDC', web3).balance(local_evm_test_account)
|
29
|
+
velocore.swap(amount_to_swap, 'USDC', 'ETH', 0.98, local_evm_test_account)
|
30
|
+
|
31
|
+
velocore.swap(native_balance_to_swap, 'ETH', 'WBTC', 0.98, local_evm_test_account)
|
32
|
+
amount_to_swap = Erc20Token(chain_instance['chain'], 'WBTC', web3).balance(local_evm_test_account)
|
33
|
+
velocore.swap(amount_to_swap, 'WBTC', 'ETH', 0.98, local_evm_test_account)
|
@@ -0,0 +1,22 @@
|
|
1
|
+
import unittest
|
2
|
+
|
3
|
+
from tests.core.modules import init_set_test_config
|
4
|
+
|
5
|
+
|
6
|
+
class TestWoofi(unittest.TestCase):
|
7
|
+
init_set_test_config()
|
8
|
+
|
9
|
+
# def test_woofiShouldSwap(self, chain='ZKSYNC', account=zksync_test_account, token='USDC'):
|
10
|
+
# logger.info("Test woofi")
|
11
|
+
#
|
12
|
+
# chain_instance = get_chain_instance(chain)
|
13
|
+
# web3 = init_web3(chain_instance, None)
|
14
|
+
#
|
15
|
+
# woofi = Woofi(chain_instance, web3)
|
16
|
+
# native_balance_to_sell = NativeBalance(from_eth_to_wei(1), chain, 'ETH')
|
17
|
+
# woofi.swap(native_balance_to_sell, 'ETH', token, 0.95, account)
|
18
|
+
#
|
19
|
+
# amount_to_swap = Erc20Token(chain, token, web3).balance(account)
|
20
|
+
# logger.info(f"{native_balance_to_sell} > {amount_to_swap}")
|
21
|
+
#
|
22
|
+
# woofi.swap(amount_to_swap, token, 'ETH', 0.95, account)
|
@@ -0,0 +1,27 @@
|
|
1
|
+
import unittest
|
2
|
+
|
3
|
+
from loguru import logger
|
4
|
+
|
5
|
+
from web3_wizzard_lib.core.modules import BungeeRefuel
|
6
|
+
from tests.core.modules.__init__ import local_evm_test_account, zksync_min_native_balance, init_set_test_config
|
7
|
+
|
8
|
+
bungee_test_params = {
|
9
|
+
'from_chain': 'ZKSYNC',
|
10
|
+
'to_chain': 'BASE',
|
11
|
+
'refuel_amount_interval': 'max'
|
12
|
+
}
|
13
|
+
|
14
|
+
|
15
|
+
class TestBungeeModule(unittest.TestCase):
|
16
|
+
init_set_test_config()
|
17
|
+
|
18
|
+
def test_shouldRefuelZksyncToBase(self):
|
19
|
+
logger.info("Test module [BUNGEE, 11]")
|
20
|
+
|
21
|
+
try:
|
22
|
+
bungee = BungeeRefuel(zksync_min_native_balance, local_evm_test_account)
|
23
|
+
|
24
|
+
bungee.execute(*bungee.parse_params(bungee_test_params), local_evm_test_account)
|
25
|
+
except Exception as e:
|
26
|
+
self.fail(f"Some function raised an exception: {e}")
|
27
|
+
|
@@ -0,0 +1,62 @@
|
|
1
|
+
import unittest
|
2
|
+
|
3
|
+
from loguru import logger
|
4
|
+
from sybil_engine.domain.balance.balance import NotEnoughERC20Balance
|
5
|
+
|
6
|
+
from web3_wizzard_lib.core.modules import ConcreteSwap
|
7
|
+
from tests.core.modules.__init__ import zksync_min_native_balance, init_set_test_config, \
|
8
|
+
local_evm_test_account
|
9
|
+
|
10
|
+
|
11
|
+
def create_swap_config(app, chain, from_token, to_token, amount_interval={'from': 1, 'to': 1}):
|
12
|
+
return {
|
13
|
+
'chain': chain,
|
14
|
+
'app': app,
|
15
|
+
'from_token': from_token,
|
16
|
+
'to_token': to_token,
|
17
|
+
'amount_interval': amount_interval
|
18
|
+
}
|
19
|
+
|
20
|
+
|
21
|
+
class TestConcreteSwapModule(unittest.TestCase):
|
22
|
+
|
23
|
+
def test_syncswapShouldSwapInZKSync(self, chain='ZKSYNC', app='syncswap'):
|
24
|
+
logger.info("Test module [CONCRETE_SWAP, 3]")
|
25
|
+
|
26
|
+
init_set_test_config()
|
27
|
+
|
28
|
+
concrete_swap = ConcreteSwap(zksync_min_native_balance, local_evm_test_account)
|
29
|
+
|
30
|
+
test_config_buy_usdc = create_swap_config(app, chain, 'ETH', 'USDC')
|
31
|
+
test_config_sell_usdc = create_swap_config(app, chain, 'USDC', 'ETH', 'all_balance')
|
32
|
+
test_config_buy_usdt = create_swap_config(app, chain, 'ETH', 'USDT')
|
33
|
+
test_config_sell_usdt = create_swap_config(app, chain, 'USDT', 'ETH', 'all_balance')
|
34
|
+
test_config_buy_wbtc = create_swap_config(app, chain, 'ETH', 'WBTC')
|
35
|
+
test_config_sell_wbtc = create_swap_config(app, chain, 'WBTC', 'ETH', 'all_balance')
|
36
|
+
|
37
|
+
try:
|
38
|
+
concrete_swap.execute(*concrete_swap.parse_params(test_config_buy_usdc), local_evm_test_account)
|
39
|
+
concrete_swap.execute(*concrete_swap.parse_params(test_config_sell_usdc), local_evm_test_account)
|
40
|
+
concrete_swap.execute(*concrete_swap.parse_params(test_config_buy_usdt), local_evm_test_account)
|
41
|
+
concrete_swap.execute(*concrete_swap.parse_params(test_config_sell_usdt), local_evm_test_account)
|
42
|
+
concrete_swap.execute(*concrete_swap.parse_params(test_config_buy_wbtc), local_evm_test_account)
|
43
|
+
concrete_swap.execute(*concrete_swap.parse_params(test_config_sell_wbtc), local_evm_test_account)
|
44
|
+
except Exception as e:
|
45
|
+
self.fail(f"Some function raised an exception: {e}")
|
46
|
+
|
47
|
+
def test_shouldThrowNotEnoughERC20Exception(self):
|
48
|
+
logger.info("Test module [CONCRETE_SWAP, 3]")
|
49
|
+
|
50
|
+
init_set_test_config()
|
51
|
+
|
52
|
+
swap_test_config = create_swap_config('syncswap', 'ZKSYNC', 'USDC', 'ETH', 'all_balance')
|
53
|
+
|
54
|
+
concrete_swap = ConcreteSwap(zksync_min_native_balance, local_evm_test_account)
|
55
|
+
|
56
|
+
with self.assertRaises(NotEnoughERC20Balance):
|
57
|
+
concrete_swap.execute(*concrete_swap.parse_params(swap_test_config), local_evm_test_account)
|
58
|
+
|
59
|
+
|
60
|
+
|
61
|
+
|
62
|
+
|
@@ -0,0 +1,41 @@
|
|
1
|
+
import unittest
|
2
|
+
|
3
|
+
from loguru import logger
|
4
|
+
from sybil_engine.domain.account_storage import AccountStorage
|
5
|
+
from sybil_engine.utils.utils import ConfigurationException
|
6
|
+
|
7
|
+
from web3_wizzard_lib.core.modules import Dmail
|
8
|
+
from tests.core.modules.__init__ import init_set_test_config, test_min_native_balance, local_evm_test_account
|
9
|
+
|
10
|
+
|
11
|
+
class TestDmailModule(unittest.TestCase):
|
12
|
+
init_set_test_config()
|
13
|
+
|
14
|
+
def test_shouldSendDmail(self, chains=['LINEA', 'SCROLL']):
|
15
|
+
logger.info("Test module [DMAIL, 5]")
|
16
|
+
|
17
|
+
for chain in chains:
|
18
|
+
send_dmail_test_config = {
|
19
|
+
'chain': chain,
|
20
|
+
'email_amount': {'from': 3, 'to': 4}
|
21
|
+
}
|
22
|
+
|
23
|
+
try:
|
24
|
+
dmail = Dmail(test_min_native_balance, AccountStorage(), range(3))
|
25
|
+
|
26
|
+
dmail.execute(*dmail.parse_params(send_dmail_test_config), local_evm_test_account)
|
27
|
+
except Exception as e:
|
28
|
+
self.fail(f"Some function raised an exception: {e}")
|
29
|
+
|
30
|
+
def test_shouldThrowConfigurationExceptionOnUnsupportedChain(self, chains=['ARBITRUM']):
|
31
|
+
logger.info("Test module [DMAIL, 5]")
|
32
|
+
|
33
|
+
for chain in chains:
|
34
|
+
send_dmail_test_config = {
|
35
|
+
'chain': chain,
|
36
|
+
'email_amount': {'from': 3, 'to': 4}
|
37
|
+
}
|
38
|
+
dmail = Dmail(test_min_native_balance, AccountStorage(), range(3))
|
39
|
+
|
40
|
+
with self.assertRaises(ConfigurationException):
|
41
|
+
dmail.parse_params(send_dmail_test_config)
|
@@ -0,0 +1,122 @@
|
|
1
|
+
import unittest
|
2
|
+
|
3
|
+
from loguru import logger
|
4
|
+
from sybil_engine.domain.account_storage import AccountStorage
|
5
|
+
|
6
|
+
from web3_wizzard_lib.core.modules import Lending, EmptyDepositException
|
7
|
+
from tests.core.modules.__init__ import local_evm_test_account, zksync_min_native_balance, init_set_test_config
|
8
|
+
|
9
|
+
withdraw_interval = {'from': 60 * 15, 'to': 60 * 60}
|
10
|
+
|
11
|
+
|
12
|
+
class TestLending(unittest.TestCase):
|
13
|
+
init_set_test_config()
|
14
|
+
|
15
|
+
def test_shouldDepositAndWithdraw(self):
|
16
|
+
logger.info("Test module [LENDING]")
|
17
|
+
|
18
|
+
lending_deposit_test_config = {
|
19
|
+
'amount': {'from': 0.001, 'to': 0.001},
|
20
|
+
'action': 'DEPOSIT',
|
21
|
+
'lending_apps': ['ERALEND'],
|
22
|
+
'withdraw_sleep_interval': withdraw_interval
|
23
|
+
}
|
24
|
+
|
25
|
+
lending_withdraw_test_config = {
|
26
|
+
'amount': {'from': 0.001, 'to': 0.001},
|
27
|
+
'action': 'WITHDRAW',
|
28
|
+
'lending_apps': ['ERALEND'],
|
29
|
+
'withdraw_sleep_interval': withdraw_interval
|
30
|
+
}
|
31
|
+
|
32
|
+
lending = Lending(zksync_min_native_balance, AccountStorage(), 1)
|
33
|
+
|
34
|
+
lending.execute(*lending.parse_params(lending_deposit_test_config), local_evm_test_account)
|
35
|
+
lending.execute(*lending.parse_params(lending_withdraw_test_config), local_evm_test_account)
|
36
|
+
|
37
|
+
def test_shouldDepositAndWithdrawAll(self):
|
38
|
+
logger.info("Test module [LENDING]")
|
39
|
+
|
40
|
+
lending_deposit_test_config_eralend = {
|
41
|
+
'amount': {'from': 0.001, 'to': 0.001},
|
42
|
+
'action': 'DEPOSIT',
|
43
|
+
'lending_apps': ['ERALEND'],
|
44
|
+
'withdraw_sleep_interval': withdraw_interval
|
45
|
+
}
|
46
|
+
lending_deposit_test_config_fusion = {
|
47
|
+
'amount': {'from': 0.001, 'to': 0.001},
|
48
|
+
'action': 'DEPOSIT',
|
49
|
+
'lending_apps': ['REACTORFUSION_LANDING'],
|
50
|
+
'withdraw_sleep_interval': withdraw_interval
|
51
|
+
}
|
52
|
+
lending_deposit_test_config_basilisk = {
|
53
|
+
'amount': {'from': 0.001, 'to': 0.001},
|
54
|
+
'action': 'DEPOSIT',
|
55
|
+
'lending_apps': ['BASILISK_LANDING'],
|
56
|
+
'withdraw_sleep_interval': withdraw_interval
|
57
|
+
}
|
58
|
+
|
59
|
+
lending_withdraw_test_config = {
|
60
|
+
'amount': {'from': 0.001, 'to': 0.001},
|
61
|
+
'action': 'WITHDRAW_ALL',
|
62
|
+
'lending_apps': ['ERALEND'],
|
63
|
+
'withdraw_sleep_interval': withdraw_interval
|
64
|
+
}
|
65
|
+
|
66
|
+
lending = Lending(zksync_min_native_balance, AccountStorage(), 1)
|
67
|
+
|
68
|
+
lending.execute(*lending.parse_params(lending_deposit_test_config_basilisk), local_evm_test_account)
|
69
|
+
lending.execute(*lending.parse_params(lending_deposit_test_config_eralend), local_evm_test_account)
|
70
|
+
lending.execute(*lending.parse_params(lending_deposit_test_config_fusion), local_evm_test_account)
|
71
|
+
|
72
|
+
lending.execute(*lending.parse_params(lending_withdraw_test_config), local_evm_test_account)
|
73
|
+
|
74
|
+
def test_shouldFailToWithdraw0(self):
|
75
|
+
logger.info("Test module [LENDING]")
|
76
|
+
|
77
|
+
lending_withdraw_test_config = {
|
78
|
+
'amount': {'from': 0.001, 'to': 0.001},
|
79
|
+
'action': 'WITHDRAW',
|
80
|
+
'lending_apps': ['ERALEND'],
|
81
|
+
'withdraw_sleep_interval': withdraw_interval
|
82
|
+
}
|
83
|
+
|
84
|
+
lending = Lending(zksync_min_native_balance, AccountStorage(), 1)
|
85
|
+
|
86
|
+
with self.assertRaises(EmptyDepositException):
|
87
|
+
lending.execute(*lending.parse_params(lending_withdraw_test_config), local_evm_test_account)
|
88
|
+
|
89
|
+
def test_shouldDepositAndWithdrawAll_balance(self, apps=['ERALEND', 'REACTORFUSION_LANDING', 'BASILISK_LANDING']):
|
90
|
+
logger.info("Test module [LENDING]")
|
91
|
+
|
92
|
+
for app in apps:
|
93
|
+
lending_deposit_test_config = {
|
94
|
+
'amount': 'all_balance',
|
95
|
+
'action': 'DEPOSIT',
|
96
|
+
'lending_apps': [app],
|
97
|
+
'withdraw_sleep_interval': withdraw_interval
|
98
|
+
}
|
99
|
+
lending_withdraw_test_config = {
|
100
|
+
'amount': 'all_balance',
|
101
|
+
'action': 'WITHDRAW',
|
102
|
+
'lending_apps': [app],
|
103
|
+
'withdraw_sleep_interval': withdraw_interval
|
104
|
+
}
|
105
|
+
|
106
|
+
lending = Lending(zksync_min_native_balance, AccountStorage(), 1)
|
107
|
+
lending.execute(*lending.parse_params(lending_deposit_test_config), local_evm_test_account)
|
108
|
+
lending.execute(*lending.parse_params(lending_withdraw_test_config), local_evm_test_account)
|
109
|
+
|
110
|
+
def test_shouldDeposit_WithdrawAll_balance(self, apps=['ERALEND', 'REACTORFUSION_LANDING', 'BASILISK_LANDING']):
|
111
|
+
logger.info("Test module [LENDING]")
|
112
|
+
|
113
|
+
for app in apps:
|
114
|
+
lending_deposit_test_config = {
|
115
|
+
'amount': 'all_balance',
|
116
|
+
'action': 'DEPOSIT+WITHDRAW',
|
117
|
+
'lending_apps': [app],
|
118
|
+
'withdraw_sleep_interval': {'from': 0, 'to': 0}
|
119
|
+
}
|
120
|
+
|
121
|
+
lending = Lending(zksync_min_native_balance, AccountStorage(), 1)
|
122
|
+
lending.execute(*lending.parse_params(lending_deposit_test_config), local_evm_test_account)
|
@@ -0,0 +1,32 @@
|
|
1
|
+
import unittest
|
2
|
+
|
3
|
+
from loguru import logger
|
4
|
+
|
5
|
+
from web3_wizzard_lib.core.modules.nft.era_domain import EraDomain
|
6
|
+
from web3_wizzard_lib.core.modules.nft.zks_domain import ZksDomain
|
7
|
+
from tests.core.modules.__init__ import init_set_test_config, \
|
8
|
+
local_evm_test_account
|
9
|
+
|
10
|
+
|
11
|
+
class NftTest(unittest.TestCase):
|
12
|
+
init_set_test_config()
|
13
|
+
|
14
|
+
def test_shouldTestEraDomain(self):
|
15
|
+
logger.info("Test module [ERA_DOMAIN, 8]")
|
16
|
+
|
17
|
+
try:
|
18
|
+
era_domain = EraDomain()
|
19
|
+
|
20
|
+
era_domain.execute(local_evm_test_account)
|
21
|
+
except Exception as e:
|
22
|
+
self.fail(f"Some function raised an exception: {e}")
|
23
|
+
|
24
|
+
def test_shouldTestZKSDomain(self):
|
25
|
+
logger.info("Test module [ZKSDomain, 9]")
|
26
|
+
|
27
|
+
try:
|
28
|
+
zks_domain = ZksDomain()
|
29
|
+
|
30
|
+
zks_domain.execute(local_evm_test_account)
|
31
|
+
except Exception as e:
|
32
|
+
self.fail(f"Some function raised an exception: {e}")
|
@@ -0,0 +1,30 @@
|
|
1
|
+
import unittest
|
2
|
+
|
3
|
+
from loguru import logger
|
4
|
+
from sybil_engine.config.app_config import set_network
|
5
|
+
from sybil_engine.domain.account_storage import AccountStorage
|
6
|
+
|
7
|
+
from web3_wizzard_lib.core.modules import NFTMinter
|
8
|
+
from tests.core.modules.__init__ import zksync_test_account, zksync_min_native_balance, init_set_test_config
|
9
|
+
|
10
|
+
nft_minter_test_config = {
|
11
|
+
'nft_amount_interval': {'from': 7, 'to': 7},
|
12
|
+
'nft_modules': ["TAVAERA", "ZKS_DOMAIN", "ERA_DOMAIN", "EMPTY_NFT", "OMNI_SEA", "MERKLY_MINTER", "KREATOR_LAND"],
|
13
|
+
'sleep_interval': {'from': 0, 'to': 0}
|
14
|
+
}
|
15
|
+
|
16
|
+
|
17
|
+
class TestRandomNFTModule(unittest.TestCase):
|
18
|
+
init_set_test_config()
|
19
|
+
|
20
|
+
def test_shouldMintRandomNFT(self):
|
21
|
+
logger.info("Test module [NFT_MINTER, 15]")
|
22
|
+
|
23
|
+
set_network('LOCAL')
|
24
|
+
|
25
|
+
try:
|
26
|
+
nft_minter = NFTMinter(zksync_min_native_balance, AccountStorage(), range(4))
|
27
|
+
|
28
|
+
nft_minter.execute(*nft_minter.parse_params(nft_minter_test_config), zksync_test_account)
|
29
|
+
except Exception as e:
|
30
|
+
self.fail(f"Some function raised an exception: {e}")
|
@@ -0,0 +1,28 @@
|
|
1
|
+
import unittest
|
2
|
+
|
3
|
+
from loguru import logger
|
4
|
+
|
5
|
+
from web3_wizzard_lib.core.modules.orbiter import OrbiterModule
|
6
|
+
from tests.core.modules.__init__ import zksync_min_native_balance, init_set_test_config, \
|
7
|
+
local_evm_test_account
|
8
|
+
|
9
|
+
orbiter_params = {
|
10
|
+
'bridge_amount_interval': {'from': 0.1, 'to': 1},
|
11
|
+
'from_chain': 'ZKSYNC',
|
12
|
+
'to_chain': 'ARBITRUM',
|
13
|
+
}
|
14
|
+
|
15
|
+
|
16
|
+
class TestOrbiterModule(unittest.TestCase):
|
17
|
+
init_set_test_config()
|
18
|
+
|
19
|
+
def test_shouldBridge(self):
|
20
|
+
logger.info("Test module [ORBITER, 7]")
|
21
|
+
|
22
|
+
try:
|
23
|
+
orbiter = OrbiterModule(zksync_min_native_balance, local_evm_test_account)
|
24
|
+
|
25
|
+
orbiter.execute(*orbiter.parse_params(orbiter_params), local_evm_test_account)
|
26
|
+
except Exception as e:
|
27
|
+
self.fail(f"Some function raised an exception: {e}")
|
28
|
+
|
@@ -0,0 +1,27 @@
|
|
1
|
+
import unittest
|
2
|
+
|
3
|
+
from loguru import logger
|
4
|
+
|
5
|
+
from web3_wizzard_lib.core.modules import SellAll
|
6
|
+
from tests.core.modules.__init__ import zksync_test_account, zksync_min_native_balance, init_set_test_config
|
7
|
+
|
8
|
+
|
9
|
+
class TestSetAllModule(unittest.TestCase):
|
10
|
+
|
11
|
+
def test_shouldSellAllzkSync(self, chain='ZKSYNC', account=zksync_test_account):
|
12
|
+
sell_all_test_config = {
|
13
|
+
'chain': chain,
|
14
|
+
'receive_token': 'ETH', # [USDC, ETH]
|
15
|
+
'sleep_interval': {'from': 0, 'to': 0} # Interval between selling different tokens of 1 account
|
16
|
+
}
|
17
|
+
|
18
|
+
logger.info("Test module [SELL_ALL, 2]")
|
19
|
+
|
20
|
+
init_set_test_config()
|
21
|
+
|
22
|
+
try:
|
23
|
+
sell_all = SellAll(zksync_min_native_balance, account)
|
24
|
+
|
25
|
+
sell_all.execute(*sell_all.parse_params(sell_all_test_config), account)
|
26
|
+
except Exception as e:
|
27
|
+
self.fail(f"Some function raised an exception: {e}")
|
@@ -0,0 +1,27 @@
|
|
1
|
+
import unittest
|
2
|
+
|
3
|
+
from loguru import logger
|
4
|
+
|
5
|
+
from web3_wizzard_lib.core.modules import SendToCex
|
6
|
+
from tests.core.modules.__init__ import zksync_min_native_balance, init_set_test_config, \
|
7
|
+
local_evm_test_account
|
8
|
+
|
9
|
+
send_to_cex_test_config = {
|
10
|
+
'chain': 'ZKSYNC',
|
11
|
+
'amount': {'from': 1, 'to': 1},
|
12
|
+
'token': 'NATIVE'
|
13
|
+
}
|
14
|
+
|
15
|
+
|
16
|
+
class TestSendToCexModule(unittest.TestCase):
|
17
|
+
init_set_test_config()
|
18
|
+
|
19
|
+
def test_shouldSendToCex(self):
|
20
|
+
logger.info("Test module [SEND_TO_CEX, 6]")
|
21
|
+
|
22
|
+
try:
|
23
|
+
send_to_cex = SendToCex(zksync_min_native_balance, local_evm_test_account)
|
24
|
+
|
25
|
+
send_to_cex.execute(*send_to_cex.parse_params(send_to_cex_test_config), local_evm_test_account)
|
26
|
+
except Exception as e:
|
27
|
+
self.fail(f"Some function raised an exception: {e}")
|
@@ -0,0 +1,32 @@
|
|
1
|
+
import unittest
|
2
|
+
|
3
|
+
from loguru import logger
|
4
|
+
from sybil_engine.domain.account_storage import AccountStorage
|
5
|
+
|
6
|
+
from web3_wizzard_lib.core.modules.stargate.auto_bridge import StargateAutoBridge
|
7
|
+
from tests.core.modules.__init__ import init_set_test_config, \
|
8
|
+
test_account, test_min_native_balance
|
9
|
+
|
10
|
+
stargate_auto_bridge_test_config = {
|
11
|
+
'bridge_amount_interval': {'from': 1, 'to': 1},
|
12
|
+
'bridge_token': 'ETH',
|
13
|
+
'end_network': '', # name of network where all tokens will be collected
|
14
|
+
'retry_interval': {'from': 0, 'to': 0},
|
15
|
+
'sleep_interval': {'from': 0, 'to': 0},
|
16
|
+
'only_end_network_bridge': False, # if True, then only bridge will be to END NETWORK
|
17
|
+
'original_chain_sequence': ['ARBITRUM', 'LINEA', 'BASE']
|
18
|
+
}
|
19
|
+
|
20
|
+
|
21
|
+
class TestStargateAutoBridge(unittest.TestCase):
|
22
|
+
init_set_test_config()
|
23
|
+
|
24
|
+
def test_shouldMakeAutoBridge(self, account=test_account):
|
25
|
+
logger.info("Test module [STARGATE_AUTO_BRIDGE, 13]")
|
26
|
+
|
27
|
+
try:
|
28
|
+
stargate_auto_bridge = StargateAutoBridge(test_min_native_balance, AccountStorage())
|
29
|
+
|
30
|
+
stargate_auto_bridge.execute(*stargate_auto_bridge.parse_params(stargate_auto_bridge_test_config), account)
|
31
|
+
except Exception as e:
|
32
|
+
self.fail(f"Some function raised an exception: {e}")
|
@@ -0,0 +1,25 @@
|
|
1
|
+
import unittest
|
2
|
+
|
3
|
+
from loguru import logger
|
4
|
+
|
5
|
+
from web3_wizzard_lib.core.modules.stargate.classic_bridge import StargateBridgeModule
|
6
|
+
from tests.core.modules.__init__ import init_set_test_config, test_min_native_balance, \
|
7
|
+
local_evm_test_account
|
8
|
+
|
9
|
+
stargate_classic_test_config = {
|
10
|
+
'from_chain': 'LINEA',
|
11
|
+
'to_chain': 'BASE',
|
12
|
+
'bridge_amount_interval': {'from': 1, 'to': 1},
|
13
|
+
'bridge_token': 'ETH',
|
14
|
+
'retry_interval': {'from': 60 * 25, 'to': 60 * 40}
|
15
|
+
}
|
16
|
+
|
17
|
+
|
18
|
+
class TestStargateBridgeModule(unittest.TestCase):
|
19
|
+
def test_bridgeStargate(self, account=local_evm_test_account):
|
20
|
+
logger.info("Test module [STARGATE_BRIDGE, 12]")
|
21
|
+
|
22
|
+
init_set_test_config()
|
23
|
+
|
24
|
+
stargate_bridge = StargateBridgeModule(test_min_native_balance, account)
|
25
|
+
stargate_bridge.execute(*stargate_bridge.parse_params(stargate_classic_test_config), account)
|