|
|
@@ -78,16 +78,16 @@ int test_error_propagate(pkpy_vm vm) {
|
|
|
pkpy_vm vm;
|
|
|
|
|
|
void cleanup(void) {
|
|
|
- pkpy_delete_vm(vm);
|
|
|
+ pkpy_vm_destroy(vm);
|
|
|
}
|
|
|
|
|
|
int main(int argc, char** argv) {
|
|
|
|
|
|
- vm = pkpy_new_vm(true, true);
|
|
|
+ vm = pkpy_vm_create(true, true);
|
|
|
atexit(cleanup);
|
|
|
|
|
|
- //test exec
|
|
|
- check(pkpy_vm_exec(vm, "print('hello world!')"));
|
|
|
+ //test run
|
|
|
+ check(pkpy_vm_run(vm, "print('hello world!')"));
|
|
|
|
|
|
error(pkpy_get_global(vm, "nonexistatn"));
|
|
|
|
|
|
@@ -95,7 +95,7 @@ int main(int argc, char** argv) {
|
|
|
int r_int;
|
|
|
check(pkpy_push_int(vm, 11));
|
|
|
check(pkpy_set_global(vm, "eleven"));
|
|
|
- check(pkpy_vm_exec(vm, "print(eleven)"));
|
|
|
+ check(pkpy_vm_run(vm, "print(eleven)"));
|
|
|
check(pkpy_get_global(vm, "eleven"));
|
|
|
check(pkpy_is_int(vm, -1));
|
|
|
check(pkpy_to_int(vm, -1, &r_int));
|
|
|
@@ -109,7 +109,7 @@ int main(int argc, char** argv) {
|
|
|
double r_float;
|
|
|
check(pkpy_push_float(vm, 11.11));
|
|
|
check(pkpy_set_global(vm, "elevenf"));
|
|
|
- check(pkpy_vm_exec(vm, "print(elevenf)"));
|
|
|
+ check(pkpy_vm_run(vm, "print(elevenf)"));
|
|
|
check(pkpy_get_global(vm, "elevenf"));
|
|
|
check(pkpy_is_float(vm, -1));
|
|
|
check(pkpy_to_float(vm, -1, &r_float));
|
|
|
@@ -123,7 +123,7 @@ int main(int argc, char** argv) {
|
|
|
bool r_bool;
|
|
|
check(pkpy_push_bool(vm, false));
|
|
|
check(pkpy_set_global(vm, "false_test"));
|
|
|
- check(pkpy_vm_exec(vm, "print(false_test)"));
|
|
|
+ check(pkpy_vm_run(vm, "print(false_test)"));
|
|
|
check(pkpy_get_global(vm, "false_test"));
|
|
|
check(pkpy_is_bool(vm, -1));
|
|
|
check(pkpy_to_bool(vm, -1, &r_bool));
|
|
|
@@ -137,7 +137,7 @@ int main(int argc, char** argv) {
|
|
|
char* r_string;
|
|
|
check(pkpy_push_string(vm, "hello!"));
|
|
|
check(pkpy_set_global(vm, "hello1"));
|
|
|
- check(pkpy_vm_exec(vm, "print(hello1)"));
|
|
|
+ check(pkpy_vm_run(vm, "print(hello1)"));
|
|
|
check(pkpy_push_stringn(vm, "hello!", 5));
|
|
|
check(pkpy_is_string(vm, -1));
|
|
|
check(pkpy_to_string(vm, -1, &r_string));
|
|
|
@@ -151,7 +151,7 @@ int main(int argc, char** argv) {
|
|
|
printf("\ntesting None methods\n");
|
|
|
check(pkpy_push_none(vm));
|
|
|
check(pkpy_set_global(vm, "none"));
|
|
|
- check(pkpy_vm_exec(vm, "print(none)"));
|
|
|
+ check(pkpy_vm_run(vm, "print(none)"));
|
|
|
check(pkpy_get_global(vm, "none"));
|
|
|
check(pkpy_is_none(vm, -1));
|
|
|
fail(pkpy_is_int(vm, -1));
|
|
|
@@ -177,15 +177,15 @@ int main(int argc, char** argv) {
|
|
|
check(pkpy_is_none(vm, -1));
|
|
|
|
|
|
printf("\ntesting error catching\n");
|
|
|
- error(pkpy_vm_exec(vm, "let's make sure syntax errors get caught"));
|
|
|
+ error(pkpy_vm_run(vm, "let's make sure syntax errors get caught"));
|
|
|
check(pkpy_stack_size(vm) == 0); //stack should be cleared after error is resolved
|
|
|
|
|
|
printf("\ntesting calls\n");
|
|
|
|
|
|
- check(pkpy_vm_exec(vm, "def x(x, y) : return x - y"));
|
|
|
- check(pkpy_vm_exec(vm, "def vararg_x(*x) : return sum(x)"));
|
|
|
- check(pkpy_vm_exec(vm, "def keyword_x(x=1, y=1) : return x+y"));
|
|
|
- check(pkpy_vm_exec(vm, "def retmany_x() : return 1, 2, 3"));
|
|
|
+ check(pkpy_vm_run(vm, "def x(x, y) : return x - y"));
|
|
|
+ check(pkpy_vm_run(vm, "def vararg_x(*x) : return sum(x)"));
|
|
|
+ check(pkpy_vm_run(vm, "def keyword_x(x=1, y=1) : return x+y"));
|
|
|
+ check(pkpy_vm_run(vm, "def retmany_x() : return 1, 2, 3"));
|
|
|
|
|
|
check(pkpy_get_global(vm, "x"));
|
|
|
check(pkpy_push_int(vm, 2));
|
|
|
@@ -231,28 +231,28 @@ int main(int argc, char** argv) {
|
|
|
check(pkpy_get_global(vm, "x"));
|
|
|
error(pkpy_call(vm, 0));
|
|
|
|
|
|
- check(pkpy_vm_exec(vm, "l = []"));
|
|
|
+ check(pkpy_vm_run(vm, "l = []"));
|
|
|
|
|
|
check(pkpy_get_global(vm, "l"));
|
|
|
check(pkpy_push_string(vm, "hello"));
|
|
|
check(pkpy_call_method(vm, "append", 1));
|
|
|
- check(pkpy_vm_exec(vm, "print(l)"));
|
|
|
+ check(pkpy_vm_run(vm, "print(l)"));
|
|
|
|
|
|
|
|
|
printf("\ntesting pushing functions\n");
|
|
|
|
|
|
check(pkpy_push_function(vm, test_binding));
|
|
|
check(pkpy_set_global(vm, "test_binding"));
|
|
|
- check(pkpy_vm_exec(vm, "print(test_binding())"));
|
|
|
+ check(pkpy_vm_run(vm, "print(test_binding())"));
|
|
|
|
|
|
check(pkpy_push_function(vm, test_multiple_return));
|
|
|
check(pkpy_set_global(vm, "test_multiple_return"));
|
|
|
- check(pkpy_vm_exec(vm, "test_multiple_return()"));
|
|
|
+ check(pkpy_vm_run(vm, "test_multiple_return()"));
|
|
|
check(pkpy_stack_size(vm) == 2);
|
|
|
|
|
|
check(pkpy_push_function(vm, test_error_propagate));
|
|
|
check(pkpy_set_global(vm, "test_error_propagate"));
|
|
|
- error(pkpy_vm_exec(vm, "test_error_propagate()"));
|
|
|
+ error(pkpy_vm_run(vm, "test_error_propagate()"));
|
|
|
|
|
|
check(pkpy_get_global(vm, "test_multiple_return"));
|
|
|
check(pkpy_call(vm, 0));
|