Changeset f13f1495 in mainline for uspace/lib/gfxfont/test/font.c
- Timestamp:
- 2020-09-29T14:58:57Z (4 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- efe0881
- Parents:
- a81d480
- git-author:
- Jiri Svoboda <jiri@…> (2020-09-28 19:58:39)
- git-committer:
- Jiri Svoboda <jiri@…> (2020-09-29 14:58:57)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/gfxfont/test/font.c
ra81d480 rf13f1495 366 366 } 367 367 368 /** Test gfx_font_bitmap_pack() properly packs bitmap */ 369 PCUT_TEST(bitmap_pack) 370 { 371 errno_t rc; 372 gfx_coord_t width, height; 373 gfx_coord_t i; 374 uint32_t *pixels; 375 void *data; 376 size_t size; 377 uint8_t *dp; 378 379 width = 10; 380 height = 10; 381 382 pixels = calloc(sizeof(uint32_t), width * height); 383 PCUT_ASSERT_NOT_NULL(pixels); 384 385 for (i = 0; i < 10; i++) 386 pixels[i * width + i] = PIXEL(255, 255, 255, 255); 387 388 rc = gfx_font_bitmap_pack(width, height, pixels, &data, &size); 389 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 390 PCUT_ASSERT_NOT_NULL(data); 391 PCUT_ASSERT_INT_EQUALS(20, size); 392 393 dp = data; 394 395 for (i = 0; i < 8; i++) { 396 PCUT_ASSERT_INT_EQUALS(0x80 >> i, dp[2 * i]); 397 PCUT_ASSERT_INT_EQUALS(0, dp[2 * i + 1]); 398 } 399 400 for (i = 8; i < 10; i++) { 401 PCUT_ASSERT_INT_EQUALS(0, dp[2 * i]); 402 PCUT_ASSERT_INT_EQUALS(0x80 >> (i - 8), dp[2 * i + 1]); 403 } 404 } 405 406 /** Test gfx_font_bitmap_unpack() properly unpacks bitmap */ 407 PCUT_TEST(bitmap_unpack) 408 { 409 errno_t rc; 410 gfx_coord_t width, height; 411 gfx_coord_t i, j; 412 uint32_t epix; 413 uint32_t *pixels; 414 uint8_t data[20]; 415 416 width = 10; 417 height = 10; 418 419 for (i = 0; i < 8; i++) { 420 data[2 * i] = 0x80 >> i; 421 data[2 * i + 1] = 0; 422 } 423 424 for (i = 8; i < 10; i++) { 425 data[2 * i] = 0; 426 data[2 * i + 1] = 0x80 >> (i - 8); 427 } 428 429 pixels = calloc(sizeof(uint32_t), width * height); 430 PCUT_ASSERT_NOT_NULL(pixels); 431 432 rc = gfx_font_bitmap_unpack(width, height, data, sizeof(data), 433 pixels); 434 PCUT_ASSERT_ERRNO_VAL(EOK, rc); 435 436 for (j = 0; j < 10; j++) { 437 for (i = 0; i < 10; i++) { 438 epix = (i == j) ? PIXEL(255, 255, 255, 255) : 439 PIXEL(0, 0, 0, 0); 440 PCUT_ASSERT_INT_EQUALS(epix, pixels[j * width + i]); 441 } 442 } 443 } 444 368 445 static errno_t testgc_set_color(void *arg, gfx_color_t *color) 369 446 {
Note:
See TracChangeset
for help on using the changeset viewer.