Skip to content

Commit

Permalink
test: with factory
Browse files Browse the repository at this point in the history
  • Loading branch information
Schlagonia committed Apr 5, 2024
1 parent 20c20c1 commit 93212b3
Show file tree
Hide file tree
Showing 3 changed files with 57 additions and 6 deletions.
3 changes: 1 addition & 2 deletions scripts/deploy_accountant.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,7 @@ def deploy_accountant():
deployer = input("Name of account to use? ")
deployer = accounts.load(deployer)

accountant = project.GenericAccountant

accountant
salt = getSalt(f"Accountant {chain.pending_timestamp}")

print(f"Salt we are using {salt}")
Expand Down
35 changes: 35 additions & 0 deletions scripts/deploy_accountant_factory.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
from ape import project, accounts, Contract, chain, networks
from hexbytes import HexBytes
from scripts.deployments import getSalt, deploy_contract


def deploy_accountant():
print("Deploying an Accountant Factory on ChainID", chain.chain_id)

if input("Do you want to continue? ") == "n":
return

deployer = input("Name of account to use? ")
deployer = accounts.load(deployer)

accountant_factory = project.AccountantFactory

salt = getSalt(f"Accountant Factory")

print(f"Salt we are using {salt}")
print("Init balance:", deployer.balance / 1e18)

# generate and deploy
deploy_bytecode = HexBytes(
accountant_factory.contract_type.deployment_bytecode.bytecode
)

print(f"Deploying Accountant actory...")

deploy_contract(deploy_bytecode, salt, deployer)

print("------------------")


def main():
deploy_accountant()
25 changes: 21 additions & 4 deletions tests/conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -255,7 +255,17 @@ def deploy_generic_accountant(


@pytest.fixture(scope="session")
def deploy_accountant(project, daddy, fee_recipient):
def deploy_accountant_factory(project, daddy):
def deploy_accountant_factory():
accountant_factory = daddy.deploy(project.AccountantFactory)

return accountant_factory

yield deploy_accountant_factory


@pytest.fixture(scope="session")
def deploy_accountant(project, accountant_factory, daddy, fee_recipient):
def deploy_accountant(
manager=daddy,
fee_recipient=fee_recipient,
Expand All @@ -266,8 +276,7 @@ def deploy_accountant(
max_gain=10_000,
max_loss=0,
):
accountant = daddy.deploy(
project.Accountant,
accountant = accountant_factory.newAccountant(
manager,
fee_recipient,
management_fee,
Expand All @@ -276,9 +285,10 @@ def deploy_accountant(
max_fee,
max_gain,
max_loss,
sender=daddy,
)

return accountant
return project.Accountant.at(accountant.return_value)

yield deploy_accountant

Expand Down Expand Up @@ -319,6 +329,13 @@ def generic_accountant(deploy_generic_accountant):
yield generic_accountant


@pytest.fixture(scope="session")
def accountant_factory(deploy_accountant_factory):
accountant_factory = deploy_accountant_factory()

yield accountant_factory


@pytest.fixture(scope="session")
def accountant(deploy_accountant):
accountant = deploy_accountant()
Expand Down

0 comments on commit 93212b3

Please sign in to comment.