test: remove asset test that needs internal method
authorHenry Wilkes <hwilkes@igalia.com>
Wed, 4 Mar 2020 17:00:46 +0000 (17:00 +0000)
committerThibault Saunier <tsaunier@igalia.com>
Thu, 5 Mar 2020 20:04:51 +0000 (17:04 -0300)
The test_proxy_asset test needs the internal method
ges_asset_finish_proxy. The test also uses the associated internal methods
ges_asset_try_proxy and ges_asset_cache_lookup. However, these are
marked with GES_API in ges-internal.h, which allows us access to them
here.
The new method is not marked as GES_API because it would not allow us to
remove the method in the future without removing it from the symbols list.
We do not want to add to the problem.

The test was simply commented out since we may wish to support tests
that access internal methods in the future using meson.

tests/check/ges/asset.c

index 04f96b9..7cf6b19 100644 (file)
@@ -20,7 +20,7 @@
  */
 
 #include "test-utils.h"
-#include "../../../ges/ges-internal.h"
+/* #include "../../../ges/ges-internal.h" */
 #include <ges/ges.h>
 #include <gst/check/gstcheck.h>
 
@@ -267,6 +267,20 @@ GST_START_TEST (test_list_asset)
 
 GST_END_TEST;
 
+/*
+ * NOTE: this test is commented out because it requires the internal
+ * ges_asset_finish_proxy method. This method replaces the behaviour of
+ * ges_asset_set_proxy (NULL, proxy), which is no longer supported.
+ *
+ * ges_asset_cache_lookup and ges_asset_try_proxy are similarly internal,
+ * but they are marked with GES_API in ges-internal.h
+ * The newer ges_asset_finish_proxy is not marked as GES_API, because it
+ * would add it to the symbols list, and could therefore not be easily
+ * removed.
+ *
+ * Once we have a nice way to call internal methods for tests, we should
+ * uncomment this.
+ *
 GST_START_TEST (test_proxy_asset)
 {
   GESAsset *identity, *nothing, *nothing_at_all;
@@ -291,7 +305,7 @@ GST_START_TEST (test_proxy_asset)
   nothing_at_all = ges_asset_cache_lookup (GES_TYPE_EFFECT, "nothing_at_all");
   fail_unless (nothing_at_all != NULL);
 
-  /* Now we proxy nothing_at_all to nothing which is itself proxied to identity */
+  // Now we proxy nothing_at_all to nothing which is itself proxied to identity
   fail_unless (ges_asset_try_proxy (nothing_at_all, "nothing"));
   fail_unless (ges_asset_finish_proxy (nothing));
   fail_unless_equals_int (g_list_length (ges_asset_list_proxies
@@ -300,7 +314,7 @@ GST_START_TEST (test_proxy_asset)
   fail_unless_equals_pointer (ges_asset_get_proxy_target (nothing),
       nothing_at_all);
 
-  /* If we request nothing_at_all we should get the good proxied identity */
+  // If we request nothing_at_all we should get the good proxied identity
   nothing_at_all = ges_asset_request (GES_TYPE_EFFECT, "nothing_at_all", NULL);
   fail_unless (nothing_at_all == identity);
 
@@ -311,6 +325,7 @@ GST_START_TEST (test_proxy_asset)
 }
 
 GST_END_TEST;
+*/
 
 static Suite *
 ges_suite (void)
@@ -325,7 +340,6 @@ ges_suite (void)
   tcase_add_test (tc_chain, test_transition_change_asset);
   tcase_add_test (tc_chain, test_uri_clip_change_asset);
   tcase_add_test (tc_chain, test_list_asset);
-  tcase_add_test (tc_chain, test_proxy_asset);
 
   return s;
 }