summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRico Tzschichholz <ricotz@ubuntu.com>2018-11-28 17:48:55 +0100
committerRico Tzschichholz <ricotz@ubuntu.com>2018-12-06 18:25:16 +0100
commit34dd7196b23c78ef9d480118f4b77a85067d3b7d (patch)
tree4aa407b97855d916ce5c1bfebf2dc18ab5c99a8f
parenta1a8b2be2060e2425558bcf227e58e260a9484b5 (diff)
downloadvala-34dd7196b23c78ef9d480118f4b77a85067d3b7d.tar.gz
tests: Add "subtype cycle" tests to increase coverage
-rw-r--r--tests/Makefile.am3
-rw-r--r--tests/resolver/class-base-cycle.test10
-rw-r--r--tests/resolver/interface-prerequisite-cycle.test10
-rw-r--r--tests/resolver/struct-base-cycle.test10
4 files changed, 33 insertions, 0 deletions
diff --git a/tests/Makefile.am b/tests/Makefile.am
index d903bf400..6f276d659 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -518,6 +518,9 @@ TESTS = \
parser/yield-return.vala \
parser/bug728574.vala \
parser/bug749576.vala \
+ resolver/class-base-cycle.test \
+ resolver/interface-prerequisite-cycle.test \
+ resolver/struct-base-cycle.test \
semantic/array-stacked.test \
semantic/array-incompatible-initializer.test \
semantic/array-incompatible-initializer2.test \
diff --git a/tests/resolver/class-base-cycle.test b/tests/resolver/class-base-cycle.test
new file mode 100644
index 000000000..5951253fc
--- /dev/null
+++ b/tests/resolver/class-base-cycle.test
@@ -0,0 +1,10 @@
+Invalid Code
+
+class Bar : Foo {
+}
+
+class Foo : Bar {
+}
+
+void main () {
+}
diff --git a/tests/resolver/interface-prerequisite-cycle.test b/tests/resolver/interface-prerequisite-cycle.test
new file mode 100644
index 000000000..585c7db5c
--- /dev/null
+++ b/tests/resolver/interface-prerequisite-cycle.test
@@ -0,0 +1,10 @@
+Invalid Code
+
+interface IBar : IFoo {
+}
+
+interface IFoo : IBar {
+}
+
+void main () {
+}
diff --git a/tests/resolver/struct-base-cycle.test b/tests/resolver/struct-base-cycle.test
new file mode 100644
index 000000000..111c7d89f
--- /dev/null
+++ b/tests/resolver/struct-base-cycle.test
@@ -0,0 +1,10 @@
+Invalid Code
+
+struct Bar : Foo {
+}
+
+struct Foo : Bar {
+}
+
+void main () {
+}