Changes in uspace/srv/hid/display/test/client.c [46a47c0:195b7b3] in mainline
- File:
-
- 1 edited
-
uspace/srv/hid/display/test/client.c (modified) (28 diffs)
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/hid/display/test/client.c
r46a47c0 r195b7b3 1 1 /* 2 * Copyright (c) 20 23Jiri Svoboda2 * Copyright (c) 2019 Jiri Svoboda 3 3 * All rights reserved. 4 4 * … … 34 34 #include "../client.h" 35 35 #include "../display.h" 36 #include "../seat.h"37 36 #include "../window.h" 38 37 … … 79 78 ds_display_t *disp; 80 79 ds_client_t *client; 81 ds_seat_t *seat;82 80 ds_window_t *w0; 83 81 ds_window_t *w1; 84 82 ds_window_t *wnd; 85 83 display_wnd_params_t params; 86 bool called_cb = NULL; 87 errno_t rc; 88 89 rc = ds_display_create(NULL, df_none, &disp); 90 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 91 92 rc = ds_client_create(disp, &test_ds_client_cb, &called_cb, &client); 93 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 94 95 rc = ds_seat_create(disp, "Alice", &seat); 84 errno_t rc; 85 86 rc = ds_display_create(NULL, df_none, &disp); 87 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 88 89 rc = ds_client_create(disp, &test_ds_client_cb, NULL, &client); 96 90 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 97 91 … … 120 114 ds_window_destroy(w0); 121 115 ds_window_destroy(w1); 122 ds_seat_destroy(seat);123 116 ds_client_destroy(client); 124 117 ds_display_destroy(disp); … … 130 123 ds_display_t *disp; 131 124 ds_client_t *client; 132 ds_seat_t *seat;133 125 ds_window_t *w0; 134 126 ds_window_t *w1; 135 127 ds_window_t *wnd; 136 128 display_wnd_params_t params; 137 bool called_cb = NULL; 138 errno_t rc; 139 140 rc = ds_display_create(NULL, df_none, &disp); 141 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 142 143 rc = ds_client_create(disp, &test_ds_client_cb, &called_cb, &client); 144 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 145 146 rc = ds_seat_create(disp, "Alice", &seat); 129 errno_t rc; 130 131 rc = ds_display_create(NULL, df_none, &disp); 132 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 133 134 rc = ds_client_create(disp, &test_ds_client_cb, NULL, &client); 147 135 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 148 136 … … 168 156 ds_window_destroy(w0); 169 157 ds_window_destroy(w1); 170 ds_seat_destroy(seat);171 158 ds_client_destroy(client); 172 159 ds_display_destroy(disp); … … 178 165 ds_display_t *disp; 179 166 ds_client_t *client; 180 ds_seat_t *seat;181 167 ds_window_t *wnd; 182 168 display_wnd_params_t params; … … 192 178 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 193 179 194 rc = ds_seat_create(disp, "Alice", &seat); 195 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 196 197 display_wnd_params_init(¶ms); 198 params.rect.p0.x = params.rect.p0.y = 0; 199 params.rect.p1.x = params.rect.p1.y = 1; 200 201 rc = ds_window_create(client, ¶ms, &wnd); 202 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 203 204 /* New window gets focused event */ 205 PCUT_ASSERT_TRUE(called_cb); 206 207 rc = ds_client_get_event(client, &rwindow, &revent); 208 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 209 210 called_cb = false; 180 display_wnd_params_init(¶ms); 181 params.rect.p0.x = params.rect.p0.y = 0; 182 params.rect.p1.x = params.rect.p1.y = 1; 183 184 rc = ds_window_create(client, ¶ms, &wnd); 185 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 186 187 PCUT_ASSERT_FALSE(called_cb); 211 188 212 189 rc = ds_client_get_event(client, &rwindow, &revent); … … 226 203 227 204 ds_window_destroy(wnd); 228 ds_seat_destroy(seat);229 205 ds_client_destroy(client); 230 206 ds_display_destroy(disp); … … 236 212 ds_display_t *disp; 237 213 ds_client_t *client; 238 ds_seat_t *seat;239 214 ds_window_t *wnd; 240 215 display_wnd_params_t params; 241 216 ds_window_t *rwindow; 242 display_wnd_focus_ev_t efocus;243 217 display_wnd_ev_t revent; 244 218 bool called_cb = NULL; … … 251 225 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 252 226 253 rc = ds_seat_create(disp, "Alice", &seat); 254 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 255 256 display_wnd_params_init(¶ms); 257 params.rect.p0.x = params.rect.p0.y = 0; 258 params.rect.p1.x = params.rect.p1.y = 1; 259 260 rc = ds_window_create(client, ¶ms, &wnd); 261 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 262 263 /* New window gets focused event */ 264 PCUT_ASSERT_TRUE(called_cb); 265 266 rc = ds_client_get_event(client, &rwindow, &revent); 267 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 268 269 called_cb = false; 270 271 rc = ds_client_get_event(client, &rwindow, &revent); 272 PCUT_ASSERT_ERRNO_VAL(ENOENT, rc); 273 274 efocus.nfocus = 42; 275 276 rc = ds_client_post_focus_event(client, wnd, &efocus); 227 display_wnd_params_init(¶ms); 228 params.rect.p0.x = params.rect.p0.y = 0; 229 params.rect.p1.x = params.rect.p1.y = 1; 230 231 rc = ds_window_create(client, ¶ms, &wnd); 232 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 233 234 PCUT_ASSERT_FALSE(called_cb); 235 236 rc = ds_client_get_event(client, &rwindow, &revent); 237 PCUT_ASSERT_ERRNO_VAL(ENOENT, rc); 238 239 rc = ds_client_post_focus_event(client, wnd); 277 240 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 278 241 PCUT_ASSERT_TRUE(called_cb); … … 282 245 PCUT_ASSERT_EQUALS(wnd, rwindow); 283 246 PCUT_ASSERT_EQUALS(wev_focus, revent.etype); 284 PCUT_ASSERT_INT_EQUALS(efocus.nfocus, revent.ev.focus.nfocus);285 247 286 248 rc = ds_client_get_event(client, &rwindow, &revent); … … 288 250 289 251 ds_window_destroy(wnd); 290 ds_seat_destroy(seat);291 252 ds_client_destroy(client); 292 253 ds_display_destroy(disp); … … 298 259 ds_display_t *disp; 299 260 ds_client_t *client; 300 ds_seat_t *seat;301 261 ds_window_t *wnd; 302 262 display_wnd_params_t params; … … 313 273 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 314 274 315 rc = ds_seat_create(disp, "Alice", &seat); 316 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 317 318 display_wnd_params_init(¶ms); 319 params.rect.p0.x = params.rect.p0.y = 0; 320 params.rect.p1.x = params.rect.p1.y = 1; 321 322 rc = ds_window_create(client, ¶ms, &wnd); 323 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 324 325 /* New window gets focused event */ 326 PCUT_ASSERT_TRUE(called_cb); 327 328 rc = ds_client_get_event(client, &rwindow, &revent); 329 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 330 331 called_cb = false; 332 333 rc = ds_client_get_event(client, &rwindow, &revent); 334 PCUT_ASSERT_ERRNO_VAL(ENOENT, rc); 275 display_wnd_params_init(¶ms); 276 params.rect.p0.x = params.rect.p0.y = 0; 277 params.rect.p1.x = params.rect.p1.y = 1; 278 279 rc = ds_window_create(client, ¶ms, &wnd); 280 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 335 281 336 282 event.type = KEY_PRESS; … … 338 284 event.mods = 0; 339 285 event.c = L'\0'; 286 287 PCUT_ASSERT_FALSE(called_cb); 288 289 rc = ds_client_get_event(client, &rwindow, &revent); 290 PCUT_ASSERT_ERRNO_VAL(ENOENT, rc); 340 291 341 292 rc = ds_client_post_kbd_event(client, wnd, &event); … … 356 307 357 308 ds_window_destroy(wnd); 358 ds_seat_destroy(seat);359 309 ds_client_destroy(client); 360 310 ds_display_destroy(disp); … … 366 316 ds_display_t *disp; 367 317 ds_client_t *client; 368 ds_seat_t *seat;369 318 ds_window_t *wnd; 370 319 display_wnd_params_t params; … … 381 330 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 382 331 383 rc = ds_seat_create(disp, "Alice", &seat); 384 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 385 386 display_wnd_params_init(¶ms); 387 params.rect.p0.x = params.rect.p0.y = 0; 388 params.rect.p1.x = params.rect.p1.y = 1; 389 390 rc = ds_window_create(client, ¶ms, &wnd); 391 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 392 393 /* New window gets focused event */ 394 PCUT_ASSERT_TRUE(called_cb); 395 396 rc = ds_client_get_event(client, &rwindow, &revent); 397 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 398 399 called_cb = false; 400 401 PCUT_ASSERT_FALSE(called_cb); 402 403 rc = ds_client_get_event(client, &rwindow, &revent); 404 PCUT_ASSERT_ERRNO_VAL(ENOENT, rc); 332 display_wnd_params_init(¶ms); 333 params.rect.p0.x = params.rect.p0.y = 0; 334 params.rect.p1.x = params.rect.p1.y = 1; 335 336 rc = ds_window_create(client, ¶ms, &wnd); 337 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 405 338 406 339 event.type = POS_PRESS; 407 340 event.hpos = 1; 408 341 event.vpos = 2; 342 343 PCUT_ASSERT_FALSE(called_cb); 344 345 rc = ds_client_get_event(client, &rwindow, &revent); 346 PCUT_ASSERT_ERRNO_VAL(ENOENT, rc); 409 347 410 348 rc = ds_client_post_pos_event(client, wnd, &event); … … 424 362 425 363 ds_window_destroy(wnd); 426 ds_seat_destroy(seat);427 364 ds_client_destroy(client); 428 365 ds_display_destroy(disp); … … 434 371 ds_display_t *disp; 435 372 ds_client_t *client; 436 ds_seat_t *seat;437 373 ds_window_t *wnd; 438 374 display_wnd_params_t params; … … 449 385 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 450 386 451 rc = ds_seat_create(disp, "Alice", &seat); 452 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 453 454 display_wnd_params_init(¶ms); 455 params.rect.p0.x = params.rect.p0.y = 0; 456 params.rect.p1.x = params.rect.p1.y = 1; 457 458 rc = ds_window_create(client, ¶ms, &wnd); 459 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 460 461 /* New window gets focused event */ 462 PCUT_ASSERT_TRUE(called_cb); 463 464 rc = ds_client_get_event(client, &rwindow, &revent); 465 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 466 467 called_cb = false; 468 469 PCUT_ASSERT_FALSE(called_cb); 470 471 rc = ds_client_get_event(client, &rwindow, &revent); 472 PCUT_ASSERT_ERRNO_VAL(ENOENT, rc); 387 display_wnd_params_init(¶ms); 388 params.rect.p0.x = params.rect.p0.y = 0; 389 params.rect.p1.x = params.rect.p1.y = 1; 390 391 rc = ds_window_create(client, ¶ms, &wnd); 392 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 473 393 474 394 rect.p0.x = 1; … … 476 396 rect.p1.x = 3; 477 397 rect.p1.y = 4; 398 399 PCUT_ASSERT_FALSE(called_cb); 400 401 rc = ds_client_get_event(client, &rwindow, &revent); 402 PCUT_ASSERT_ERRNO_VAL(ENOENT, rc); 478 403 479 404 rc = ds_client_post_resize_event(client, wnd, &rect); … … 494 419 495 420 ds_window_destroy(wnd); 496 ds_seat_destroy(seat);497 421 ds_client_destroy(client); 498 422 ds_display_destroy(disp); … … 504 428 ds_display_t *disp; 505 429 ds_client_t *client; 506 ds_seat_t *seat;507 ds_window_t *wnd;508 display_wnd_params_t params;509 ds_window_t *rwindow;510 display_wnd_unfocus_ev_t eunfocus;511 display_wnd_ev_t revent;512 bool called_cb = NULL;513 errno_t rc;514 515 rc = ds_display_create(NULL, df_none, &disp);516 PCUT_ASSERT_ERRNO_VAL(EOK, rc);517 518 rc = ds_client_create(disp, &test_ds_client_cb, &called_cb, &client);519 PCUT_ASSERT_ERRNO_VAL(EOK, rc);520 521 rc = ds_seat_create(disp, "Alice", &seat);522 PCUT_ASSERT_ERRNO_VAL(EOK, rc);523 524 display_wnd_params_init(¶ms);525 params.rect.p0.x = params.rect.p0.y = 0;526 params.rect.p1.x = params.rect.p1.y = 1;527 528 rc = ds_window_create(client, ¶ms, &wnd);529 PCUT_ASSERT_ERRNO_VAL(EOK, rc);530 531 /* New window gets focused event */532 PCUT_ASSERT_TRUE(called_cb);533 534 rc = ds_client_get_event(client, &rwindow, &revent);535 PCUT_ASSERT_ERRNO_VAL(EOK, rc);536 537 called_cb = false;538 539 rc = ds_client_get_event(client, &rwindow, &revent);540 PCUT_ASSERT_ERRNO_VAL(ENOENT, rc);541 542 eunfocus.nfocus = 42;543 544 rc = ds_client_post_unfocus_event(client, wnd, &eunfocus);545 PCUT_ASSERT_ERRNO_VAL(EOK, rc);546 PCUT_ASSERT_TRUE(called_cb);547 548 rc = ds_client_get_event(client, &rwindow, &revent);549 PCUT_ASSERT_ERRNO_VAL(EOK, rc);550 PCUT_ASSERT_EQUALS(wnd, rwindow);551 PCUT_ASSERT_EQUALS(wev_unfocus, revent.etype);552 PCUT_ASSERT_INT_EQUALS(eunfocus.nfocus, revent.ev.unfocus.nfocus);553 554 rc = ds_client_get_event(client, &rwindow, &revent);555 PCUT_ASSERT_ERRNO_VAL(ENOENT, rc);556 557 ds_window_destroy(wnd);558 ds_seat_destroy(seat);559 ds_client_destroy(client);560 ds_display_destroy(disp);561 }562 563 /** Test ds_client_purge_window_events() */564 PCUT_TEST(client_purge_window_events)565 {566 ds_display_t *disp;567 ds_client_t *client;568 ds_seat_t *seat;569 430 ds_window_t *wnd; 570 431 display_wnd_params_t params; … … 580 441 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 581 442 582 rc = ds_seat_create(disp, "Alice", &seat); 583 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 584 585 display_wnd_params_init(¶ms); 586 params.rect.p0.x = params.rect.p0.y = 0; 587 params.rect.p1.x = params.rect.p1.y = 1; 588 589 rc = ds_window_create(client, ¶ms, &wnd); 590 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 591 592 /* New window gets focused event */ 443 display_wnd_params_init(¶ms); 444 params.rect.p0.x = params.rect.p0.y = 0; 445 params.rect.p1.x = params.rect.p1.y = 1; 446 447 rc = ds_window_create(client, ¶ms, &wnd); 448 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 449 450 PCUT_ASSERT_FALSE(called_cb); 451 452 rc = ds_client_get_event(client, &rwindow, &revent); 453 PCUT_ASSERT_ERRNO_VAL(ENOENT, rc); 454 455 rc = ds_client_post_unfocus_event(client, wnd); 456 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 593 457 PCUT_ASSERT_TRUE(called_cb); 594 458 595 /* Purge it */ 596 ds_client_purge_window_events(client, wnd); 597 598 /* The queue should be empty now */ 459 rc = ds_client_get_event(client, &rwindow, &revent); 460 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 461 PCUT_ASSERT_EQUALS(wnd, rwindow); 462 PCUT_ASSERT_EQUALS(wev_unfocus, revent.etype); 463 599 464 rc = ds_client_get_event(client, &rwindow, &revent); 600 465 PCUT_ASSERT_ERRNO_VAL(ENOENT, rc); 601 466 602 467 ds_window_destroy(wnd); 603 ds_seat_destroy(seat);604 468 ds_client_destroy(client); 605 469 ds_display_destroy(disp); … … 615 479 ds_display_t *disp; 616 480 ds_client_t *client; 617 ds_seat_t *seat;618 481 ds_window_t *wnd; 619 482 display_wnd_params_t params; … … 626 489 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 627 490 628 rc = ds_seat_create(disp, "Alice", &seat); 629 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 630 631 display_wnd_params_init(¶ms); 632 params.rect.p0.x = params.rect.p0.y = 0; 633 params.rect.p1.x = params.rect.p1.y = 1; 634 635 rc = ds_window_create(client, ¶ms, &wnd); 636 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 637 638 ds_seat_destroy(seat); 491 display_wnd_params_init(¶ms); 492 params.rect.p0.x = params.rect.p0.y = 0; 493 params.rect.p1.x = params.rect.p1.y = 1; 494 495 rc = ds_window_create(client, ¶ms, &wnd); 496 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 497 639 498 ds_client_destroy(client); 640 499 ds_display_destroy(disp);
Note:
See TracChangeset
for help on using the changeset viewer.
