Changeset 344f8b9 in mainline for uspace/lib/ui/test/menu.c
- Timestamp:
- 2021-05-20T15:34:03Z (4 years ago)
- Children:
- f2416ec3
- Parents:
- da15002
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/ui/test/menu.c
rda15002 r344f8b9 46 46 PCUT_TEST_SUITE(menu); 47 47 48 typedef struct {49 bool expose;50 } test_resp_t;51 52 static void test_expose(void *);53 54 48 /** Create and destroy menu */ 55 49 PCUT_TEST(create_destroy) … … 59 53 errno_t rc; 60 54 61 rc = ui_menu_bar_create(NULL, &mbar);55 rc = ui_menu_bar_create(NULL, NULL, &mbar); 62 56 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 63 57 … … 102 96 PCUT_ASSERT_NOT_NULL(resource); 103 97 104 rc = ui_menu_bar_create( resource, &mbar);98 rc = ui_menu_bar_create(NULL, resource, &mbar); 105 99 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 106 100 PCUT_ASSERT_NOT_NULL(mbar); … … 148 142 PCUT_ASSERT_NOT_NULL(resource); 149 143 150 rc = ui_menu_bar_create( resource, &mbar);144 rc = ui_menu_bar_create(NULL, resource, &mbar); 151 145 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 152 146 PCUT_ASSERT_NOT_NULL(mbar); … … 188 182 PCUT_ASSERT_NOT_NULL(resource); 189 183 190 rc = ui_menu_bar_create( resource, &mbar);184 rc = ui_menu_bar_create(NULL, resource, &mbar); 191 185 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 192 186 PCUT_ASSERT_NOT_NULL(mbar); … … 218 212 dummy_gc_t *dgc; 219 213 gfx_context_t *gc; 220 ui_resource_t *resource = NULL; 221 ui_menu_bar_t *mbar = NULL; 222 ui_menu_t *menu = NULL; 214 ui_t *ui = NULL; 215 ui_resource_t *resource = NULL; 216 ui_menu_bar_t *mbar = NULL; 217 ui_menu_t *menu = NULL; 218 gfx_rect_t prect; 223 219 gfx_coord2_t pos; 224 220 errno_t rc; … … 229 225 gc = dummygc_get_ctx(dgc); 230 226 231 rc = ui_resource_create(gc, false, &resource); 232 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 233 PCUT_ASSERT_NOT_NULL(resource); 234 235 rc = ui_menu_bar_create(resource, &mbar); 236 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 237 PCUT_ASSERT_NOT_NULL(mbar); 238 239 rc = ui_menu_create(mbar, "Test", &menu); 240 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 241 PCUT_ASSERT_NOT_NULL(menu); 227 rc = ui_create_disp(NULL, &ui); 228 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 229 230 rc = ui_resource_create(gc, false, &resource); 231 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 232 PCUT_ASSERT_NOT_NULL(resource); 233 234 rc = ui_menu_bar_create(ui, resource, &mbar); 235 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 236 PCUT_ASSERT_NOT_NULL(mbar); 237 238 rc = ui_menu_create(mbar, "Test", &menu); 239 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 240 PCUT_ASSERT_NOT_NULL(menu); 241 242 prect.p0.x = 0; 243 prect.p0.y = 0; 244 prect.p1.x = 0; 245 prect.p1.y = 0; 246 247 /* Menu needs to be open to be able to paint it */ 248 rc = ui_menu_open(menu, &prect); 249 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 242 250 243 251 pos.x = 0; … … 248 256 ui_menu_bar_destroy(mbar); 249 257 ui_resource_destroy(resource); 250 dummygc_destroy(dgc); 251 } 252 253 /** ui_menu_unpaint() calls expose callback */ 254 PCUT_TEST(unpaint) 255 { 256 dummy_gc_t *dgc; 257 gfx_context_t *gc; 258 ui_resource_t *resource = NULL; 259 ui_menu_bar_t *mbar = NULL; 260 ui_menu_t *menu = NULL; 261 test_resp_t resp; 262 errno_t rc; 263 264 rc = dummygc_create(&dgc); 265 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 266 267 gc = dummygc_get_ctx(dgc); 268 269 rc = ui_resource_create(gc, false, &resource); 270 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 271 PCUT_ASSERT_NOT_NULL(resource); 272 273 rc = ui_menu_bar_create(resource, &mbar); 274 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 275 PCUT_ASSERT_NOT_NULL(mbar); 276 277 rc = ui_menu_create(mbar, "Test", &menu); 278 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 279 PCUT_ASSERT_NOT_NULL(menu); 280 281 ui_resource_set_expose_cb(resource, test_expose, &resp); 282 283 resp.expose = false; 284 rc = ui_menu_unpaint(menu); 285 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 286 PCUT_ASSERT_TRUE(resp.expose); 287 288 ui_menu_bar_destroy(mbar); 289 ui_resource_destroy(resource); 258 ui_destroy(ui); 290 259 dummygc_destroy(dgc); 291 260 } … … 313 282 PCUT_ASSERT_NOT_NULL(resource); 314 283 315 rc = ui_menu_bar_create( resource, &mbar);284 rc = ui_menu_bar_create(NULL, resource, &mbar); 316 285 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 317 286 PCUT_ASSERT_NOT_NULL(mbar); … … 334 303 } 335 304 336 /** ui_menu_pos_event() outside menu closes it */337 PCUT_TEST(pos_event_outside)338 {339 dummy_gc_t *dgc;340 gfx_context_t *gc;341 ui_resource_t *resource = NULL;342 ui_menu_bar_t *mbar = NULL;343 ui_menu_t *menu = NULL;344 ui_evclaim_t claimed;345 gfx_coord2_t pos;346 pos_event_t event;347 errno_t rc;348 349 rc = dummygc_create(&dgc);350 PCUT_ASSERT_ERRNO_VAL(EOK, rc);351 352 gc = dummygc_get_ctx(dgc);353 354 rc = ui_resource_create(gc, false, &resource);355 PCUT_ASSERT_ERRNO_VAL(EOK, rc);356 PCUT_ASSERT_NOT_NULL(resource);357 358 rc = ui_menu_bar_create(resource, &mbar);359 PCUT_ASSERT_ERRNO_VAL(EOK, rc);360 PCUT_ASSERT_NOT_NULL(mbar);361 362 rc = ui_menu_create(mbar, "Test", &menu);363 PCUT_ASSERT_ERRNO_VAL(EOK, rc);364 PCUT_ASSERT_NOT_NULL(menu);365 366 pos.x = 0;367 pos.y = 0;368 ui_menu_bar_select(mbar, &pos, menu);369 PCUT_ASSERT_EQUALS(menu, mbar->selected);370 371 pos.x = 10;372 pos.y = 0;373 event.type = POS_PRESS;374 event.hpos = 0;375 event.vpos = 0;376 claimed = ui_menu_pos_event(menu, &pos, &event);377 PCUT_ASSERT_EQUALS(ui_unclaimed, claimed);378 379 /* Press event outside menu should close it */380 PCUT_ASSERT_NULL(mbar->selected);381 382 ui_menu_bar_destroy(mbar);383 ui_resource_destroy(resource);384 dummygc_destroy(dgc);385 }386 387 305 /** Computing menu geometry */ 388 306 PCUT_TEST(get_geom) … … 406 324 PCUT_ASSERT_NOT_NULL(resource); 407 325 408 rc = ui_menu_bar_create( resource, &mbar);326 rc = ui_menu_bar_create(NULL, resource, &mbar); 409 327 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 410 328 PCUT_ASSERT_NOT_NULL(mbar); … … 432 350 } 433 351 434 static void test_expose(void *arg)435 {436 test_resp_t *resp = (test_resp_t *) arg;437 438 resp->expose = true;439 }440 441 352 PCUT_EXPORT(menu);
Note:
See TracChangeset
for help on using the changeset viewer.