int main(int argc, char **argv) { test_prepare(); test_allow(); test_0(); getchar(); #if 1 test_allowed_read(); getchar(); test_allowed_write(); getchar(); test_destroy(); test_prepare(); test_allow(); test_0(); getchar(); #endif test_not_allowed_read(); getchar(); test_not_allowed_write(); getchar(); test_destroy(); return (0); }
void run() { { beast::asio::streambuf b(10); std::string const s = "1234567890"; b << s; expect (to_str(b.data()) == s); b.prepare(5); } { beast::asio::streambuf b(10); b.prepare(10); b.commit(10); b.consume(10); } { beast::asio::streambuf b(5); boost::asio::buffer_copy(b.prepare(14), boost::asio::buffer(std::string("1234567890ABCD"))); b.commit(4); expect(to_str(b.data()) == "1234"); b.consume(4); b.commit(10); expect(to_str(b.data()) == "567890ABCD"); } test_prepare(); test_commit(); test_consume(); }
int main(int argc, char **argv) { int ret; struct ev_eloop *eloop; struct uterm_vt_master *vtm; struct uterm_input *input; struct uterm_vt *vt; size_t onum; onum = sizeof(options) / sizeof(*options); ret = test_prepare(options, onum, argc, argv, &eloop); if (ret) goto err_fail; ret = uterm_vt_master_new(&vtm, eloop); if (ret) goto err_exit; ret = uterm_input_new(&input, eloop, "", "", "", "", "", 0, 0, log_llog, NULL); if (ret) goto err_vtm; ret = uterm_vt_allocate(vtm, &vt, UTERM_VT_FAKE | UTERM_VT_REAL, "seat0", input, vtpath, NULL, NULL); if (ret) goto err_input; if (switchvt) { ret = uterm_vt_activate(vt); if (ret == -EINPROGRESS) log_debug("VT switch in progress"); else if (ret) log_warn("cannot switch to VT: %d", ret); } ev_eloop_run(eloop, -1); log_debug("Terminating"); /* switch back to previous VT but wait for eloop to process SIGUSR0 */ if (switchvt) { ret = uterm_vt_deactivate(vt); if (ret == -EINPROGRESS) ev_eloop_run(eloop, 50); } uterm_vt_unref(vt); err_input: uterm_input_unref(input); err_vtm: uterm_vt_master_unref(vtm); err_exit: test_exit(options, onum, eloop); err_fail: if (ret != -ECANCELED) test_fail(ret); return abs(ret); }
int main(int argc, char **argv) { int ret; struct uterm_monitor *mon; size_t onum; onum = sizeof(options) / sizeof(*options); ret = test_prepare(options, onum, argc, argv, &eloop); if (ret) goto err_fail; if (!setlocale(LC_ALL, "")) { log_err("Cannot set locale: %m"); ret = -EFAULT; goto err_exit; } ret = uterm_monitor_new(&mon, eloop, monitor_event, NULL); if (ret) goto err_exit; ret = ev_eloop_register_signal_cb(eloop, SIGQUIT, sig_quit, NULL); if (ret) goto err_mon; system("stty -echo"); uterm_monitor_scan(mon); ev_eloop_run(eloop, -1); system("stty echo"); ev_eloop_unregister_signal_cb(eloop, SIGQUIT, sig_quit, NULL); err_mon: uterm_monitor_unref(mon); err_exit: test_exit(options, onum, eloop); err_fail: if (ret != -ECANCELED) test_fail(ret); return abs(ret); }
int main(int argc, char **argv) { int ret; struct ev_eloop *eloop; struct kmscon_vt *vt; ret = test_prepare(argc, argv, &eloop); if (ret) goto err_fail; ret = kmscon_vt_new(&vt, NULL, NULL); if (ret) goto err_exit; ret = kmscon_vt_open(vt, KMSCON_VT_NEW, eloop); if (ret) goto err_vt; ret = kmscon_vt_enter(vt); if (ret) log_warn("Cannot switch to VT"); ev_eloop_run(eloop, -1); log_debug("Terminating\n"); /* switch back to previous VT but wait for eloop to process SIGUSR0 */ ret = kmscon_vt_leave(vt); if (ret == -EINPROGRESS) ev_eloop_run(eloop, 50); err_vt: kmscon_vt_unref(vt); err_exit: test_exit(eloop); err_fail: test_fail(ret); return abs(ret); }
int main(int argc, char **argv) { struct uterm_video *video; int ret; const char *node; const struct uterm_video_module *mode; size_t onum; onum = sizeof(options) / sizeof(*options); ret = test_prepare(options, onum, argc, argv, &eloop); if (ret) goto err_fail; if (output_conf.fbdev) { mode = UTERM_VIDEO_FBDEV; node = "/dev/fb0"; } else { mode = UTERM_VIDEO_DRM3D; node = "/dev/dri/card0"; } if (output_conf.dev) node = output_conf.dev; log_notice("Creating video object using %s...", node); ret = uterm_video_new(&video, eloop, node, mode); if (ret) { if (mode == UTERM_VIDEO_DRM3D) { log_notice("cannot create drm device; trying drm2d mode"); ret = uterm_video_new(&video, eloop, node, UTERM_VIDEO_DRM2D); if (ret) goto err_exit; } else { goto err_exit; } } log_notice("Wakeing up video object..."); ret = uterm_video_wake_up(video); if (ret < 0) goto err_unref; if (!output_conf.test) { ret = list_outputs(video); if (ret) { log_err("Cannot list outputs: %d", ret); goto err_unref; } } else { ret = blit_outputs(video); if (ret) { log_err("Cannot set outputs: %d", ret); goto err_unref; } } err_unref: uterm_video_unref(video); err_exit: test_exit(options, onum, eloop); err_fail: if (ret != -ECANCELED) test_fail(ret); return abs(ret); }
int main(int argc, char **argv) { struct uterm_video *video; int ret; unsigned int mode; const char *node; ret = test_prepare(argc, argv, &eloop); if (ret) goto err_fail; if (conf_global.use_fbdev) { mode = UTERM_VIDEO_FBDEV; node = "/dev/fb0"; } else { mode = UTERM_VIDEO_DRM; node = "/dev/dri/card0"; } log_notice("Creating video object using %s...", node); ret = uterm_video_new(&video, eloop, mode, node); if (ret) { if (mode == UTERM_VIDEO_DRM) { log_notice("cannot create drm device; trying dumb drm mode"); ret = uterm_video_new(&video, eloop, UTERM_VIDEO_DUMB, node); if (ret) goto err_exit; } else { goto err_exit; } } log_notice("Wakeing up video object..."); ret = uterm_video_wake_up(video); if (ret < 0) goto err_unref; if (argc < 2) { ret = list_outputs(video); if (ret) { log_err("Cannot list outputs: %d", ret); goto err_unref; } } else { ret = uterm_video_use(video); if (ret) ret = blit_outputs(video); else ret = set_outputs(video); if (ret) { log_err("Cannot set outputs: %d", ret); goto err_unref; } } err_unref: uterm_video_unref(video); err_exit: test_exit(eloop); err_fail: test_fail(ret); return abs(ret); }