diff --git a/tests/meson.build b/tests/meson.build index 531c8e9b..0d2f3cd9 100644 --- a/tests/meson.build +++ b/tests/meson.build @@ -214,6 +214,14 @@ if get_option('tod') install: false ) + test_utils_tod = static_library('fprint-test-utils-tod', + sources: [ + 'test-utils-tod.c', + ], + dependencies: libfprint_private_dep, + link_with: test_utils, + install: false) + tod_unit_tests = [ 'fp-context-tod', 'fp-device-tod', @@ -225,7 +233,7 @@ if get_option('tod') sources: basename + '.c', dependencies: libfprint_private_dep, c_args: common_cflags, - link_with: test_utils, + link_with: test_utils_tod, ) test(test_name, find_program('test-runner.sh'), diff --git a/tests/test-fp-device-tod.c b/tests/test-fp-device-tod.c index d1a132b7..25253e6e 100644 --- a/tests/test-fp-device-tod.c +++ b/tests/test-fp-device-tod.c @@ -19,37 +19,7 @@ #include -#include "test-utils.h" - -static FptContext * -fpt_context_new_with_fake_dev (void) -{ - FptContext *tctx; - GPtrArray *devices; - unsigned int i; - - tctx = fpt_context_new (); - devices = fp_context_get_devices (tctx->fp_context); - - g_assert_nonnull (devices); - g_assert_cmpuint (devices->len, ==, 1); - - for (i = 0; i < devices->len; ++i) - { - FpDevice *device = devices->pdata[i]; - - if (g_strcmp0 (fp_device_get_driver (device), "fake_test_dev") == 0) - { - tctx->device = device; - break; - } - } - - g_assert_true (FP_IS_DEVICE (tctx->device)); - g_object_add_weak_pointer (G_OBJECT (tctx->device), (gpointer) & tctx->device); - - return tctx; -} +#include "test-utils-tod.h" static void on_device_opened (FpDevice *dev, GAsyncResult *res, FptContext *tctx) diff --git a/tests/test-utils-tod.c b/tests/test-utils-tod.c new file mode 100644 index 00000000..d8fbb37c --- /dev/null +++ b/tests/test-utils-tod.c @@ -0,0 +1,52 @@ +/* + * Unit tests for libfprint + * Copyright (C) 2020 Marco Trevisan + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#include + +#include "test-utils-tod.h" + +FptContext * +fpt_context_new_with_fake_dev (void) +{ + FptContext *tctx; + GPtrArray *devices; + unsigned int i; + + tctx = fpt_context_new (); + devices = fp_context_get_devices (tctx->fp_context); + + g_assert_nonnull (devices); + g_assert_cmpuint (devices->len, ==, 1); + + for (i = 0; i < devices->len; ++i) + { + FpDevice *device = devices->pdata[i]; + + if (g_strcmp0 (fp_device_get_driver (device), "fake_test_dev") == 0) + { + tctx->device = device; + break; + } + } + + g_assert_true (FP_IS_DEVICE (tctx->device)); + g_object_add_weak_pointer (G_OBJECT (tctx->device), (gpointer) & tctx->device); + + return tctx; +} diff --git a/tests/test-utils-tod.h b/tests/test-utils-tod.h new file mode 100644 index 00000000..63f08375 --- /dev/null +++ b/tests/test-utils-tod.h @@ -0,0 +1,23 @@ +/* + * Unit tests for libfprint + * Copyright (C) 2020 Marco Trevisan + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#include +#include "test-utils.h" + +FptContext * fpt_context_new_with_fake_dev (void);