aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/GenerateSipBindings/cpplib.cpp5
-rw-r--r--tests/GenerateSipBindings/cpplib.h7
-rw-r--r--tests/GenerateSipBindings/rules_SipTest.py6
3 files changed, 18 insertions, 0 deletions
diff --git a/tests/GenerateSipBindings/cpplib.cpp b/tests/GenerateSipBindings/cpplib.cpp
index 744914a0..8dc7492b 100644
--- a/tests/GenerateSipBindings/cpplib.cpp
+++ b/tests/GenerateSipBindings/cpplib.cpp
@@ -173,3 +173,8 @@ void TypedefUser::setTagPattern(const QString &tagName,
{
}
+
+Shared::Shared(const Shared& other)
+{
+
+}
diff --git a/tests/GenerateSipBindings/cpplib.h b/tests/GenerateSipBindings/cpplib.h
index 34167ad3..9b9adcba 100644
--- a/tests/GenerateSipBindings/cpplib.h
+++ b/tests/GenerateSipBindings/cpplib.h
@@ -6,6 +6,7 @@
#include <QtCore/QStringList>
#include <QtCore/QMap>
#include <QtCore/QCoreApplication>
+#include <QtCore/QSharedData>
#include <functional>
@@ -106,6 +107,12 @@ private:
HasPrivateDefaultCtor(int param = 0);
};
+class Shared : public QSharedData
+{
+public:
+ Shared(const Shared& other);
+};
+
namespace SomeNS {
class NonCopyableInNS
diff --git a/tests/GenerateSipBindings/rules_SipTest.py b/tests/GenerateSipBindings/rules_SipTest.py
index 73c5451b..ad3fcb64 100644
--- a/tests/GenerateSipBindings/rules_SipTest.py
+++ b/tests/GenerateSipBindings/rules_SipTest.py
@@ -5,6 +5,11 @@ import rules_engine
sys.path.append(os.path.dirname(os.path.dirname(rules_engine.__file__)))
import Qt5Ruleset
+def local_container_rules():
+ return [
+ [".*", "Shared", ".*", ".*", ".*", rules_engine.discard_QSharedData_base]
+ ]
+
def local_function_rules():
return [
["MyObject", "fwdDecl", ".*", ".*", ".*", rules_engine.function_discard],
@@ -28,6 +33,7 @@ def methodGenerator(function, sip, entry):
class RuleSet(Qt5Ruleset.RuleSet):
def __init__(self):
Qt5Ruleset.RuleSet.__init__(self)
+ self._container_db = rules_engine.ContainerRuleDb(lambda: local_container_rules() + Qt5Ruleset.container_rules())
self._fn_db = rules_engine.FunctionRuleDb(lambda: local_function_rules() + Qt5Ruleset.function_rules())
self._typedef_db = rules_engine.TypedefRuleDb(lambda: local_typedef_rules() + Qt5Ruleset.typedef_rules())
self._modulecode = rules_engine.ModuleCodeDb({