diff --git a/tests/meson.build b/tests/meson.build index 6febfb5f..f49028dc 100644 --- a/tests/meson.build +++ b/tests/meson.build @@ -248,13 +248,11 @@ if get_option('tod') tod_envs.prepend('LD_LIBRARY_PATH', meson.build_root() / 'libfprint', meson.build_root() / 'libfprint' / 'tod') + tod_subversion = meson.project_version().split('+tod')[0] tod_c_args = [ '-DTEST_TOD_DRIVER=1', '-DTOD_CURRENT_VERSION=@0@'.format(tod_soversion), - '-DTOD_CURRENT_SUBVERSION="@0@.@1@"'.format( - meson.project_version().split('.')[0], - meson.project_version().split('.')[1], - ), + '-DTOD_CURRENT_SUBVERSION="@0@"'.format(tod_subversion), ] fake_driver = shared_module('device-fake-tod-driver', @@ -314,8 +312,11 @@ if get_option('tod') if host_machine.cpu_family() == 'x86_64' tod_test_versions = [ - 'v1+1.90', - 'v1+1.94', + 'v1+1.90.1', + 'v1+1.90.2', + 'v1+1.90.3', + 'v1+1.90.5', + 'v1+1.94.0', ] foreach tod_version: tod_test_versions diff --git a/tests/test-fpi-device.c b/tests/test-fpi-device.c index deea3f16..6e2021c2 100644 --- a/tests/test-fpi-device.c +++ b/tests/test-fpi-device.c @@ -116,19 +116,18 @@ tod_check_version (FpDeviceClass *device_class, return TRUE; versions = g_strsplit (sub_version, ".", -1); - g_assert_cmpuint (g_strv_length (versions), ==, 2); + g_assert_cmpuint (g_strv_length (versions), ==, 3); wanted_versions = g_strsplit (tod_subversion, ".", -1); - g_assert_cmpuint (g_strv_length (wanted_versions), ==, 2); + g_assert_cmpuint (g_strv_length (wanted_versions), ==, 3); - if (atoi (wanted_versions[0]) > atoi (versions[0])) - return FALSE; - - if (atoi (wanted_versions[1]) > atoi (versions[1])) - return FALSE; - - return TRUE; + if (atoi (versions[0]) >= atoi (wanted_versions[0]) && + atoi (versions[1]) > atoi (wanted_versions[1])) + return TRUE; + return atoi (versions[0]) == atoi (wanted_versions[0]) && + atoi (versions[1]) == atoi (wanted_versions[1]) && + atoi (versions[2]) >= atoi (wanted_versions[2]); #endif return TRUE; } @@ -634,9 +633,9 @@ test_driver_features_probe_updates (void) FpDeviceClass *dev_class = FP_DEVICE_GET_CLASS (device); FpiDeviceFake *fake_dev; - if (!tod_check_device_version (device, 1, "1.92")) + if (!tod_check_device_version (device, 1, "1.92.0")) { - g_test_skip ("Feature not supported by TODv1 versions before 1.92"); + g_test_skip ("Feature not supported by TODv1 versions before 1.92.0"); return; } @@ -693,7 +692,7 @@ test_driver_initial_features (void) g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE); g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE_LIST); g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE_DELETE); - if (tod_check_device_version (device, 1, "1.92")) + if (tod_check_device_version (device, 1, "1.92.0")) g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE_CLEAR); else g_assert_false (dev_class->features & FP_DEVICE_FEATURE_STORAGE_CLEAR); @@ -710,7 +709,7 @@ test_driver_initial_features (void) g_assert_true (fp_device_has_feature (device, FP_DEVICE_FEATURE_STORAGE)); g_assert_true (fp_device_has_feature (device, FP_DEVICE_FEATURE_STORAGE_LIST)); g_assert_true (fp_device_has_feature (device, FP_DEVICE_FEATURE_STORAGE_DELETE)); - if (tod_check_device_version (device, 1, "1.92")) + if (tod_check_device_version (device, 1, "1.92.0")) g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE_CLEAR); else g_assert_false (dev_class->features & FP_DEVICE_FEATURE_STORAGE_CLEAR); @@ -723,7 +722,7 @@ test_driver_initial_features (void) FP_DEVICE_FEATURE_STORAGE | FP_DEVICE_FEATURE_STORAGE_LIST | FP_DEVICE_FEATURE_STORAGE_DELETE | - (tod_check_device_version (device, 1, "1.92") ? + (tod_check_device_version (device, 1, "1.92.0") ? FP_DEVICE_FEATURE_STORAGE_CLEAR : 0)); } @@ -771,7 +770,7 @@ test_driver_initial_features_no_capture (void) g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE); g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE_LIST); g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE_DELETE); - if (tod_check_version (dev_class, 1, "1.92")) + if (tod_check_version (dev_class, 1, "1.92.0")) g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE_CLEAR); else g_assert_false (dev_class->features & FP_DEVICE_FEATURE_STORAGE_CLEAR); @@ -795,7 +794,7 @@ test_driver_initial_features_no_verify (void) g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE); g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE_LIST); g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE_DELETE); - if (tod_check_version (dev_class, 1, "1.92")) + if (tod_check_version (dev_class, 1, "1.92.0")) g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE_CLEAR); else g_assert_false (dev_class->features & FP_DEVICE_FEATURE_STORAGE_CLEAR); @@ -819,7 +818,7 @@ test_driver_initial_features_no_identify (void) g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE); g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE_LIST); g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE_DELETE); - if (tod_check_version (dev_class, 1, "1.92")) + if (tod_check_version (dev_class, 1, "1.92.0")) g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE_CLEAR); else g_assert_false (dev_class->features & FP_DEVICE_FEATURE_STORAGE_CLEAR); @@ -843,7 +842,7 @@ test_driver_initial_features_no_storage (void) g_assert_false (dev_class->features & FP_DEVICE_FEATURE_STORAGE); g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE_LIST); g_assert_false (dev_class->features & FP_DEVICE_FEATURE_STORAGE_DELETE); - if (tod_check_version (dev_class, 1, "1.92")) + if (tod_check_version (dev_class, 1, "1.92.0")) g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE_CLEAR); else g_assert_false (dev_class->features & FP_DEVICE_FEATURE_STORAGE_CLEAR); @@ -864,13 +863,13 @@ test_driver_initial_features_no_list (void) g_assert_true (dev_class->features & FP_DEVICE_FEATURE_IDENTIFY); g_assert_true (dev_class->features & FP_DEVICE_FEATURE_VERIFY); g_assert_false (dev_class->features & FP_DEVICE_FEATURE_DUPLICATES_CHECK); - if (tod_check_version (dev_class, 1, "1.92")) + if (tod_check_version (dev_class, 1, "1.92.0")) g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE); else g_assert_false (dev_class->features & FP_DEVICE_FEATURE_STORAGE); g_assert_false (dev_class->features & FP_DEVICE_FEATURE_STORAGE_LIST); g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE_DELETE); - if (tod_check_version (dev_class, 1, "1.92")) + if (tod_check_version (dev_class, 1, "1.92.0")) g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE_CLEAR); else g_assert_false (dev_class->features & FP_DEVICE_FEATURE_STORAGE_CLEAR); @@ -894,7 +893,7 @@ test_driver_initial_features_no_delete (void) g_assert_false (dev_class->features & FP_DEVICE_FEATURE_STORAGE); g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE_LIST); g_assert_false (dev_class->features & FP_DEVICE_FEATURE_STORAGE_DELETE); - if (tod_check_version (dev_class, 1, "1.92")) + if (tod_check_version (dev_class, 1, "1.92.0")) g_assert_true (dev_class->features & FP_DEVICE_FEATURE_STORAGE_CLEAR); else g_assert_false (dev_class->features & FP_DEVICE_FEATURE_STORAGE_CLEAR); @@ -2134,9 +2133,9 @@ test_driver_identify_suspend_continues (void) FpiDeviceFake *fake_dev; FpPrint *expected_matched; - if (!tod_check_version (dev_class, 1, "1.94")) + if (!tod_check_version (dev_class, 1, "1.94.0")) { - g_test_skip ("Feature not supported by TODv1 versions before 1.94"); + g_test_skip ("Feature not supported by TODv1 versions before 1.94.0"); return; } @@ -2206,9 +2205,9 @@ test_driver_identify_suspend_succeeds (void) FpiDeviceFake *fake_dev; FpPrint *expected_matched; - if (!tod_check_version (dev_class, 1, "1.94")) + if (!tod_check_version (dev_class, 1, "1.94.0")) { - g_test_skip ("Feature not supported by TODv1 versions before 1.94"); + g_test_skip ("Feature not supported by TODv1 versions before 1.94.0"); return; } @@ -2274,9 +2273,9 @@ test_driver_identify_suspend_busy_error (void) FpiDeviceFake *fake_dev; FpPrint *expected_matched; - if (!tod_check_version (dev_class, 1, "1.94")) + if (!tod_check_version (dev_class, 1, "1.94.0")) { - g_test_skip ("Feature not supported by TODv1 versions before 1.94"); + g_test_skip ("Feature not supported by TODv1 versions before 1.94.0"); return; } @@ -2337,9 +2336,9 @@ test_driver_identify_suspend_while_idle (void) g_autoptr(GError) error = NULL; FpiDeviceFake *fake_dev; - if (!tod_check_version (dev_class, 1, "1.94")) + if (!tod_check_version (dev_class, 1, "1.94.0")) { - g_test_skip ("Feature not supported by TODv1 versions before 1.94"); + g_test_skip ("Feature not supported by TODv1 versions before 1.94.0"); return; } @@ -2387,9 +2386,9 @@ test_driver_identify_warmup_cooldown (void) FpiDeviceFake *fake_dev; gint64 start_time; - if (!tod_check_version (dev_class, 1, "1.94")) + if (!tod_check_version (dev_class, 1, "1.94.0")) { - g_test_skip ("Feature not supported by TODv1 versions before 1.94"); + g_test_skip ("Feature not supported by TODv1 versions before 1.94.0"); return; } @@ -2691,9 +2690,9 @@ test_driver_clear_storage (void) FpiDeviceFake *fake_dev = FPI_DEVICE_FAKE (device); gboolean ret; - if (!tod_check_device_version (device, 1, "1.92")) + if (!tod_check_device_version (device, 1, "1.92.0")) { - g_test_skip ("Feature not supported by TODv1 versions before 1.92"); + g_test_skip ("Feature not supported by TODv1 versions before 1.92.0"); return; } @@ -2712,9 +2711,9 @@ test_driver_clear_storage_error (void) FpiDeviceFake *fake_dev = FPI_DEVICE_FAKE (device); gboolean ret; - if (!tod_check_device_version (device, 1, "1.92")) + if (!tod_check_device_version (device, 1, "1.92.0")) { - g_test_skip ("Feature not supported by TODv1 versions before 1.92"); + g_test_skip ("Feature not supported by TODv1 versions before 1.92.0"); return; } @@ -2824,9 +2823,9 @@ test_driver_critical (void) void (*orig_verify) (FpDevice *device) = dev_class->verify; FpiDeviceFake *fake_dev = FPI_DEVICE_FAKE (device); - if (!tod_check_device_version (device, 1, "1.94")) + if (!tod_check_device_version (device, 1, "1.94.0")) { - g_test_skip ("Feature not supported by TODv1 versions before 1.94"); + g_test_skip ("Feature not supported by TODv1 versions before 1.94.0"); return; } @@ -3038,9 +3037,9 @@ test_driver_action_is_cancelled_open (void) g_autoptr(GError) error = NULL; FpiDeviceFake *fake_dev; - if (!tod_check_version (dev_class, 1, "1.94")) + if (!tod_check_version (dev_class, 1, "1.94.0")) { - g_test_skip ("Feature not supported by TODv1 versions before 1.94"); + g_test_skip ("Feature not supported by TODv1 versions before 1.94.0"); return; } @@ -3064,9 +3063,9 @@ test_driver_action_internally_cancelled_open (void) g_autoptr(GError) error = NULL; FpiDeviceFake *fake_dev; - if (!tod_check_version (dev_class, 1, "1.94")) + if (!tod_check_version (dev_class, 1, "1.94.0")) { - g_test_skip ("Feature not supported by TODv1 versions before 1.94"); + g_test_skip ("Feature not supported by TODv1 versions before 1.94.0"); return; } @@ -3219,7 +3218,7 @@ test_driver_action_error_all (void) g_assert_error (error, FP_DEVICE_ERROR, FP_DEVICE_ERROR_DATA_INVALID); g_clear_error (&error); - if (tod_check_device_version (device, 1, "1.92")) + if (tod_check_device_version (device, 1, "1.92.0")) { fake_dev->ret_error = fpi_device_error_new (FP_DEVICE_ERROR_DATA_INVALID); g_assert_false (fp_device_clear_storage_sync (device, NULL, &error)); @@ -3333,7 +3332,7 @@ test_driver_action_error_fallback_all (void) g_assert_error (error, FP_DEVICE_ERROR, FP_DEVICE_ERROR_GENERAL); g_clear_error (&error); - if (tod_check_device_version (device, 1, "1.92")) + if (tod_check_device_version (device, 1, "1.92.0")) { g_test_expect_message (G_LOG_DOMAIN, G_LOG_LEVEL_WARNING, "*Device failed to pass an error to generic action " diff --git a/tests/tod-drivers/tod-x86_64-v1+1.90.1/libdevice-fake-tod-ssm-test-v1+1.90.1-x86_64.so b/tests/tod-drivers/tod-x86_64-v1+1.90.1/libdevice-fake-tod-ssm-test-v1+1.90.1-x86_64.so new file mode 100755 index 00000000..094bb567 Binary files /dev/null and b/tests/tod-drivers/tod-x86_64-v1+1.90.1/libdevice-fake-tod-ssm-test-v1+1.90.1-x86_64.so differ diff --git a/tests/tod-drivers/tod-x86_64-v1+1.90.1/libdevice-fake-tod-test-driver-v1+1.90.1-x86_64.so b/tests/tod-drivers/tod-x86_64-v1+1.90.1/libdevice-fake-tod-test-driver-v1+1.90.1-x86_64.so new file mode 100755 index 00000000..05c265b0 Binary files /dev/null and b/tests/tod-drivers/tod-x86_64-v1+1.90.1/libdevice-fake-tod-test-driver-v1+1.90.1-x86_64.so differ diff --git a/tests/tod-drivers/tod-x86_64-v1+1.90.2/libdevice-fake-tod-ssm-test-v1+1.90.2-x86_64.so b/tests/tod-drivers/tod-x86_64-v1+1.90.2/libdevice-fake-tod-ssm-test-v1+1.90.2-x86_64.so new file mode 100755 index 00000000..79dd1073 Binary files /dev/null and b/tests/tod-drivers/tod-x86_64-v1+1.90.2/libdevice-fake-tod-ssm-test-v1+1.90.2-x86_64.so differ diff --git a/tests/tod-drivers/tod-x86_64-v1+1.90.2/libdevice-fake-tod-test-driver-v1+1.90.2-x86_64.so b/tests/tod-drivers/tod-x86_64-v1+1.90.2/libdevice-fake-tod-test-driver-v1+1.90.2-x86_64.so new file mode 100755 index 00000000..ead8c975 Binary files /dev/null and b/tests/tod-drivers/tod-x86_64-v1+1.90.2/libdevice-fake-tod-test-driver-v1+1.90.2-x86_64.so differ diff --git a/tests/tod-drivers/tod-x86_64-v1+1.90.3/libdevice-fake-tod-ssm-test-v1+1.90.3-x86_64.so b/tests/tod-drivers/tod-x86_64-v1+1.90.3/libdevice-fake-tod-ssm-test-v1+1.90.3-x86_64.so new file mode 100755 index 00000000..336ced53 Binary files /dev/null and b/tests/tod-drivers/tod-x86_64-v1+1.90.3/libdevice-fake-tod-ssm-test-v1+1.90.3-x86_64.so differ diff --git a/tests/tod-drivers/tod-x86_64-v1+1.90.3/libdevice-fake-tod-test-driver-v1+1.90.3-x86_64.so b/tests/tod-drivers/tod-x86_64-v1+1.90.3/libdevice-fake-tod-test-driver-v1+1.90.3-x86_64.so new file mode 100755 index 00000000..281bb096 Binary files /dev/null and b/tests/tod-drivers/tod-x86_64-v1+1.90.3/libdevice-fake-tod-test-driver-v1+1.90.3-x86_64.so differ diff --git a/tests/tod-drivers/tod-x86_64-v1+1.90.5/libdevice-fake-tod-ssm-test-v1+1.90.5-x86_64.so b/tests/tod-drivers/tod-x86_64-v1+1.90.5/libdevice-fake-tod-ssm-test-v1+1.90.5-x86_64.so new file mode 100755 index 00000000..0001228a Binary files /dev/null and b/tests/tod-drivers/tod-x86_64-v1+1.90.5/libdevice-fake-tod-ssm-test-v1+1.90.5-x86_64.so differ diff --git a/tests/tod-drivers/tod-x86_64-v1+1.90.5/libdevice-fake-tod-test-driver-v1+1.90.5-x86_64.so b/tests/tod-drivers/tod-x86_64-v1+1.90.5/libdevice-fake-tod-test-driver-v1+1.90.5-x86_64.so new file mode 100755 index 00000000..d8634c42 Binary files /dev/null and b/tests/tod-drivers/tod-x86_64-v1+1.90.5/libdevice-fake-tod-test-driver-v1+1.90.5-x86_64.so differ diff --git a/tests/tod-drivers/tod-x86_64-v1+1.90/libdevice-fake-tod-ssm-test-v1+1.90-x86_64.so b/tests/tod-drivers/tod-x86_64-v1+1.90/libdevice-fake-tod-ssm-test-v1+1.90-x86_64.so deleted file mode 100755 index 9b1c3ff0..00000000 Binary files a/tests/tod-drivers/tod-x86_64-v1+1.90/libdevice-fake-tod-ssm-test-v1+1.90-x86_64.so and /dev/null differ diff --git a/tests/tod-drivers/tod-x86_64-v1+1.90/libdevice-fake-tod-test-driver-v1+1.90-x86_64.so b/tests/tod-drivers/tod-x86_64-v1+1.90/libdevice-fake-tod-test-driver-v1+1.90-x86_64.so deleted file mode 100755 index b7cc06e5..00000000 Binary files a/tests/tod-drivers/tod-x86_64-v1+1.90/libdevice-fake-tod-test-driver-v1+1.90-x86_64.so and /dev/null differ diff --git a/tests/tod-drivers/tod-x86_64-v1+1.94.0/libdevice-fake-tod-ssm-test-v1+1.94.0-x86_64.so b/tests/tod-drivers/tod-x86_64-v1+1.94.0/libdevice-fake-tod-ssm-test-v1+1.94.0-x86_64.so new file mode 100755 index 00000000..49e3104a Binary files /dev/null and b/tests/tod-drivers/tod-x86_64-v1+1.94.0/libdevice-fake-tod-ssm-test-v1+1.94.0-x86_64.so differ diff --git a/tests/tod-drivers/tod-x86_64-v1+1.94.0/libdevice-fake-tod-test-driver-v1+1.94.0-x86_64.so b/tests/tod-drivers/tod-x86_64-v1+1.94.0/libdevice-fake-tod-test-driver-v1+1.94.0-x86_64.so new file mode 100755 index 00000000..8c64885e Binary files /dev/null and b/tests/tod-drivers/tod-x86_64-v1+1.94.0/libdevice-fake-tod-test-driver-v1+1.94.0-x86_64.so differ diff --git a/tests/tod-drivers/tod-x86_64-v1+1.94/libdevice-fake-tod-ssm-test-v1+1.94-x86_64.so b/tests/tod-drivers/tod-x86_64-v1+1.94/libdevice-fake-tod-ssm-test-v1+1.94-x86_64.so deleted file mode 100755 index 0ad3be4b..00000000 Binary files a/tests/tod-drivers/tod-x86_64-v1+1.94/libdevice-fake-tod-ssm-test-v1+1.94-x86_64.so and /dev/null differ diff --git a/tests/tod-drivers/tod-x86_64-v1+1.94/libdevice-fake-tod-test-driver-v1+1.94-x86_64.so b/tests/tod-drivers/tod-x86_64-v1+1.94/libdevice-fake-tod-test-driver-v1+1.94-x86_64.so deleted file mode 100755 index c370fc21..00000000 Binary files a/tests/tod-drivers/tod-x86_64-v1+1.94/libdevice-fake-tod-test-driver-v1+1.94-x86_64.so and /dev/null differ