Changeset f9c4c433 in mainline for uspace/lib/ui/test
- Timestamp:
- 2025-09-16T13:02:37Z (4 weeks ago)
- Branches:
- master
- Children:
- 283bb9f, 3f1bb49, 87f41ba, ff4d31c
- Parents:
- 113fb4f
- Location:
- uspace/lib/ui/test
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/ui/test/filelist.c
r113fb4f rf9c4c433 1 1 /* 2 * Copyright (c) 202 3Jiri Svoboda2 * Copyright (c) 2025 Jiri Svoboda 3 3 * All rights reserved. 4 4 * … … 665 665 } 666 666 667 /** ui_file_list_refresh() */ 668 PCUT_TEST(refresh) 669 { 670 ui_t *ui; 671 ui_window_t *window; 672 ui_wnd_params_t params; 673 ui_file_list_t *flist; 674 ui_file_list_entry_t *entry; 675 char buf[L_tmpnam]; 676 char *fname; 677 char *p; 678 errno_t rc; 679 FILE *f; 680 int rv; 681 682 /* Create name for temporary directory */ 683 p = tmpnam(buf); 684 PCUT_ASSERT_NOT_NULL(p); 685 686 /* Create temporary directory */ 687 rc = vfs_link_path(p, KIND_DIRECTORY, NULL); 688 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 689 690 rv = asprintf(&fname, "%s/%s", p, "a"); 691 PCUT_ASSERT_TRUE(rv >= 0); 692 693 f = fopen(fname, "wb"); 694 PCUT_ASSERT_NOT_NULL(f); 695 696 rv = fprintf(f, "X"); 697 PCUT_ASSERT_TRUE(rv >= 0); 698 699 rv = fclose(f); 700 PCUT_ASSERT_INT_EQUALS(0, rv); 701 702 rc = ui_create_disp(NULL, &ui); 703 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 704 705 ui_wnd_params_init(¶ms); 706 params.caption = "Test"; 707 708 rc = ui_window_create(ui, ¶ms, &window); 709 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 710 711 rc = ui_file_list_create(window, true, &flist); 712 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 713 714 rc = ui_file_list_read_dir(flist, p); 715 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 716 717 PCUT_ASSERT_INT_EQUALS(2, ui_list_entries_cnt(flist->list)); 718 719 entry = ui_file_list_first(flist); 720 PCUT_ASSERT_NOT_NULL(entry); 721 PCUT_ASSERT_STR_EQUALS("..", entry->name); 722 723 entry = ui_file_list_next(entry); 724 PCUT_ASSERT_NOT_NULL(entry); 725 PCUT_ASSERT_STR_EQUALS("a", entry->name); 726 PCUT_ASSERT_INT_EQUALS(1, entry->size); 727 728 rv = remove(fname); 729 PCUT_ASSERT_INT_EQUALS(0, rv); 730 free(fname); 731 732 rv = asprintf(&fname, "%s/%s", p, "b"); 733 PCUT_ASSERT_TRUE(rv >= 0); 734 735 f = fopen(fname, "wb"); 736 PCUT_ASSERT_NOT_NULL(f); 737 738 rv = fprintf(f, "X"); 739 PCUT_ASSERT_TRUE(rv >= 0); 740 741 rv = fclose(f); 742 PCUT_ASSERT_INT_EQUALS(0, rv); 743 744 rc = ui_file_list_refresh(flist); 745 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 746 747 entry = ui_file_list_first(flist); 748 PCUT_ASSERT_NOT_NULL(entry); 749 PCUT_ASSERT_STR_EQUALS("..", entry->name); 750 751 entry = ui_file_list_next(entry); 752 PCUT_ASSERT_NOT_NULL(entry); 753 PCUT_ASSERT_STR_EQUALS("b", entry->name); 754 PCUT_ASSERT_INT_EQUALS(1, entry->size); 755 756 rv = remove(fname); 757 PCUT_ASSERT_INT_EQUALS(0, rv); 758 free(fname); 759 760 rv = remove(p); 761 PCUT_ASSERT_INT_EQUALS(0, rv); 762 763 ui_file_list_destroy(flist); 764 765 ui_window_destroy(window); 766 ui_destroy(ui); 767 } 768 667 769 /** ui_file_list_list_compare compares two file list entries */ 668 770 PCUT_TEST(list_compare) -
uspace/lib/ui/test/list.c
r113fb4f rf9c4c433 1 1 /* 2 * Copyright (c) 202 4Jiri Svoboda2 * Copyright (c) 2025 Jiri Svoboda 3 3 * All rights reserved. 4 4 * … … 3064 3064 } 3065 3065 3066 /** ui_list_save_pos() / ui_list_restore_pos() saves/restores position */ 3067 PCUT_TEST(save_pos_restore_pos) 3068 { 3069 ui_t *ui; 3070 ui_window_t *window; 3071 ui_wnd_params_t params; 3072 ui_list_t *list; 3073 ui_list_entry_t *a, *b; 3074 ui_list_entry_attr_t attr; 3075 ui_list_pos_t pos; 3076 test_resp_t resp; 3077 errno_t rc; 3078 3079 rc = ui_create_disp(NULL, &ui); 3080 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 3081 3082 ui_wnd_params_init(¶ms); 3083 params.caption = "Test"; 3084 3085 rc = ui_window_create(ui, ¶ms, &window); 3086 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 3087 3088 rc = ui_list_create(window, true, &list); 3089 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 3090 3091 ui_list_set_cb(list, &test_cb, &resp); 3092 3093 ui_list_entry_attr_init(&attr); 3094 3095 attr.caption = "a"; 3096 attr.arg = (void *)2; 3097 rc = ui_list_entry_append(list, &attr, &a); 3098 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 3099 3100 attr.caption = "b"; 3101 attr.arg = (void *)1; 3102 rc = ui_list_entry_append(list, &attr, &b); 3103 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 3104 3105 ui_list_set_cursor(list, b); 3106 3107 ui_list_save_pos(list, &pos); 3108 3109 /* Empty and re-build list. */ 3110 3111 ui_list_entry_destroy(a); 3112 ui_list_entry_destroy(b); 3113 3114 ui_list_entry_attr_init(&attr); 3115 3116 attr.caption = "a"; 3117 attr.arg = (void *)2; 3118 rc = ui_list_entry_append(list, &attr, &a); 3119 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 3120 3121 attr.caption = "b"; 3122 attr.arg = (void *)1; 3123 rc = ui_list_entry_append(list, &attr, &b); 3124 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 3125 3126 ui_list_restore_pos(list, &pos); 3127 3128 PCUT_ASSERT_STR_EQUALS("b", list->cursor->caption); 3129 3130 ui_list_destroy(list); 3131 ui_window_destroy(window); 3132 ui_destroy(ui); 3133 } 3134 3066 3135 static void test_list_activate_req(ui_list_t *list, void *arg) 3067 3136 {
Note:
See TracChangeset
for help on using the changeset viewer.