diff --git a/tests/wp/meson.build b/tests/wp/meson.build
index c0f9f4eea9a39d59afb1c67b9c4cd3db4fb0a848..ef457597fbecc491db84269a9aca4042a1ac27aa 100644
--- a/tests/wp/meson.build
+++ b/tests/wp/meson.build
@@ -51,7 +51,11 @@ test(
 
 test(
   'test-spa-props',
-  executable('test-spa-props', 'spa-props.c',
+  executable('test-spa-props',
+      [
+        'spa-props.c',
+        '../../lib/wp/spa-props.c'
+      ],
       dependencies: common_deps, c_args: common_args),
   env: common_env,
 )
diff --git a/tests/wp/spa-props.c b/tests/wp/spa-props.c
index a67cece74b05adf3c6d1d344bdedb41538c62538..0446eaf50039254baaed60ec5e279cf1b4e4f827 100644
--- a/tests/wp/spa-props.c
+++ b/tests/wp/spa-props.c
@@ -6,13 +6,11 @@
  * SPDX-License-Identifier: MIT
  */
 
-/* private functions, they should be hidden in the shared library */
-#include "wp/spa-props.c"
-#include "wp/spa-type.c"
-#include "wp/iterator.c"
-#include "wp/spa-pod.c"
-
 #include <spa/pod/iter.h>
+#include <spa/pod/vararg.h>
+#include <spa/param/props.h>
+
+#include "../../lib/wp/private.h"
 
 #include <wp/wp.h>