Pārlūkot izejas kodu

update tests

master
Martin Dørum pirms 3 gadiem
vecāks
revīzija
dd7855a0ad
2 mainītis faili ar 9 papildinājumiem un 7 dzēšanām
  1. 1
    1
      test/src/eval.t.c
  2. 8
    6
      test/src/namespace.t.c

+ 1
- 1
test/src/eval.t.c Parādīt failu

@@ -13,7 +13,7 @@ static struct l2_vm vm;

static struct l2_vm_value *var_lookup(const char *name) {
l2_word atom_id = l2_strset_get(&gen.atomset, name);
l2_word id = l2_vm_namespace_get(&vm.values[vm.nstack[0]], atom_id);
l2_word id = l2_vm_namespace_get(&vm, &vm.values[vm.nstack[0]], atom_id);
return &vm.values[id];
}


+ 8
- 6
test/src/namespace.t.c Parādīt failu

@@ -2,6 +2,8 @@

#include <snow/snow.h>

static struct l2_vm vm = {0};

describe(l2_vm_namespace) {
struct l2_vm_value val = {0};

@@ -13,26 +15,26 @@ describe(l2_vm_namespace) {
test("basic functionality") {
l2_vm_namespace_set(&val, 100, 50);
l2_vm_namespace_set(&val, 30, 600);
asserteq(l2_vm_namespace_get(&val, 100), 50);
asserteq(l2_vm_namespace_get(&val, 30), 600);
asserteq(l2_vm_namespace_get(&vm, &val, 100), 50);
asserteq(l2_vm_namespace_get(&vm, &val, 30), 600);
}

it("handles duplicates") {
l2_vm_namespace_set(&val, 536, 600);
l2_vm_namespace_set(&val, 100, 400);
l2_vm_namespace_set(&val, 536, 45);
asserteq(l2_vm_namespace_get(&val, 100), 400);
asserteq(l2_vm_namespace_get(&val, 536), 45);
asserteq(l2_vm_namespace_get(&vm, &val, 100), 400);
asserteq(l2_vm_namespace_get(&vm, &val, 536), 45);
}

it("handles a whole bunch of values") {
for (int i = 1; i < 500; ++i) {
l2_vm_namespace_set(&val, i, i + 50);
asserteq(l2_vm_namespace_get(&val, i), i + 50);
asserteq(l2_vm_namespace_get(&vm, &val, i), i + 50);
}

for (int i = 1; i < 500; ++i) {
asserteq(l2_vm_namespace_get(&val, i), i + 50);
asserteq(l2_vm_namespace_get(&vm, &val, i), i + 50);
}
}
}

Notiek ielāde…
Atcelt
Saglabāt