def test_testutils_check_vm_test(): func_name, filename, testname, testdata = collected[1] testutils.check_vm_test(testutils.fixture_to_bytes(testdata)) # manipulate post data storage = testdata['post'].values()[0]['storage'] assert storage['0x23'] == '0x01' storage['0x23'] = '0x02' failed_as_expected = False try: testutils.check_vm_test(testutils.fixture_to_bytes(testdata)) except Exception: failed_as_expected = True assert failed_as_expected
def main(): if len(sys.argv) == 1: # read fixture from stdin fixtures = {'stdin': json.load(sys.stdin)} else: # load fixtures from specified file or dir try: fixtures = testutils.get_tests_from_file_or_dir(sys.argv[1]) except: fixtures = {'stdin': json.loads(sys.argv[1])} for filename, tests in list(fixtures.items()): for testname, testdata in list(tests.items()): if len(sys.argv) < 3 or testname == sys.argv[2]: print("Testing: %s %s" % (filename, testname)) testutils.check_vm_test(testdata)
def test_testutils_check_vm_test(): func_name, filename, testname, testdata = collected[1] testutils.check_vm_test(testutils.fixture_to_bytes(testdata)) for address_data in testdata['post'].values(): storage = address_data['storage'] if "0x23" not in storage: continue assert storage['0x23'] == '0x01' # manipulate post data storage['0x23'] = '0x02' break else: raise AssertionError("Did not find `0x23` in storage values") failed_as_expected = False try: testutils.check_vm_test(testutils.fixture_to_bytes(testdata)) except Exception: failed_as_expected = True assert failed_as_expected
def do_test_vm(filename, testname=None, testdata=None, limit=99999999): logger.debug('running test:%r in %r' % (testname, filename)) testutils.check_vm_test(testutils.fixture_to_bytes(testdata))
logger.debug('running test:%r in %r' % (testname, filename)) testutils.check_vm_test(testutils.fixture_to_bytes(testdata)) if __name__ == '__main__': if len(sys.argv) == 1: # read fixture from stdin fixtures = {'stdin': json.load(sys.stdin)} else: # load fixtures from specified file or dir try: fixtures = testutils.get_tests_from_file_or_dir(sys.argv[1]) except: fixtures = {'stdin': json.loads(sys.argv[1])} for filename, tests in list(fixtures.items()): for testname, testdata in list(tests.items()): if len(sys.argv) < 3 or testname == sys.argv[2]: print("Testing: %s %s" % (filename, testname)) testutils.check_vm_test(testdata) else: fixtures = testutils.get_tests_from_file_or_dir( os.path.join(testutils.fixture_path, 'VMTests')) def mk_test_func(filename, testname, testdata): return lambda: do_test_vm(filename, testname, testdata) for filename, tests in list(fixtures.items()): for testname, testdata in list(tests.items()): func_name = 'test_%s_%s' % (filename, testname) globals()[func_name] = mk_test_func(filename, testname, testdata)
def test_vm(filename, testname, testdata): testutils.check_vm_test(testutils.fixture_to_bytes(testdata))