]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
tests: Add "null-terminated array" delegate test to increase coverage
authorRico Tzschichholz <ricotz@ubuntu.com>
Sat, 23 Feb 2019 19:19:31 +0000 (20:19 +0100)
committerRico Tzschichholz <ricotz@ubuntu.com>
Tue, 26 Feb 2019 16:53:41 +0000 (17:53 +0100)
tests/Makefile.am
tests/delegates/return-array-null-terminated.vala [new file with mode: 0644]

index 51e71d2fd8bd18f447ba99d1ef4897792e0a82e5..b5fe150f86f3b54f331a5b69c858ea74fc1e38a3 100644 (file)
@@ -235,6 +235,7 @@ TESTS = \
        delegates/fields-no-target.vala \
        delegates/instance-method-to-no-target.test \
        delegates/reference_transfer.vala \
+       delegates/return-array-null-terminated.vala \
        delegates/wrapper.vala \
        delegates/bug519949.test \
        delegates/bug539166.vala \
diff --git a/tests/delegates/return-array-null-terminated.vala b/tests/delegates/return-array-null-terminated.vala
new file mode 100644 (file)
index 0000000..8918b3e
--- /dev/null
@@ -0,0 +1,17 @@
+[CCode (has_target = false, array_length = false, array_null_terminated = true)]
+delegate string[] FooFunc ();
+
+[CCode (array_length = false, array_null_terminated = true)]
+string[] foo () {
+       return {"foo", "bar"};
+}
+
+void main () {
+       FooFunc f = foo;
+
+       {
+               var s = f ();
+               assert (s.length == 2);
+               assert (s[1] == "bar");
+       }
+}