def test_static_get(self): vm = VM() bigtuple.new(vm) for val in range(200): vm.push(val) vm.push(val + 100) vm.swap2() bigtuple.set_val(vm) tup = vm.stack.items[0] for val in range(200): self.assertEqual(bigtuple.get_static(tup, val), val + 100)
def test_getset(self): vm = VM() keyvalue.new(vm) for val in range(200): vm.push(val) vm.push(val + 1000) vm.swap2() keyvalue.set_val(vm) for val in range(200): vm.push(val) vm.dup1() keyvalue.get(vm) self.assertEqual(val + 1000, vm.stack.items[0]) vm.pop()
def test_getset(self): indexes = [1, 10, 5, 6, 20, 100, 7, 5] vm = VM() sized_byterange.new(vm) for val in indexes: vm.push(val * 58) vm.push(val + 100) vm.swap2() sized_byterange.set_val(vm) for val in indexes: vm.push(val * 58) vm.dup1() sized_byterange.get(vm) self.assertEqual(val + 100, vm.stack.items[0]) vm.pop()
def test_static_get(self): vm = VM() sized_byterange.new(vm) for val in range(200): vm.push(val * 58) vm.push(val + 100) vm.swap2() sized_byterange.set_val(vm) tup = vm.stack.items[0] for val in range(200): vm.push(val * 58) vm.dup1() sized_byterange.get(vm) self.assertEqual(sized_byterange.get_static(tup, val * 58), vm.stack.items[0]) vm.pop()
def test_frombytes(self): data = bytearray(random.getrandbits(8) for _ in range(500)) data2 = bytearray(data) if len(data2) % 32 != 0: data2 = data2 + b"\0" * (32 - (len(data2) % 32)) chunks = [ eth_utils.big_endian_to_int(data2[i:i + 32]) for i in range(0, len(data2), 32) ] vm = VM() byterange.new(vm) for i, chunk in enumerate(chunks): vm.push(i * 32) vm.push(chunk) vm.swap2() byterange.set_val(vm) self.assertEqual(byterange.frombytes(data), vm.stack[0])
def test_get_static(self): vm = VM() keyvalue.new(vm) for val in range(200): vm.push(val) vm.push(val + 1000) vm.swap2() keyvalue.set_val(vm) kvs = vm.stack.items[0] for val in range(200): vm.push(val) vm.dup1() keyvalue.get(vm) self.assertEqual(keyvalue.get_static(kvs, val), vm.stack.items[0]) vm.pop() self.assertEqual(keyvalue.get_static(kvs, 100000), value.Tuple([]))