// Copyright (C) 2016 The Qt Company Ltd. // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 #include "testvaluetypedefaultctortag.h" #include #include "testutil.h" #include #include void TestValueTypeDefaultCtorTag::testValueTypeDefaultCtorTagArgument() { const char cppCode[] = "\n\ struct A {\n\ A(int,int);\n\ };\n\ struct B {};\n\ "; const char xmlCode[] = "\n\ \n\ \n\ \n\ \n\ "; QScopedPointer builder(TestUtil::parse(cppCode, xmlCode, false)); QVERIFY(builder); AbstractMetaClassList classes = builder->classes(); const auto classA = AbstractMetaClass::findClass(classes, "A"); QVERIFY(classA); QVERIFY(classA->typeEntry()->hasDefaultConstructor()); QCOMPARE(classA->typeEntry()->defaultConstructor(), u"A(0, 0)"); const auto classB = AbstractMetaClass::findClass(classes, "B"); QVERIFY(classB); QVERIFY(!classB->typeEntry()->hasDefaultConstructor()); } QTEST_APPLESS_MAIN(TestValueTypeDefaultCtorTag)