static void test_static_prop(void) { g_test_trap_subprocess("/qdev/properties/static/default/subprocess", 0, 0); g_test_trap_assert_passed(); g_test_trap_assert_stderr(""); g_test_trap_assert_stdout(""); }
static void test_profiler (void) { if (g_test_subprocess ()) { gpointer p; g_mem_set_vtable (glib_mem_profiler_table); p = g_malloc (100); p = g_realloc (p, 200); g_free (p); p = g_malloc0 (1000); g_free (p); p = g_try_malloc (2000); p = g_try_realloc (p, 3000); g_free (p); p = g_malloc (0); p = g_malloc0 (0); p = g_realloc (NULL, 0); p = g_try_malloc (0); p = g_try_realloc (NULL, 0); g_mem_profile (); exit (0); } g_test_trap_subprocess (NULL, 0, 0); g_test_trap_assert_passed (); g_test_trap_assert_stdout ("*GLib Memory statistics*"); }
static void test_dynamic_globalprop_nouser(void) { g_test_trap_subprocess("/qdev/properties/dynamic/global/nouser/subprocess", 0, 0); g_test_trap_assert_passed(); g_test_trap_assert_stderr(""); g_test_trap_assert_stdout(""); }
void test_help(void) { if (g_test_subprocess()) { char *test_argv[] = { "", "-h" }; evaluate_options(2, test_argv); } g_test_trap_subprocess(NULL, 0, 0); g_test_trap_assert_passed(); g_test_trap_assert_stdout(usage_text("")); }
static void test_handler_run_success(void) { if (g_test_subprocess()) { handler_add("http", "echo -n 'handled uri %s'"); handle_uri(TEST_URI); return; } g_test_trap_subprocess(NULL, 0, 0); g_test_trap_assert_passed(); g_test_trap_assert_stdout("handled uri " TEST_URI); }
static void test_dynamic_globalprop(void) { g_test_trap_subprocess("/qdev/properties/dynamic/global/subprocess", 0, 0); g_test_trap_assert_passed(); g_test_trap_assert_stderr_unmatched("*prop1*"); g_test_trap_assert_stderr_unmatched("*prop2*"); g_test_trap_assert_stderr("*Warning: global dynamic-prop-type-bad.prop3 has invalid class name\n*"); g_test_trap_assert_stderr_unmatched("*prop4*"); g_test_trap_assert_stderr("*Warning: global nohotplug-type.prop5=105 not used\n*"); g_test_trap_assert_stderr("*Warning: global nondevice-type.prop6 has invalid class name\n*"); g_test_trap_assert_stdout(""); }
static void test_LSDebugLogIncoming(TestData *fixture, gconstpointer user_data) { const char *expected_stdout = "*RX: where token <<0>> sender: com.name.service sender_unique: com.name.service.0\n"; const char *expected_verbose_stdout = "*RX: where token <<0>> sender: com.name.service sender_unique: com.name.service.0 payload: {}\n"; setenv("G_MESSAGES_DEBUG", "all", 1); if (g_test_trap_fork(0, G_TEST_TRAP_SILENCE_STDOUT)) { LSDebugLogIncoming("where", GINT_TO_POINTER(1)); exit(0); } g_test_trap_assert_stdout_unmatched(expected_stdout); // enable DEBUG_TRACING _ls_debug_tracing = 1; if (g_test_trap_fork(0, G_TEST_TRAP_SILENCE_STDOUT)) { LSDebugLogIncoming("where", GINT_TO_POINTER(1)); exit(0); } g_test_trap_assert_stdout(expected_stdout); // enable DEBUG_VERBOSE _ls_debug_tracing = 2; if (g_test_trap_fork(0, G_TEST_TRAP_SILENCE_STDOUT)) { LSDebugLogIncoming("where", GINT_TO_POINTER(1)); exit(0); } g_test_trap_assert_stdout(expected_verbose_stdout); _ls_debug_tracing = 0; }
static void test_x11_autolaunch (void) { if (g_test_subprocess ()) { g_unsetenv ("DISPLAY"); g_unsetenv ("DBUS_SESSION_BUS_ADDRESS"); g_unsetenv ("XDG_RUNTIME_DIR"); set_up_mock_dbus_launch (); print_address (); tear_down_mock_dbus_launch (); return; } g_test_trap_subprocess (NULL, 0, 0); g_test_trap_assert_stderr_unmatched ("?*"); g_test_trap_assert_stdout ("hello:this=address-is-from-the,mock=dbus-launch\n"); g_test_trap_assert_passed (); }
static void test_xdg_runtime (void) { if (g_test_subprocess ()) { g_unsetenv ("DISPLAY"); g_unsetenv ("DBUS_SESSION_BUS_ADDRESS"); set_up_mock_xdg_runtime_dir (); set_up_mock_dbus_launch (); print_address (); tear_down_mock_dbus_launch (); tear_down_mock_xdg_runtime_dir (); return; } g_test_trap_subprocess (NULL, 0, 0); g_test_trap_assert_stderr_unmatched ("?*"); g_test_trap_assert_stdout ("unix:path=/tmp/gdbus%2Cunix%2Ctest.*/bus\n"); g_test_trap_assert_passed (); }
static void char_console_test(void) { g_test_trap_subprocess("/char/console/subprocess", 0, 0); g_test_trap_assert_passed(); g_test_trap_assert_stdout("CONSOLE"); }
static void char_stdio_test(void) { g_test_trap_subprocess("/char/stdio/subprocess", 0, 0); g_test_trap_assert_passed(); g_test_trap_assert_stdout("buf"); }