comparison tests/test-color.c @ 12:29b479760c05

tests: implement basic tests, closes #2447
author David Demelier <markand@malikania.fr>
date Tue, 07 Jan 2020 21:16:00 +0100
parents
children 789b23e01f52
comparison
equal deleted inserted replaced
11:d1cdb90d9558 12:29b479760c05
1 /*
2 * test-color.c -- test color routines
3 *
4 * Copyright (c) 2020 David Demelier <markand@malikania.fr>
5 *
6 * Permission to use, copy, modify, and/or distribute this software for any
7 * purpose with or without fee is hereby granted, provided that the above
8 * copyright notice and this permission notice appear in all copies.
9 *
10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
17 */
18
19 #include <greatest.h>
20
21 #include <color.h>
22
23 TEST
24 red(void)
25 {
26 ASSERT_EQ(163, COLOR_R(0xa3000000));
27 PASS();
28 }
29
30 TEST
31 green(void)
32 {
33 ASSERT_EQ(19, COLOR_G(0x00130000));
34 PASS();
35 }
36
37 TEST
38 blue(void)
39 {
40 ASSERT_EQ(238, COLOR_B(0x0000ee00));
41 PASS();
42 }
43
44 TEST
45 alpha(void)
46 {
47 ASSERT_EQ(255, COLOR_A(0x000000ff));
48 PASS();
49 }
50
51 TEST
52 simple(void)
53 {
54 ASSERT_EQ(0xaabbccee, COLOR_HEX(170, 187, 204, 238));
55 PASS();
56 }
57
58 SUITE(hex_to_rgb)
59 {
60 RUN_TEST(red);
61 RUN_TEST(green);
62 RUN_TEST(blue);
63 RUN_TEST(alpha);
64 }
65
66 SUITE(rgb_to_hex)
67 {
68 RUN_TEST(simple);
69 }
70
71 GREATEST_MAIN_DEFS();
72
73 int
74 main(int argc, char **argv)
75 {
76 GREATEST_MAIN_BEGIN();
77 RUN_SUITE(hex_to_rgb);
78 RUN_SUITE(rgb_to_hex);
79 GREATEST_MAIN_END();
80 }