summaryrefslogtreecommitdiff
path: root/idlc
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2013-11-22 17:06:18 +0100
committerStephan Bergmann <sbergman@redhat.com>2013-11-22 18:58:19 +0100
commit87dc22287604a702b584cd8a9272870421b8b6d1 (patch)
tree40b30ff7483db3f3686aa849638360eeaa78f4c6 /idlc
parent75144495ee77a41e5a94d9e21b7f6aaf16a80b4f (diff)
Fix unoidl sourceprovider "published" checks
Change-Id: I93b9fcc2b20ed7a7c160a9ef3294b6e578678f53
Diffstat (limited to 'idlc')
-rw-r--r--idlc/test/parser/published.tests43
1 files changed, 43 insertions, 0 deletions
diff --git a/idlc/test/parser/published.tests b/idlc/test/parser/published.tests
index e19a0f00acf2..f81ef6b41254 100644
--- a/idlc/test/parser/published.tests
+++ b/idlc/test/parser/published.tests
@@ -636,3 +636,46 @@ singleton S: I1;
EXPECT SUCCESS "published.tests 118":
published interface I1 {};
published singleton S: I1;
+
+
+EXPECT FAILURE "published.tests 119":
+interface I1 {};
+published interface I2 { [optional] interface I1; };
+
+
+EXPECT FAILURE "published.tests 120":
+service S1 {};
+published service S2 { [optional] service S1; };
+
+
+EXPECT SUCCESS "published.tests 121":
+interface I {};
+published service S { [optional] interface I; };
+
+
+EXPECT FAILURE "published.tests 122":
+interface I {};
+published service S { [optional, property] I p; };
+
+
+EXPECT FAILURE "published.tests 123":
+interface I {};
+published service S { [optional, property] sequence<I> p; };
+
+
+EXPECT FAILURE "published.tests 124":
+struct P<T> { T m; };
+interface I {};
+published service S { [optional, property] P<I> p; };
+
+
+EXPECT FAILURE "published.tests 125":
+published struct P<T> { T m; };
+interface I {};
+published service S { [optional, property] P<I> p; };
+
+
+EXPECT FAILURE "published.tests 126":
+struct P<T> { T m; };
+published interface I {};
+published service S { [optional, property] P<I> p; };