def test_get(self): vm = VM() arr = Array(100) vm.push(Array.from_list(list(range(100)))) for i in range(100): vm.dup0() arr.get(i)(vm) self.assertEqual(vm.stack[0], i) vm.pop()
def test_get(self): for size in sizes: bs = bigstruct.BigStruct([(i + 1, i + 1, i + 1) for i in range(size)]) vm = VM() bs.initialize(vm) for i in range(size): vm.dup0() bs.get(i + 1, vm) self.assertEqual(vm.stack[0], i + 1) vm.pop()
def test_get(self): bs = bigstruct.BigStruct([(i + 1, str(i + 1), i + 1) for i in range(101)]) vm = VM() bs.initialize(vm) for i in range(101): vm.dup0() bs.get(str(i + 1), vm) self.assertEqual(vm.stack[0], i + 1) vm.pop()
def test_empty(self): vm = VM() vm.push(10) stack.new(vm) vm.dup0() stack.isempty(vm) self.assertTrue(vm.stack[0]) vm.pop() stack.push(vm) stack.isempty(vm) self.assertFalse(vm.stack[0])
def test_simple(self): vm = VM() stack.new(vm) for val in range(200): vm.push(val) vm.swap1() stack.push(vm) for val in range(199, -1, -1): stack.pop(vm) self.assertEqual(vm.stack[0], val) vm.pop()
def test_getset(self): vm = VM() bs = bigstruct.BigStruct([(i + 1, i + 1, i + 1) for i in range(101)]) bs.initialize(vm) vm.dup0() bs.get(13, vm) self.assertEqual(vm.stack[0], 13) vm.pop() vm.push(666) vm.swap1() bs.set_val(25, vm) vm.pop()
def test_simple(self): vm = VM() queue.new(vm) for val in range(200): vm.push(val) vm.swap1() queue.put(vm) for val in range(200): queue.get(vm) self.assertEqual(vm.stack[0], val) vm.pop()
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_set_static(self): kvs = keyvalue.make() for val in range(200): kvs = keyvalue.set_static(kvs, val, val + 1000) vm = VM() vm.push(kvs) for val in range(200): vm.push(val) vm.dup1() keyvalue.get(vm) self.assertEqual(vm.stack[0], val + 1000) vm.pop() kvs = keyvalue.set_static(kvs, 100, 2100) self.assertEqual(keyvalue.get_static(kvs, 100), 2100)
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_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([]))