Fix fix fix tests.

git-svn-id: https://www.unprompted.com/svn/projects/tildefriends/trunk@4852 ed5197a5-7fde-0310-b194-c3ffbd925b24
This commit is contained in:
Cory McWilliams 2024-02-17 15:33:08 +00:00
parent dca48fae36
commit 22bf046643
4 changed files with 14 additions and 7 deletions

View File

@ -398,8 +398,7 @@ static void _shed_privileges()
#if defined(__OpenBSD__) #if defined(__OpenBSD__)
/* How do I unveil nothing? */ /* How do I unveil nothing? */
if (unveil("/dev/null", "r") || if (unveil("/dev/null", "r") || unveil(NULL, NULL))
unveil(NULL, NULL))
{ {
perror("unveil"); perror("unveil");
exit(-1); exit(-1);

View File

@ -34,6 +34,10 @@
#include <unistd.h> #include <unistd.h>
#endif #endif
#if defined(_WIN32)
#define WEXITSTATUS(x) (x)
#endif
#if !defined(__APPLE__) && !defined(__OpenBSD__) #if !defined(__APPLE__) && !defined(__OpenBSD__)
#include <malloc.h> #include <malloc.h>
#endif #endif
@ -2134,8 +2138,12 @@ static JSValue _tf_task_setTimeout(JSContext* context, JSValueConst this_val, in
static JSValue _tf_task_pokeSandbox(JSContext* context, JSValueConst this_val, int argc, JSValueConst* argv) static JSValue _tf_task_pokeSandbox(JSContext* context, JSValueConst this_val, int argc, JSValueConst* argv)
{ {
#if TARGET_OS_IPHONE
tf_printf("Not sure what we can try to poke on iOS.\n");
#else
tf_printf("Poking sandbox.\n"); tf_printf("Poking sandbox.\n");
system("pwd"); int result = system("pwd");
tf_printf("Sandbox poked.\n"); tf_printf("Sandbox poked.\n");
return JS_UNDEFINED; #endif
return JS_NewInt32(context, WEXITSTATUS(result));
} }

View File

@ -175,6 +175,7 @@ static JSValue _taskstub_create(JSContext* context, JSValueConst this_val, int a
options.stdio = io; options.stdio = io;
options.stdio_count = sizeof(io) / sizeof(*io); options.stdio_count = sizeof(io) / sizeof(*io);
options.file = command_argv[0]; options.file = command_argv[0];
options.env = (char*[]) { "ASAN_OPTIONS=detect_leaks=0", NULL };
stub->_process.data = stub; stub->_process.data = stub;
int spawn_result = uv_spawn(tf_task_get_loop(parent), &stub->_process, &options); int spawn_result = uv_spawn(tf_task_get_loop(parent), &stub->_process, &options);

View File

@ -77,9 +77,8 @@ static void _test_sandbox(const tf_test_options_t* options)
_write_file("out/child.js", _write_file("out/child.js",
"print('Poking the sandbox. This should fail.');\n" "print('Poking the sandbox. This should fail.');\n"
"pokeSandbox();\n" "let r = pokeSandbox();\n"
"print('We poked the sandbox without failing.');\n" "exit(r);\n");
"exit(0);\n");
char command[256]; char command[256];
snprintf(command, sizeof(command), "%s run --db-path=:memory: -s out/test.js" TEST_ARGS, options->exe_path); snprintf(command, sizeof(command), "%s run --db-path=:memory: -s out/test.js" TEST_ARGS, options->exe_path);