From da603e80386b41b360acb070a862b6ed87da57b8 Mon Sep 17 00:00:00 2001 From: Behdad Esfahbod Date: Wed, 11 May 2011 22:52:35 -0400 Subject: [PATCH] [test/font] Start adding tests for hb-font.h --- test/Makefile.am | 1 + test/test-buffer.c | 2 +- test/test-font.c | 69 +++++++++++++++++++++++++++++++++++++++++++++ test/test-unicode.c | 1 + 4 files changed, 72 insertions(+), 1 deletion(-) create mode 100644 test/test-font.c diff --git a/test/Makefile.am b/test/Makefile.am index e58a91a3..6956bbab 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -15,6 +15,7 @@ TEST_PROGS += \ test-blob \ test-buffer \ test-common \ + test-font \ test-object \ test-unicode \ $(NULL) diff --git a/test/test-buffer.c b/test/test-buffer.c index 0cbb8e0c..6fba9e21 100644 --- a/test/test-buffer.c +++ b/test/test-buffer.c @@ -715,7 +715,7 @@ static void test_buffer_empty (void) { g_assert (hb_buffer_get_empty ()); - g_assert (hb_buffer_create (-1) == hb_buffer_get_empty ()); + g_assert (hb_buffer_get_empty () == hb_buffer_create (-1)); } int diff --git a/test/test-font.c b/test/test-font.c new file mode 100644 index 00000000..58a44936 --- /dev/null +++ b/test/test-font.c @@ -0,0 +1,69 @@ +/* + * Copyright © 2011 Google, Inc. + * + * This is part of HarfBuzz, a text shaping library. + * + * Permission is hereby granted, without written agreement and without + * license or royalty fees, to use, copy, modify, and distribute this + * software and its documentation for any purpose, provided that the + * above copyright notice and the following two paragraphs appear in + * all copies of this software. + * + * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES + * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN + * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH + * DAMAGE. + * + * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, + * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS + * ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + * Google Author(s): Behdad Esfahbod + */ + +#include "hb-test.h" + +/* Unit tests for hb-font.h */ + + +static void +test_face_empty (void) +{ + g_assert (hb_face_get_empty ()); + g_assert (hb_face_get_empty () == hb_face_create (hb_blob_get_empty (), 0)); + g_assert (hb_face_get_empty () == hb_face_create (NULL, 0)); +} + +static void +test_font_funcs_empty (void) +{ + g_assert (hb_font_funcs_get_empty ()); + g_assert (hb_font_funcs_is_immutable (hb_font_funcs_get_empty ())); +} + +static void +test_font_empty (void) +{ + g_assert (hb_font_get_empty ()); + g_assert (hb_font_get_empty () == hb_font_create (hb_face_get_empty ())); + g_assert (hb_font_get_empty () == hb_font_create (NULL)); + g_assert (hb_font_get_empty () == hb_font_create_sub_font (NULL)); + g_assert (hb_font_is_immutable (hb_font_get_empty ())); +} + +int +main (int argc, char **argv) +{ + hb_test_init (&argc, &argv); + + hb_test_add (test_face_empty); + + hb_test_add (test_font_funcs_empty); + + hb_test_add (test_font_empty); + + return hb_test_run(); +} diff --git a/test/test-unicode.c b/test/test-unicode.c index 2e15e95d..e163aba3 100644 --- a/test/test-unicode.c +++ b/test/test-unicode.c @@ -555,6 +555,7 @@ test_unicode_properties_empty (void) { hb_unicode_funcs_t *uf = hb_unicode_funcs_get_empty (); + g_assert (uf); g_assert (hb_unicode_funcs_is_immutable (uf)); _test_unicode_properties_nil (uf); } -- GitLab