aboutsummaryrefslogtreecommitdiffstats
path: root/sources/shiboken2/tests
diff options
context:
space:
mode:
Diffstat (limited to 'sources/shiboken2/tests')
-rw-r--r--sources/shiboken2/tests/libsample/objecttype.h6
-rw-r--r--sources/shiboken2/tests/samplebinding/enum_test.py5
-rw-r--r--sources/shiboken2/tests/samplebinding/typesystem_sample.xml1
3 files changed, 12 insertions, 0 deletions
diff --git a/sources/shiboken2/tests/libsample/objecttype.h b/sources/shiboken2/tests/libsample/objecttype.h
index 752659488..91fb45515 100644
--- a/sources/shiboken2/tests/libsample/objecttype.h
+++ b/sources/shiboken2/tests/libsample/objecttype.h
@@ -45,6 +45,12 @@ struct Event
SOME_EVENT,
ANY_EVENT
};
+
+ enum class EventTypeClass {
+ Value1,
+ Value2
+ };
+
Event(EventType eventType) : m_eventType(eventType) {}
EventType eventType() { return m_eventType; }
private:
diff --git a/sources/shiboken2/tests/samplebinding/enum_test.py b/sources/shiboken2/tests/samplebinding/enum_test.py
index 6468d3cc4..711215c35 100644
--- a/sources/shiboken2/tests/samplebinding/enum_test.py
+++ b/sources/shiboken2/tests/samplebinding/enum_test.py
@@ -110,6 +110,11 @@ class EnumTest(unittest.TestCase):
self.assertEqual(SampleNamespace.AnonymousClassEnum_Value0, 0)
self.assertEqual(SampleNamespace.AnonymousClassEnum_Value1, 1)
+ def testEnumClasses(self):
+ # C++ 11: values of enum classes need to be fully qualified to match C++
+ sum = Event.EventTypeClass.Value1 + Event.EventTypeClass.Value2
+ self.assertEqual(sum, 1)
+
def testEnumTpPrintImplementation(self):
'''Without SbkEnum.tp_print 'print' returns the enum represented as an int.'''
tmpfile = createTempFile()
diff --git a/sources/shiboken2/tests/samplebinding/typesystem_sample.xml b/sources/shiboken2/tests/samplebinding/typesystem_sample.xml
index ffb5c976f..5a12eeccd 100644
--- a/sources/shiboken2/tests/samplebinding/typesystem_sample.xml
+++ b/sources/shiboken2/tests/samplebinding/typesystem_sample.xml
@@ -798,6 +798,7 @@
<value-type name="Event">
<enum-type name="EventType"/>
+ <enum-type name="EventTypeClass" class="yes"/>
</value-type>
<value-type name="BlackBox">