aboutsummaryrefslogtreecommitdiffstats
path: root/meson/test cases/vala/18 vapi consumed twice
diff options
context:
space:
mode:
Diffstat (limited to 'meson/test cases/vala/18 vapi consumed twice')
-rw-r--r--meson/test cases/vala/18 vapi consumed twice/app.vala11
-rw-r--r--meson/test cases/vala/18 vapi consumed twice/beer.vala10
-rw-r--r--meson/test cases/vala/18 vapi consumed twice/meson.build15
-rw-r--r--meson/test cases/vala/18 vapi consumed twice/person.vala16
4 files changed, 52 insertions, 0 deletions
diff --git a/meson/test cases/vala/18 vapi consumed twice/app.vala b/meson/test cases/vala/18 vapi consumed twice/app.vala
new file mode 100644
index 000000000..cd94a42b9
--- /dev/null
+++ b/meson/test cases/vala/18 vapi consumed twice/app.vala
@@ -0,0 +1,11 @@
+namespace App {
+ public static int main(string[] args) {
+ var person = new Person();
+ print("Favorite beer of \"%s\" is %s\n", person.name, person.favorite_beer.flavor);
+
+ var beer = new Beer("tasty");
+ print("This beer is %s\n", beer.flavor);
+
+ return 0;
+ }
+}
diff --git a/meson/test cases/vala/18 vapi consumed twice/beer.vala b/meson/test cases/vala/18 vapi consumed twice/beer.vala
new file mode 100644
index 000000000..cee38ad43
--- /dev/null
+++ b/meson/test cases/vala/18 vapi consumed twice/beer.vala
@@ -0,0 +1,10 @@
+public class Beer : Object {
+ public string flavor {
+ get;
+ construct;
+ }
+
+ public Beer(string flavor) {
+ Object(flavor: flavor);
+ }
+}
diff --git a/meson/test cases/vala/18 vapi consumed twice/meson.build b/meson/test cases/vala/18 vapi consumed twice/meson.build
new file mode 100644
index 000000000..6a7f5ebc5
--- /dev/null
+++ b/meson/test cases/vala/18 vapi consumed twice/meson.build
@@ -0,0 +1,15 @@
+project('vapi consumed twice', 'vala', 'c')
+
+base_deps = [dependency('glib-2.0'), dependency('gobject-2.0')]
+
+beer = library('beer', 'beer.vala', dependencies : base_deps)
+beer_dep = declare_dependency(link_with : beer)
+
+person = library('person', 'person.vala', link_with : beer,
+ dependencies : base_deps)
+person_dep = declare_dependency(link_with : person, dependencies : [beer_dep])
+
+app = executable('app', 'app.vala',
+ dependencies : base_deps + [person_dep, beer_dep])
+
+test('valavapiconsumedtwicetest', app)
diff --git a/meson/test cases/vala/18 vapi consumed twice/person.vala b/meson/test cases/vala/18 vapi consumed twice/person.vala
new file mode 100644
index 000000000..36b0025e2
--- /dev/null
+++ b/meson/test cases/vala/18 vapi consumed twice/person.vala
@@ -0,0 +1,16 @@
+public class Person : Object {
+ public string name {
+ get {
+ return "Joe Badger";
+ }
+ }
+
+ public Beer favorite_beer {
+ get;
+ construct;
+ }
+
+ public Person() {
+ Object(favorite_beer: new Beer("smooth"));
+ }
+}