summaryrefslogtreecommitdiff
path: root/tests/testcolor.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/testcolor.c')
-rw-r--r--tests/testcolor.c114
1 files changed, 44 insertions, 70 deletions
diff --git a/tests/testcolor.c b/tests/testcolor.c
index b32eb6ee..26b4412f 100644
--- a/tests/testcolor.c
+++ b/tests/testcolor.c
@@ -25,92 +25,65 @@
typedef struct _ColorSpec {
const gchar *spec;
gboolean valid;
- int color_or_alpha;
guint16 red;
guint16 green;
guint16 blue;
guint16 alpha;
} ColorSpec;
-#define COLOR 1
-#define ALPHA 2
-#define BOTH 3
-
static void
test_one_color (ColorSpec *spec)
{
PangoColor color;
gboolean accepted;
- guint16 alpha;
- if (spec->color_or_alpha & COLOR)
+ accepted = pango_color_parse (&color, spec->spec);
+
+ if (!spec->valid)
{
- accepted = pango_color_parse (&color, spec->spec);
-
- if (!spec->valid)
- {
- g_assert_false (accepted);
- }
- else
- {
- g_assert_true (accepted);
- g_assert_cmpuint (color.red, ==, spec->red);
- g_assert_cmpuint (color.green, ==, spec->green);
- g_assert_cmpuint (color.blue, ==, spec->blue);
- }
+ g_assert_false (accepted);
}
-
- if (spec->color_or_alpha & ALPHA)
+ else
{
- accepted = pango_color_parse_with_alpha (&color, &alpha, spec->spec);
-
- if (!spec->valid)
- {
- g_assert_false (accepted);
- }
- else
- {
- g_assert_true (accepted);
- g_assert_cmpuint (color.red, ==, spec->red);
- g_assert_cmpuint (color.green, ==, spec->green);
- g_assert_cmpuint (color.blue, ==, spec->blue);
- g_assert_cmpuint (alpha, ==, spec->alpha);
- }
+ g_assert_true (accepted);
+ g_assert_cmpuint (color.red, ==, spec->red);
+ g_assert_cmpuint (color.green, ==, spec->green);
+ g_assert_cmpuint (color.blue, ==, spec->blue);
+ g_assert_cmpuint (color.alpha, ==, spec->alpha);
}
}
ColorSpec specs [] = {
- { "#abc", 1, BOTH, 0xaaaa, 0xbbbb, 0xcccc, 0xffff },
- { "#aabbcc", 1, BOTH, 0xaaaa, 0xbbbb, 0xcccc, 0xffff },
- { "#aaabbbccc", 1, BOTH, 0xaaaa, 0xbbbb, 0xcccc, 0xffff },
- { "#100100100", 1, BOTH, 0x1001, 0x1001, 0x1001, 0xffff },
- { "#aaaabbbbcccc", 1, COLOR, 0xaaaa, 0xbbbb, 0xcccc, 0xffff },
- { "#fff", 1, BOTH, 0xffff, 0xffff, 0xffff, 0xffff },
- { "#ffffff", 1, BOTH, 0xffff, 0xffff, 0xffff, 0xffff },
- { "#fffffffff", 1, BOTH, 0xffff, 0xffff, 0xffff, 0xffff },
- { "#ffffffffffff", 1, COLOR, 0xffff, 0xffff, 0xffff, 0xffff },
- { "#000", 1, BOTH, 0x0000, 0x0000, 0x0000, 0xffff },
- { "#000000", 1, BOTH, 0x0000, 0x0000, 0x0000, 0xffff },
- { "#000000000", 1, BOTH, 0x0000, 0x0000, 0x0000, 0xffff },
- { "#000000000000", 1, COLOR, 0x0000, 0x0000, 0x0000, 0xffff },
- { "#AAAABBBBCCCC", 1, COLOR, 0xaaaa, 0xbbbb, 0xcccc, 0xffff },
- { "#aa bb cc ", 0, BOTH, 0, 0, 0, 0 },
- { "#aa bb ccc", 0, BOTH, 0, 0, 0, 0 },
- { "#ab", 0, BOTH, 0, 0, 0, 0 },
- { "#aabb", 0, COLOR, 0, 0, 0, 0 },
- { "#aaabb", 0, BOTH, 0, 0, 0, 0 },
- { "aaabb", 0, BOTH, 0, 0, 0, 0 },
- { "", 0, BOTH, 0, 0, 0, 0 },
- { "#", 0, BOTH, 0, 0, 0, 0 },
- { "##fff", 0, BOTH, 0, 0, 0, 0 },
- { "#0000ff+", 0, BOTH, 0, 0, 0, 0 },
- { "#0000f+", 0, BOTH, 0, 0, 0, 0 },
- { "#0x00x10x2", 0, BOTH, 0, 0, 0, 0 },
- { "#abcd", 1, ALPHA, 0xaaaa, 0xbbbb, 0xcccc, 0xdddd },
- { "#aabbccdd", 1, ALPHA, 0xaaaa, 0xbbbb, 0xcccc, 0xdddd },
- { "#aaaabbbbccccdddd",
- 1, ALPHA, 0xaaaa, 0xbbbb, 0xcccc, 0xdddd },
- { NULL, 0, BOTH, 0, 0, 0, 0 }
+ { "#abc", 1, 0xaaaa, 0xbbbb, 0xcccc, 0xffff },
+ { "#aabbcc", 1, 0xaaaa, 0xbbbb, 0xcccc, 0xffff },
+ { "#aaabbbccc", 1, 0xaaaa, 0xbbbb, 0xcccc, 0xffff },
+ { "#100100100", 1, 0x1001, 0x1001, 0x1001, 0xffff },
+ { "#aaaabbbbcccc", 1, 0xaaaa, 0xbbbb, 0xcccc, 0xffff },
+ { "#fff", 1, 0xffff, 0xffff, 0xffff, 0xffff },
+ { "#ffffff", 1, 0xffff, 0xffff, 0xffff, 0xffff },
+ { "#fffffffff", 1, 0xffff, 0xffff, 0xffff, 0xffff },
+ { "#ffffffffffff", 1, 0xffff, 0xffff, 0xffff, 0xffff },
+ { "#000", 1, 0x0000, 0x0000, 0x0000, 0xffff },
+ { "#000000", 1, 0x0000, 0x0000, 0x0000, 0xffff },
+ { "#000000000", 1, 0x0000, 0x0000, 0x0000, 0xffff },
+ { "#000000000000", 1, 0x0000, 0x0000, 0x0000, 0xffff },
+ { "#AAAABBBBCCCC", 1, 0xaaaa, 0xbbbb, 0xcccc, 0xffff },
+ { "#aa bb cc ", 0, 0, 0, 0, 0 },
+ { "#aa bb ccc", 0, 0, 0, 0, 0 },
+ { "#ab", 0, 0, 0, 0, 0 },
+ { "#aabb", 1, 0xaaaa, 0xaaaa, 0xbbbb, 0xbbbb },
+ { "#aaabb", 0, 0, 0, 0, 0 },
+ { "aaabb", 0, 0, 0, 0, 0 },
+ { "", 0, 0, 0, 0, 0 },
+ { "#", 0, 0, 0, 0, 0 },
+ { "##fff", 0, 0, 0, 0, 0 },
+ { "#0000ff+", 0, 0, 0, 0, 0 },
+ { "#0000f+", 0, 0, 0, 0, 0 },
+ { "#0x00x10x2", 0, 0, 0, 0, 0 },
+ { "#abcd", 1, 0xaaaa, 0xbbbb, 0xcccc, 0xdddd },
+ { "#aabbccdd", 1, 0xaaaa, 0xbbbb, 0xcccc, 0xdddd },
+ { "#aaaabbbbccccdddd", 1, 0xaaaa, 0xbbbb, 0xcccc, 0xdddd },
+ { NULL, 0, 0, 0, 0, 0 }
};
static void
@@ -125,7 +98,7 @@ test_color (void)
static void
test_color_copy (void)
{
- PangoColor orig = { 0, 200, 5000 };
+ PangoColor orig = { 0, 200, 5000, 666 };
PangoColor *copy;
copy = pango_color_copy (&orig);
@@ -133,6 +106,7 @@ test_color_copy (void)
g_assert_cmpint (orig.red, ==, copy->red);
g_assert_cmpint (orig.green, ==, copy->green);
g_assert_cmpint (orig.blue, ==, copy->blue);
+ g_assert_cmpint (orig.alpha, ==, copy->alpha);
pango_color_free (copy);
}
@@ -140,12 +114,12 @@ test_color_copy (void)
static void
test_color_serialize (void)
{
- PangoColor orig = { 0, 200, 5000 };
+ PangoColor orig = { 0, 200, 5000, 666 };
char *string;
string = pango_color_to_string (&orig);
- g_assert_cmpstr (string, ==, "#000000c81388");
+ g_assert_cmpstr (string, ==, "#000000c81388029a");
g_free (string);
}