aboutsummaryrefslogtreecommitdiffstats
path: root/tests/testimplicitconversions.cpp
diff options
context:
space:
mode:
authorMarcelo Lira <marcelo.lira@openbossa.org>2010-03-26 15:46:08 -0300
committerHugo Parente Lima <hugo.pl@gmail.com>2012-03-09 19:09:58 -0300
commit4b275c5317256b66596ed289332f1df4d372b9e5 (patch)
tree62e212174410387e10942e8d54c1ca6212e34a03 /tests/testimplicitconversions.cpp
parent02f68822d7cfa18d44d484ea156618701601c3e2 (diff)
Tests if added constructor with custom type creates an implicit converter.
Diffstat (limited to 'tests/testimplicitconversions.cpp')
-rw-r--r--tests/testimplicitconversions.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/tests/testimplicitconversions.cpp b/tests/testimplicitconversions.cpp
index fd927db0b..86032acaf 100644
--- a/tests/testimplicitconversions.cpp
+++ b/tests/testimplicitconversions.cpp
@@ -105,15 +105,23 @@ void TestImplicitConversions::testWithAddedCtor()
<value-type name=\"A\">\
<add-function signature='A(const C&amp;)' />\
</value-type>\
- <value-type name=\"B\"/>\
+ <value-type name=\"B\">\
+ <add-function signature='B(TARGETLANGTYPE*)' />\
+ </value-type>\
<value-type name=\"C\"/>\
</typesystem>";
TestUtil t(cppCode, xmlCode);
AbstractMetaClassList classes = t.builder()->classes();
QCOMPARE(classes.count(), 3);
+
AbstractMetaClass* classA = classes.findClass("A");
AbstractMetaFunctionList implicitConvs = classA->implicitConversions();
QCOMPARE(implicitConvs.count(), 2);
+
+ // Added constructors with custom types should never result in implicit converters.
+ AbstractMetaClass* classB = classes.findClass("B");
+ implicitConvs = classB->implicitConversions();
+ QCOMPARE(implicitConvs.count(), 0);
}
void TestImplicitConversions::testWithExternalConversionOperator()