class TestClient(TestCase): def setUp(self): self.client = ContractingClient() self.client.flush() def tearDown(self): self.client.flush() def test_set_submission_updates_contract_file(self): submission_1_code = self.client.raw_driver.get('submission.__code__') self.client.flush() self.client.set_submission_contract( filename='./precompiled/updated_submission.py') submission_2_code = self.client.raw_driver.get('submission.__code__') self.assertNotEqual(submission_1_code, submission_2_code)
def flush_sys_contracts(client: ContractingClient, filename=DEFAULT_GENESIS_PATH, submission_path=DEFAULT_SUBMISSION_PATH): # Resets submission contract, allows for updating client.set_submission_contract(filename=submission_path) # Iterates through genesis contract files with open(filename) as f: genesis = json.load(f) for contract in genesis['contracts']: # Get the name of each contract_name = contract['name'] if contract.get('submit_as') is not None: contract_name = contract['submit_as'] # client.raw_driver.delete_contract(contract_name) client.raw_driver.commit()