Changes in uspace/lib/ui/test/menuentry.c [46bd63c9:c68c18b9] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/ui/test/menuentry.c
r46bd63c9 rc68c18b9 1 1 /* 2 * Copyright (c) 202 3Jiri Svoboda2 * Copyright (c) 2021 Jiri Svoboda 3 3 * All rights reserved. 4 4 * … … 35 35 #include <ui/menu.h> 36 36 #include <ui/menubar.h> 37 #include <ui/menudd.h>38 37 #include <ui/menuentry.h> 39 38 #include <ui/ui.h> … … 76 75 PCUT_ASSERT_NOT_NULL(mbar); 77 76 78 rc = ui_menu_ dd_create(mbar, "Test", NULL, &menu);77 rc = ui_menu_create(mbar, "Test", &menu); 79 78 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 80 79 PCUT_ASSERT_NOT_NULL(menu); … … 117 116 PCUT_ASSERT_NOT_NULL(mbar); 118 117 119 rc = ui_menu_ dd_create(mbar, "Test", NULL, &menu);118 rc = ui_menu_create(mbar, "Test", &menu); 120 119 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 121 120 PCUT_ASSERT_NOT_NULL(menu); … … 165 164 PCUT_ASSERT_NOT_NULL(mbar); 166 165 167 rc = ui_menu_ dd_create(mbar, "Test", NULL, &menu);166 rc = ui_menu_create(mbar, "Test", &menu); 168 167 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 169 168 PCUT_ASSERT_NOT_NULL(menu); … … 211 210 PCUT_ASSERT_NOT_NULL(mbar); 212 211 213 rc = ui_menu_ dd_create(mbar, "Test", NULL, &menu);212 rc = ui_menu_create(mbar, "Test", &menu); 214 213 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 215 214 PCUT_ASSERT_NOT_NULL(menu); … … 230 229 231 230 e = ui_menu_entry_next(e); 232 PCUT_ASSERT_NULL(e);233 234 ui_menu_bar_destroy(mbar);235 ui_window_destroy(window);236 ui_destroy(ui);237 }238 239 /** ui_menu_entry_last() / ui_menu_entry_prev() iterate over entries in reverse */240 PCUT_TEST(last_prev)241 {242 ui_t *ui = NULL;243 ui_window_t *window = NULL;244 ui_wnd_params_t params;245 ui_menu_bar_t *mbar = NULL;246 ui_menu_t *menu = NULL;247 ui_menu_entry_t *entry1 = NULL;248 ui_menu_entry_t *entry2 = NULL;249 ui_menu_entry_t *e;250 errno_t rc;251 252 rc = ui_create_disp(NULL, &ui);253 PCUT_ASSERT_ERRNO_VAL(EOK, rc);254 255 ui_wnd_params_init(¶ms);256 params.caption = "Hello";257 258 rc = ui_window_create(ui, ¶ms, &window);259 PCUT_ASSERT_ERRNO_VAL(EOK, rc);260 PCUT_ASSERT_NOT_NULL(window);261 262 rc = ui_menu_bar_create(ui, window, &mbar);263 PCUT_ASSERT_ERRNO_VAL(EOK, rc);264 PCUT_ASSERT_NOT_NULL(mbar);265 266 rc = ui_menu_dd_create(mbar, "Test", NULL, &menu);267 PCUT_ASSERT_ERRNO_VAL(EOK, rc);268 PCUT_ASSERT_NOT_NULL(menu);269 270 rc = ui_menu_entry_create(menu, "Foo", "F1", &entry1);271 PCUT_ASSERT_ERRNO_VAL(EOK, rc);272 PCUT_ASSERT_NOT_NULL(entry1);273 274 rc = ui_menu_entry_create(menu, "Bar", "F2", &entry2);275 PCUT_ASSERT_ERRNO_VAL(EOK, rc);276 PCUT_ASSERT_NOT_NULL(entry2);277 278 e = ui_menu_entry_last(menu);279 PCUT_ASSERT_EQUALS(entry2, e);280 281 e = ui_menu_entry_prev(e);282 PCUT_ASSERT_EQUALS(entry1, e);283 284 e = ui_menu_entry_prev(e);285 231 PCUT_ASSERT_NULL(e); 286 232 … … 319 265 PCUT_ASSERT_NOT_NULL(mbar); 320 266 321 rc = ui_menu_ dd_create(mbar, "Test", NULL, &menu);267 rc = ui_menu_create(mbar, "Test", &menu); 322 268 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 323 269 PCUT_ASSERT_NOT_NULL(menu); … … 369 315 PCUT_ASSERT_NOT_NULL(mbar); 370 316 371 rc = ui_menu_ dd_create(mbar, "Test", NULL, &menu);317 rc = ui_menu_create(mbar, "Test", &menu); 372 318 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 373 319 PCUT_ASSERT_NOT_NULL(menu); … … 382 328 prect.p1.y = 0; 383 329 384 rc = ui_menu_open(menu, &prect , 0);330 rc = ui_menu_open(menu, &prect); 385 331 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 386 332 … … 395 341 } 396 342 397 /** ui_menu_entry_selectable() returns correct value based on entry type */398 PCUT_TEST(selectable)399 {400 ui_t *ui = NULL;401 ui_window_t *window = NULL;402 ui_wnd_params_t params;403 ui_menu_bar_t *mbar = NULL;404 ui_menu_t *menu = NULL;405 ui_menu_entry_t *mentry = NULL;406 errno_t rc;407 408 rc = ui_create_disp(NULL, &ui);409 PCUT_ASSERT_ERRNO_VAL(EOK, rc);410 411 ui_wnd_params_init(¶ms);412 params.caption = "Hello";413 414 rc = ui_window_create(ui, ¶ms, &window);415 PCUT_ASSERT_ERRNO_VAL(EOK, rc);416 PCUT_ASSERT_NOT_NULL(window);417 418 rc = ui_menu_bar_create(ui, window, &mbar);419 PCUT_ASSERT_ERRNO_VAL(EOK, rc);420 PCUT_ASSERT_NOT_NULL(mbar);421 422 rc = ui_menu_dd_create(mbar, "Test", NULL, &menu);423 PCUT_ASSERT_ERRNO_VAL(EOK, rc);424 PCUT_ASSERT_NOT_NULL(menu);425 426 /* Selectable entry */427 428 rc = ui_menu_entry_create(menu, "Foo", "F1", &mentry);429 PCUT_ASSERT_ERRNO_VAL(EOK, rc);430 PCUT_ASSERT_NOT_NULL(mentry);431 432 PCUT_ASSERT_TRUE(ui_menu_entry_selectable(mentry));433 434 ui_menu_entry_destroy(mentry);435 436 /* Non-selectable separator entry */437 438 rc = ui_menu_entry_sep_create(menu, &mentry);439 PCUT_ASSERT_ERRNO_VAL(EOK, rc);440 PCUT_ASSERT_NOT_NULL(mentry);441 442 PCUT_ASSERT_FALSE(ui_menu_entry_selectable(mentry));443 444 ui_menu_entry_destroy(mentry);445 446 ui_menu_bar_destroy(mbar);447 ui_window_destroy(window);448 ui_destroy(ui);449 }450 451 343 /** Press and release activates menu entry */ 452 344 PCUT_TEST(press_release) … … 477 369 PCUT_ASSERT_NOT_NULL(mbar); 478 370 479 rc = ui_menu_ dd_create(mbar, "Test", NULL, &menu);371 rc = ui_menu_create(mbar, "Test", &menu); 480 372 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 481 373 PCUT_ASSERT_NOT_NULL(menu); … … 493 385 prect.p1.y = 0; 494 386 495 rc = ui_menu_open(menu, &prect , 0);387 rc = ui_menu_open(menu, &prect); 496 388 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 497 389 … … 540 432 PCUT_ASSERT_NOT_NULL(mbar); 541 433 542 rc = ui_menu_ dd_create(mbar, "Test", NULL, &menu);434 rc = ui_menu_create(mbar, "Test", &menu); 543 435 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 544 436 PCUT_ASSERT_NOT_NULL(menu); … … 556 448 prect.p1.y = 0; 557 449 558 rc = ui_menu_open(menu, &prect , 0);450 rc = ui_menu_open(menu, &prect); 559 451 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 560 452 … … 608 500 PCUT_ASSERT_NOT_NULL(mbar); 609 501 610 rc = ui_menu_ dd_create(mbar, "Test", NULL, &menu);502 rc = ui_menu_create(mbar, "Test", &menu); 611 503 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 612 504 PCUT_ASSERT_NOT_NULL(menu); … … 624 516 prect.p1.y = 0; 625 517 626 rc = ui_menu_open(menu, &prect , 0);518 rc = ui_menu_open(menu, &prect); 627 519 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 628 520 … … 653 545 } 654 546 655 /** ui_menu_entry_activate() activates menu entry */ 656 PCUT_TEST(activate) 657 { 658 ui_t *ui = NULL; 659 ui_window_t *window = NULL; 660 ui_wnd_params_t params; 661 ui_menu_bar_t *mbar = NULL; 662 ui_menu_t *menu = NULL; 663 ui_menu_entry_t *mentry = NULL; 547 /** Press event inside menu entry */ 548 PCUT_TEST(pos_press_inside) 549 { 550 ui_t *ui = NULL; 551 ui_window_t *window = NULL; 552 ui_wnd_params_t params; 553 ui_menu_bar_t *mbar = NULL; 554 ui_menu_t *menu = NULL; 555 ui_menu_entry_t *mentry = NULL; 556 gfx_coord2_t pos; 664 557 gfx_rect_t prect; 665 test_resp_t resp;666 errno_t rc; 667 668 rc = ui_create_disp(NULL, &ui); 669 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 670 671 ui_wnd_params_init(¶ms); 672 params.caption = "Hello"; 673 674 rc = ui_window_create(ui, ¶ms, &window); 675 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 676 PCUT_ASSERT_NOT_NULL(window); 677 678 rc = ui_menu_bar_create(ui, window, &mbar); 679 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 680 PCUT_ASSERT_NOT_NULL(mbar); 681 682 rc = ui_menu_ dd_create(mbar, "Test", NULL, &menu);558 pos_event_t event; 559 errno_t rc; 560 561 rc = ui_create_disp(NULL, &ui); 562 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 563 564 ui_wnd_params_init(¶ms); 565 params.caption = "Hello"; 566 567 rc = ui_window_create(ui, ¶ms, &window); 568 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 569 PCUT_ASSERT_NOT_NULL(window); 570 571 rc = ui_menu_bar_create(ui, window, &mbar); 572 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 573 PCUT_ASSERT_NOT_NULL(mbar); 574 575 rc = ui_menu_create(mbar, "Test", &menu); 683 576 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 684 577 PCUT_ASSERT_NOT_NULL(menu); … … 687 580 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 688 581 PCUT_ASSERT_NOT_NULL(mentry); 689 690 ui_menu_entry_set_cb(mentry, test_entry_cb, &resp);691 resp.activated = false;692 582 693 583 prect.p0.x = 0; … … 696 586 prect.p1.y = 0; 697 587 698 rc = ui_menu_open(menu, &prect, 0); 699 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 700 701 PCUT_ASSERT_FALSE(resp.activated); 702 ui_menu_entry_activate(mentry); 703 704 ui_menu_entry_release(mentry); 705 PCUT_ASSERT_TRUE(resp.activated); 706 707 ui_menu_bar_destroy(mbar); 708 ui_window_destroy(window); 709 ui_destroy(ui); 710 } 711 712 /** Press event inside menu entry */ 713 PCUT_TEST(pos_press_inside) 588 rc = ui_menu_open(menu, &prect); 589 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 590 591 pos.x = 0; 592 pos.y = 0; 593 594 event.type = POS_PRESS; 595 event.hpos = 4; 596 event.vpos = 4; 597 598 ui_menu_entry_pos_event(mentry, &pos, &event); 599 PCUT_ASSERT_TRUE(mentry->inside); 600 PCUT_ASSERT_TRUE(mentry->held); 601 602 ui_menu_bar_destroy(mbar); 603 ui_window_destroy(window); 604 ui_destroy(ui); 605 } 606 607 /** Press event outside menu entry */ 608 PCUT_TEST(pos_press_outside) 714 609 { 715 610 ui_t *ui = NULL; … … 738 633 PCUT_ASSERT_NOT_NULL(mbar); 739 634 740 rc = ui_menu_ dd_create(mbar, "Test", NULL, &menu);635 rc = ui_menu_create(mbar, "Test", &menu); 741 636 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 742 637 PCUT_ASSERT_NOT_NULL(menu); … … 751 646 prect.p1.y = 0; 752 647 753 rc = ui_menu_open(menu, &prect , 0);648 rc = ui_menu_open(menu, &prect); 754 649 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 755 650 … … 758 653 759 654 event.type = POS_PRESS; 760 event.hpos = 4 ;761 event.vpos = 4;655 event.hpos = 40; 656 event.vpos = 20; 762 657 763 658 ui_menu_entry_pos_event(mentry, &pos, &event); 764 PCUT_ASSERT_ TRUE(mentry->inside);765 PCUT_ASSERT_ TRUE(mentry->held);766 767 ui_menu_bar_destroy(mbar); 768 ui_window_destroy(window); 769 ui_destroy(ui); 770 } 771 772 /** P ress event outsidemenu entry */773 PCUT_TEST(pos_ press_outside)659 PCUT_ASSERT_FALSE(mentry->inside); 660 PCUT_ASSERT_FALSE(mentry->held); 661 662 ui_menu_bar_destroy(mbar); 663 ui_window_destroy(window); 664 ui_destroy(ui); 665 } 666 667 /** Position event moving out of menu entry */ 668 PCUT_TEST(pos_move_out) 774 669 { 775 670 ui_t *ui = NULL; … … 798 693 PCUT_ASSERT_NOT_NULL(mbar); 799 694 800 rc = ui_menu_ dd_create(mbar, "Test", NULL, &menu);695 rc = ui_menu_create(mbar, "Test", &menu); 801 696 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 802 697 PCUT_ASSERT_NOT_NULL(menu); … … 811 706 prect.p1.y = 0; 812 707 813 rc = ui_menu_open(menu, &prect , 0);708 rc = ui_menu_open(menu, &prect); 814 709 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 815 710 816 711 pos.x = 0; 817 712 pos.y = 0; 818 819 event.type = POS_PRESS; 713 ui_menu_entry_press(mentry, &pos); 714 PCUT_ASSERT_TRUE(mentry->inside); 715 PCUT_ASSERT_TRUE(mentry->held); 716 717 event.type = POS_UPDATE; 820 718 event.hpos = 40; 821 719 event.vpos = 20; … … 823 721 ui_menu_entry_pos_event(mentry, &pos, &event); 824 722 PCUT_ASSERT_FALSE(mentry->inside); 825 PCUT_ASSERT_ FALSE(mentry->held);826 827 ui_menu_bar_destroy(mbar); 828 ui_window_destroy(window); 829 ui_destroy(ui); 830 } 831 832 /** Position event moving out ofmenu entry */833 PCUT_TEST(pos_move_ out)723 PCUT_ASSERT_TRUE(mentry->held); 724 725 ui_menu_bar_destroy(mbar); 726 ui_window_destroy(window); 727 ui_destroy(ui); 728 } 729 730 /** Position event moving inside menu entry */ 731 PCUT_TEST(pos_move_in) 834 732 { 835 733 ui_t *ui = NULL; … … 858 756 PCUT_ASSERT_NOT_NULL(mbar); 859 757 860 rc = ui_menu_ dd_create(mbar, "Test", NULL, &menu);758 rc = ui_menu_create(mbar, "Test", &menu); 861 759 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 862 760 PCUT_ASSERT_NOT_NULL(menu); … … 871 769 prect.p1.y = 0; 872 770 873 rc = ui_menu_open(menu, &prect, 0); 874 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 875 876 pos.x = 0; 877 pos.y = 0; 878 ui_menu_entry_press(mentry, &pos); 879 PCUT_ASSERT_TRUE(mentry->inside); 880 PCUT_ASSERT_TRUE(mentry->held); 881 882 event.type = POS_UPDATE; 883 event.hpos = 40; 884 event.vpos = 20; 885 886 ui_menu_entry_pos_event(mentry, &pos, &event); 887 PCUT_ASSERT_FALSE(mentry->inside); 888 PCUT_ASSERT_TRUE(mentry->held); 889 890 ui_menu_bar_destroy(mbar); 891 ui_window_destroy(window); 892 ui_destroy(ui); 893 } 894 895 /** Position event moving inside menu entry */ 896 PCUT_TEST(pos_move_in) 897 { 898 ui_t *ui = NULL; 899 ui_window_t *window = NULL; 900 ui_wnd_params_t params; 901 ui_menu_bar_t *mbar = NULL; 902 ui_menu_t *menu = NULL; 903 ui_menu_entry_t *mentry = NULL; 904 gfx_coord2_t pos; 905 gfx_rect_t prect; 906 pos_event_t event; 907 errno_t rc; 908 909 rc = ui_create_disp(NULL, &ui); 910 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 911 912 ui_wnd_params_init(¶ms); 913 params.caption = "Hello"; 914 915 rc = ui_window_create(ui, ¶ms, &window); 916 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 917 PCUT_ASSERT_NOT_NULL(window); 918 919 rc = ui_menu_bar_create(ui, window, &mbar); 920 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 921 PCUT_ASSERT_NOT_NULL(mbar); 922 923 rc = ui_menu_dd_create(mbar, "Test", NULL, &menu); 924 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 925 PCUT_ASSERT_NOT_NULL(menu); 926 927 rc = ui_menu_entry_create(menu, "X", "Y", &mentry); 928 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 929 PCUT_ASSERT_NOT_NULL(mentry); 930 931 prect.p0.x = 0; 932 prect.p0.y = 0; 933 prect.p1.x = 0; 934 prect.p1.y = 0; 935 936 rc = ui_menu_open(menu, &prect, 0); 771 rc = ui_menu_open(menu, &prect); 937 772 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 938 773
Note:
See TracChangeset
for help on using the changeset viewer.