Changeset ebb1489 in mainline for uspace/lib/ui/test/window.c


Ignore:
Timestamp:
2024-10-13T08:23:40Z (8 weeks ago)
Author:
GitHub <noreply@…>
Children:
0472cf17
Parents:
2a0c827c (diff), b3b79981 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
git-author:
boba-buba <120932204+boba-buba@…> (2024-10-13 08:23:40)
git-committer:
GitHub <noreply@…> (2024-10-13 08:23:40)
Message:

Merge branch 'HelenOS:master' into topic/packet-capture

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/ui/test/window.c

    r2a0c827c rebb1489  
    11/*
    2  * Copyright (c) 2023 Jiri Svoboda
     2 * Copyright (c) 2024 Jiri Svoboda
    33 * All rights reserved.
    44 *
     
    5555static void test_window_pos(ui_window_t *, void *, pos_event_t *);
    5656static void test_window_unfocus(ui_window_t *, void *, unsigned);
     57static void test_window_resize(ui_window_t *, void *);
    5758
    5859static ui_window_cb_t test_window_cb = {
     
    6667        .paint = test_window_paint,
    6768        .pos = test_window_pos,
    68         .unfocus = test_window_unfocus
     69        .unfocus = test_window_unfocus,
     70        .resize = test_window_resize
    6971};
    7072
     
    99101        bool unfocus;
    100102        unsigned unfocus_nfocus;
     103        bool resize;
    101104} test_cb_resp_t;
    102105
     
    936939}
    937940
     941/** ui_window_send_resize() calls resize callback set via ui_window_set_cb() */
     942PCUT_TEST(send_resize)
     943{
     944        errno_t rc;
     945        ui_t *ui = NULL;
     946        ui_wnd_params_t params;
     947        ui_window_t *window = NULL;
     948        test_cb_resp_t resp;
     949
     950        rc = ui_create_disp(NULL, &ui);
     951        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     952
     953        ui_wnd_params_init(&params);
     954        params.caption = "Hello";
     955
     956        rc = ui_window_create(ui, &params, &window);
     957        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     958        PCUT_ASSERT_NOT_NULL(window);
     959
     960        /* Resize callback with no callbacks set */
     961        ui_window_send_resize(window);
     962
     963        /* Resize callback with resize callback not implemented */
     964        ui_window_set_cb(window, &dummy_window_cb, NULL);
     965        ui_window_send_resize(window);
     966
     967        /* Resize callback with real callback set */
     968        resp.close = false;
     969        ui_window_set_cb(window, &test_window_cb, &resp);
     970        ui_window_send_resize(window);
     971        PCUT_ASSERT_TRUE(resp.resize);
     972
     973        ui_window_destroy(window);
     974        ui_destroy(ui);
     975}
     976
    938977static void test_window_sysmenu(ui_window_t *window, void *arg, sysarg_t idev_id)
    939978{
     
    10141053}
    10151054
     1055static void test_window_resize(ui_window_t *window, void *arg)
     1056{
     1057        test_cb_resp_t *resp = (test_cb_resp_t *) arg;
     1058
     1059        resp->resize = true;
     1060}
     1061
    10161062static errno_t test_ctl_paint(void *arg)
    10171063{
Note: See TracChangeset for help on using the changeset viewer.