[vala/0.48] tests: Add "enum typed property" tests to increase coverage



commit e54675e67132abeb59d3116bf464f8e0713edb41
Author: Rico Tzschichholz <ricotz ubuntu com>
Date:   Thu Aug 6 22:29:35 2020 +0200

    tests: Add "enum typed property" tests to increase coverage

 tests/Makefile.am                |  1 +
 tests/objects/property-enum.vala | 62 ++++++++++++++++++++++++++++++++++++++++
 2 files changed, 63 insertions(+)
---
diff --git a/tests/Makefile.am b/tests/Makefile.am
index c5c8fc3de..9f91e6478 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -416,6 +416,7 @@ TESTS = \
        objects/property-array.vala \
        objects/property-array-length.vala \
        objects/property-base-access.vala \
+       objects/property-enum.vala \
        objects/property-notify.vala \
        objects/property-ownership.vala \
        objects/property-read-only-auto.vala \
diff --git a/tests/objects/property-enum.vala b/tests/objects/property-enum.vala
new file mode 100644
index 000000000..df7aeabe6
--- /dev/null
+++ b/tests/objects/property-enum.vala
@@ -0,0 +1,62 @@
+public enum FooEnum {
+       VALUE1,
+       VALUE2;
+}
+
+[Flags]
+public enum FooFlag {
+       VALUE1,
+       VALUE2;
+}
+
+[CCode (has_type_id = false)]
+public enum BarEnum {
+       VALUE1,
+       VALUE2;
+}
+
+[Flags]
+[CCode (has_type_id = false)]
+public enum BarFlag {
+       VALUE1,
+       VALUE2;
+}
+
+public class Manam {
+       public FooEnum prop1 { get; set; }
+       public FooFlag prop2 { get; set; }
+       public BarEnum prop3 { get; set; }
+       public BarFlag prop4 { get; set; }
+}
+
+public class Minim : Object {
+       public FooEnum prop1 { get; set; }
+       public FooFlag prop2 { get; set; }
+       public BarEnum prop3 { get; set; }
+       public BarFlag prop4 { get; set; }
+}
+
+void main () {
+       {
+               var manam = new Manam ();
+               manam.prop1 = FooEnum.VALUE2;
+               assert (manam.prop1 == FooEnum.VALUE2);
+               manam.prop2 = FooFlag.VALUE2;
+               assert (manam.prop2 == FooFlag.VALUE2);
+               manam.prop3 = BarEnum.VALUE2;
+               assert (manam.prop3 == BarEnum.VALUE2);
+               manam.prop4 = BarFlag.VALUE2;
+               assert (manam.prop4 == BarFlag.VALUE2);
+       }
+       {
+               var minim = new Minim ();
+               minim.prop1 = FooEnum.VALUE2;
+               assert (minim.prop1 == FooEnum.VALUE2);
+               minim.prop2 = FooFlag.VALUE2;
+               assert (minim.prop2 == FooFlag.VALUE2);
+               minim.prop3 = BarEnum.VALUE2;
+               assert (minim.prop3 == BarEnum.VALUE2);
+               minim.prop4 = BarFlag.VALUE2;
+               assert (minim.prop4 == BarFlag.VALUE2);
+       }
+}


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]