diff options
author | Martyn Russell <martyn@lanedo.com> | 2014-12-03 11:25:05 +0000 |
---|---|---|
committer | Martyn Russell <martyn@lanedo.com> | 2014-12-03 11:25:05 +0000 |
commit | be88f0034cb9599a09e1ec36bfc3bbcc56b3127f (patch) | |
tree | d8d753d61c2c216e05d9cfa7455be1dec5a0b3f3 /src/libtracker-extract/tracker-guarantee.c | |
parent | ecb703e4e21d3240c467b6f45fbce3a959a751ea (diff) | |
download | tracker-be88f0034cb9599a09e1ec36bfc3bbcc56b3127f.tar.gz |
libtracker-extract: Fix unit tests and return value for guarantee API
- Return FALSE when we don't add to the TrackerSparqlBuilder, TRUE otherwise
- Skip any unit tests when --enable-guarantee-metadata is not configured
Diffstat (limited to 'src/libtracker-extract/tracker-guarantee.c')
-rw-r--r-- | src/libtracker-extract/tracker-guarantee.c | 31 |
1 files changed, 25 insertions, 6 deletions
diff --git a/src/libtracker-extract/tracker-guarantee.c b/src/libtracker-extract/tracker-guarantee.c index d7409e5ad..99354e523 100644 --- a/src/libtracker-extract/tracker-guarantee.c +++ b/src/libtracker-extract/tracker-guarantee.c @@ -87,7 +87,7 @@ get_date_from_file_mtime (const gchar *uri) * (before the "." and extension of the file) as the title. If the * title has any "_" characters, they are also converted into spaces. * - * Returns: %TRUE on success, otherwise %FALSE. + * Returns: %TRUE on success and content was added to @metadata, otherwise %FALSE. * * Since: 0.10 **/ @@ -98,6 +98,8 @@ tracker_guarantee_title_from_file (TrackerSparqlBuilder *metadata, const gchar *uri, gchar **p_new_value) { + gboolean success = TRUE; + #ifdef GUARANTEE_METADATA g_return_val_if_fail (metadata != NULL, FALSE); g_return_val_if_fail (key != NULL, FALSE); @@ -115,7 +117,12 @@ tracker_guarantee_title_from_file (TrackerSparqlBuilder *metadata, gchar *value; value = get_title_from_file (uri); - tracker_sparql_builder_object_unvalidated (metadata, value); + + if (!value && value[0] != '\0') { + tracker_sparql_builder_object_unvalidated (metadata, value); + } else { + success = FALSE; + } if (p_new_value != NULL) { *p_new_value = value; @@ -131,10 +138,12 @@ tracker_guarantee_title_from_file (TrackerSparqlBuilder *metadata, if (p_new_value != NULL) { *p_new_value = g_strdup (current_value); } + } else { + success = FALSE; } #endif /* GUARANTEE_METADATA */ - return TRUE; + return success; } /** @@ -151,7 +160,7 @@ tracker_guarantee_title_from_file (TrackerSparqlBuilder *metadata, * When parsing @uri, stat() is called on the file to create a * date based on the file's mtime. * - * Returns: %TRUE on success, otherwise %FALSE. + * Returns: %TRUE on success and content was added to @metadata, otherwise %FALSE. * * Since: 0.10 **/ @@ -161,6 +170,8 @@ tracker_guarantee_date_from_file_mtime (TrackerSparqlBuilder *metadata, const gchar *current_value, const gchar *uri) { + gboolean success = TRUE; + #ifdef GUARANTEE_METADATA g_return_val_if_fail (metadata != NULL, FALSE); g_return_val_if_fail (key != NULL, FALSE); @@ -174,15 +185,23 @@ tracker_guarantee_date_from_file_mtime (TrackerSparqlBuilder *metadata, gchar *value; value = get_date_from_file_mtime (uri); - tracker_sparql_builder_object_unvalidated (metadata, value); + + if (value && *value != '\0') { + tracker_sparql_builder_object_unvalidated (metadata, value); + } else { + success = FALSE; + } + g_free (value); } #else /* GUARANTEE_METADATA */ if (current_value && *current_value != '\0') { tracker_sparql_builder_predicate (metadata, key); tracker_sparql_builder_object_unvalidated (metadata, current_value); + } else { + success = FALSE; } #endif /* GUARANTEE_METADATA */ - return TRUE; + return success; } |