aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIgor Gnatenko <i.gnatenko.brain@gmail.com>2015-08-21 19:54:51 +0300
committerIgor Gnatenko <i.gnatenko.brain@gmail.com>2015-08-23 13:38:17 +0300
commit0384fa9175c3b0e8f7671ffc2a5b1292c4cd5874 (patch)
treea40c4063b431b40ffdcd15dbff51bfed803ea87e
parent7b0dd7299c75d2b2aaa9ffc5a0e986a9fa943ba7 (diff)
downloadmeson-0384fa9175c3b0e8f7671ffc2a5b1292c4cd5874.zip
meson-0384fa9175c3b0e8f7671ffc2a5b1292c4cd5874.tar.gz
meson-0384fa9175c3b0e8f7671ffc2a5b1292c4cd5874.tar.bz2
add python test for glib and test against lib
print->print_message is caused because GI does print->print_ in python bindings which is not good. Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
-rw-r--r--test cases/frameworks/7 gnome/gir/meson-sample.c18
-rw-r--r--test cases/frameworks/7 gnome/gir/meson-sample.h4
-rw-r--r--test cases/frameworks/7 gnome/gir/meson.build20
-rw-r--r--test cases/frameworks/7 gnome/gir/prog.c4
-rwxr-xr-xtest cases/frameworks/7 gnome/gir/prog.py6
-rw-r--r--test cases/frameworks/7 gnome/installed_files.txt1
6 files changed, 44 insertions, 9 deletions
diff --git a/test cases/frameworks/7 gnome/gir/meson-sample.c b/test cases/frameworks/7 gnome/gir/meson-sample.c
index 8f46708..dbf3625 100644
--- a/test cases/frameworks/7 gnome/gir/meson-sample.c
+++ b/test cases/frameworks/7 gnome/gir/meson-sample.c
@@ -17,6 +17,14 @@ enum {
static GParamSpec *gParamSpecs [LAST_PROP];
+/**
+ * meson_sample_new:
+ * @msg: The message to set.
+ *
+ * Allocates a new #MesonSample.
+ *
+ * Returns: (transfer full): a #MesonSample.
+ */
MesonSample *
meson_sample_new (const gchar *msg)
{
@@ -99,8 +107,16 @@ meson_sample_init (MesonSample *self)
{
}
+/**
+ * meson_sample_print_message:
+ * @self: a #MesonSample.
+ *
+ * Prints the message.
+ *
+ * Returns: Nothing.
+ */
void
-meson_sample_print (MesonSample *self)
+meson_sample_print_message (MesonSample *self)
{
g_return_if_fail (MESON_IS_SAMPLE (self));
diff --git a/test cases/frameworks/7 gnome/gir/meson-sample.h b/test cases/frameworks/7 gnome/gir/meson-sample.h
index 0bbe9db..cd2bbc6 100644
--- a/test cases/frameworks/7 gnome/gir/meson-sample.h
+++ b/test cases/frameworks/7 gnome/gir/meson-sample.h
@@ -13,8 +13,8 @@ G_BEGIN_DECLS
G_DECLARE_FINAL_TYPE (MesonSample, meson_sample, MESON, SAMPLE, GObject)
-MesonSample *meson_sample_new (const gchar *msg);
-void meson_sample_print (MesonSample *self);
+MesonSample *meson_sample_new (const gchar *msg);
+void meson_sample_print_message (MesonSample *self);
G_END_DECLS
diff --git a/test cases/frameworks/7 gnome/gir/meson.build b/test cases/frameworks/7 gnome/gir/meson.build
index c5fce63..32884db 100644
--- a/test cases/frameworks/7 gnome/gir/meson.build
+++ b/test cases/frameworks/7 gnome/gir/meson.build
@@ -1,13 +1,21 @@
libsources = ['meson-sample.c', 'meson-sample.h']
+girlib = shared_library(
+ 'girlib',
+ sources : libsources,
+ dependencies : gobj,
+ install : true
+)
+
girexe = executable(
'girprog',
- sources : [libsources, 'prog.c'],
- dependencies : [glib, gobj, gir]
+ sources : 'prog.c',
+ dependencies : [glib, gobj, gir],
+ link_with : girlib
)
gnome.generate_gir(
- girexe,
+ girlib,
sources : libsources,
nsversion : '1.0',
namespace : 'Meson',
@@ -17,4 +25,8 @@ gnome.generate_gir(
install : true
)
-test('gobject introspection', girexe)
+test('gobject introspection/c', girexe)
+test('gobject introspection/py', find_program('prog.py'),
+ env : ['GI_TYPELIB_PATH=@0@'.format(meson.current_build_dir()),
+ 'LD_LIBRARY_PATH=@0@'.format(meson.current_build_dir()),
+ ])
diff --git a/test cases/frameworks/7 gnome/gir/prog.c b/test cases/frameworks/7 gnome/gir/prog.c
index 64e3cdc..1116285 100644
--- a/test cases/frameworks/7 gnome/gir/prog.c
+++ b/test cases/frameworks/7 gnome/gir/prog.c
@@ -16,8 +16,8 @@ main (gint argc,
return 1;
}
- g_autoptr(MesonSample) i = meson_sample_new ("Hello, meson!");
- meson_sample_print (i);
+ g_autoptr(MesonSample) i = meson_sample_new ("Hello, meson/c!");
+ meson_sample_print_message (i);
return 0;
}
diff --git a/test cases/frameworks/7 gnome/gir/prog.py b/test cases/frameworks/7 gnome/gir/prog.py
new file mode 100755
index 0000000..717d08a
--- /dev/null
+++ b/test cases/frameworks/7 gnome/gir/prog.py
@@ -0,0 +1,6 @@
+#!/usr/bin/env python3
+from gi.repository import Meson
+
+if __name__ == "__main__":
+ s = Meson.Sample.new("Hello, meson/py!")
+ s.print_message()
diff --git a/test cases/frameworks/7 gnome/installed_files.txt b/test cases/frameworks/7 gnome/installed_files.txt
index 8464839..741d9b8 100644
--- a/test cases/frameworks/7 gnome/installed_files.txt
+++ b/test cases/frameworks/7 gnome/installed_files.txt
@@ -1,3 +1,4 @@
usr/lib/girepository-1.0/Meson-1.0.typelib
+usr/lib/libgirlib.so
usr/share/gir-1.0/Meson-1.0.gir
usr/share/glib-2.0/schemas/com.github.meson.gschema.xml