diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2020-11-27 17:11:47 +0100 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2020-11-30 15:53:54 +0000 |
commit | 30cdcd7b8e7f70bf6b64450ca622dd4494e3a0ea (patch) | |
tree | 044002feaeb24281e9000648a1342073701ee29c /sources/shiboken6/ApiExtractor/tests | |
parent | f4fd97655f20e2ce4d24704056b7a7a9ab9db355 (diff) |
shiboken6: Store AbstractMetaFunction using a QSharedPointer
Store the list functions (global / class member) as a
QList<QSharedPointer<const AbstractMetaFunction> instead of a raw
pointer list. This makes passing around function lists easier and
solves the memory leaks caused by mixing cloned and unmodified
functions while collecting the overload lists in the generators.
- Change the function signatures accordingly
- Add a qSharedPointerConstCast() for non-const access.
- Restructure the traversing of added functions
in the AbstractMetaBuilder
- Remove some unused typedefs and functions unearthed by
the change
Change-Id: I08a6c5243750e3eb3813bc3f7172899ad2b13e22
Reviewed-by: Christian Tismer <tismer@stackless.com>
Diffstat (limited to 'sources/shiboken6/ApiExtractor/tests')
21 files changed, 154 insertions, 154 deletions
diff --git a/sources/shiboken6/ApiExtractor/tests/testabstractmetaclass.cpp b/sources/shiboken6/ApiExtractor/tests/testabstractmetaclass.cpp index 8e715866e..1fd77a01c 100644 --- a/sources/shiboken6/ApiExtractor/tests/testabstractmetaclass.cpp +++ b/sources/shiboken6/ApiExtractor/tests/testabstractmetaclass.cpp @@ -70,7 +70,7 @@ void TestAbstractMetaClass::testClassNameUnderNamespace() QVERIFY(classes[0]->hasConstructors()); QCOMPARE(classes[0]->functions().size(), 2); // default ctor + copy ctor - AbstractMetaFunctionList ctors = classes[0]->queryFunctions(AbstractMetaClass::Constructors); + auto ctors = classes[0]->queryFunctions(AbstractMetaClass::Constructors); QCOMPARE(ctors.size(), 2); if (ctors.constFirst()->minimalSignature() != QLatin1String("ClassName()")) qSwap(ctors[0], ctors[1]); @@ -88,11 +88,11 @@ void TestAbstractMetaClass::testClassNameUnderNamespace() // QVERIFY(classes[0]->hasNonPrivateConstructor()); } -static AbstractMetaFunctionList virtualFunctions(const AbstractMetaClass *c) +static AbstractMetaFunctionCList virtualFunctions(const AbstractMetaClass *c) { - AbstractMetaFunctionList result; - const AbstractMetaFunctionList &functions = c->functions(); - for (AbstractMetaFunction *f : functions) { + AbstractMetaFunctionCList result; + const auto &functions = c->functions(); + for (const auto &f : functions) { if (f->isVirtual()) result.append(f); } @@ -150,9 +150,9 @@ public: QVERIFY(f->attributes() & AbstractMetaAttributes::FinalCppClass); // implementing class, ownclass, declaringclass - AbstractMetaFunction *ctorA = a->queryFunctions(AbstractMetaClass::Constructors).constFirst(); - AbstractMetaFunction *ctorB = b->queryFunctions(AbstractMetaClass::Constructors).constFirst(); - AbstractMetaFunction *ctorC = c->queryFunctions(AbstractMetaClass::Constructors).constFirst(); + const auto ctorA = a->queryFunctions(AbstractMetaClass::Constructors).constFirst(); + const auto ctorB = b->queryFunctions(AbstractMetaClass::Constructors).constFirst(); + const auto ctorC = c->queryFunctions(AbstractMetaClass::Constructors).constFirst(); QVERIFY(ctorA->isConstructor()); QVERIFY(!ctorA->isVirtual()); QVERIFY(ctorB->isConstructor()); @@ -163,19 +163,19 @@ public: QCOMPARE(ctorA->ownerClass(), a); QCOMPARE(ctorA->declaringClass(), a); - const AbstractMetaFunctionList virtualFunctionsA = virtualFunctions(a); - const AbstractMetaFunctionList virtualFunctionsB = virtualFunctions(b); - const AbstractMetaFunctionList virtualFunctionsC = virtualFunctions(c); - const AbstractMetaFunctionList virtualFunctionsF = virtualFunctions(f); + const auto virtualFunctionsA = virtualFunctions(a); + const auto virtualFunctionsB = virtualFunctions(b); + const auto virtualFunctionsC = virtualFunctions(c); + const auto virtualFunctionsF = virtualFunctions(f); QCOMPARE(virtualFunctionsA.size(), 1); // Add a pureVirtualMethods method !? QCOMPARE(virtualFunctionsB.size(), 1); QCOMPARE(virtualFunctionsC.size(), 1); QCOMPARE(virtualFunctionsF.size(), 1); - const AbstractMetaFunction* funcA = virtualFunctionsA.constFirst(); - const AbstractMetaFunction* funcB = virtualFunctionsB.constFirst(); - const AbstractMetaFunction* funcC = virtualFunctionsC.constFirst(); - const AbstractMetaFunction* funcF = virtualFunctionsF.constFirst(); + const auto funcA = virtualFunctionsA.constFirst(); + const auto funcB = virtualFunctionsB.constFirst(); + const auto funcC = virtualFunctionsC.constFirst(); + const auto funcF = virtualFunctionsF.constFirst(); QCOMPARE(funcA->ownerClass(), a); QVERIFY(funcC->attributes() & AbstractMetaAttributes::VirtualCppMethod); @@ -242,7 +242,7 @@ void TestAbstractMetaClass::testDefaultValues() QCOMPARE(classes.count(), 2); AbstractMetaClass* classA = AbstractMetaClass::findClass(classes, QLatin1String("A")); QCOMPARE(classA->queryFunctionsByName(QLatin1String("method")).count(), 1); - AbstractMetaFunction* method = classA->queryFunctionsByName(QLatin1String("method")).constFirst(); + const auto method = classA->queryFunctionsByName(QLatin1String("method")).constFirst(); const AbstractMetaArgument &arg = method->arguments().constFirst(); QCOMPARE(arg.defaultValueExpression(), arg.originalDefaultValueExpression()); } @@ -270,8 +270,9 @@ void TestAbstractMetaClass::testModifiedDefaultValues() AbstractMetaClassList classes = builder->classes(); QCOMPARE(classes.count(), 2); AbstractMetaClass* classA = AbstractMetaClass::findClass(classes, QLatin1String("A")); - QCOMPARE(classA->queryFunctionsByName(QLatin1String("method")).count(), 1); - AbstractMetaFunction *method = classA->queryFunctionsByName(QLatin1String("method")).constFirst(); + const auto methodMatches = classA->queryFunctionsByName(QLatin1String("method")); + QCOMPARE(methodMatches.count(), 1); + const auto method = methodMatches.constFirst(); const AbstractMetaArgument &arg = method->arguments().constFirst(); QCOMPARE(arg.defaultValueExpression(), QLatin1String("Hello")); QCOMPARE(arg.originalDefaultValueExpression(), QLatin1String("A::B()")); @@ -326,8 +327,8 @@ void TestAbstractMetaClass::testForwardDeclaredInnerClass() QVERIFY(classA); const AbstractMetaClass *classB = AbstractMetaClass::findClass(classes, QLatin1String("A::B")); QVERIFY(classB); - const AbstractMetaFunction *fooF = classB->findFunction(QLatin1String("foo")); - QVERIFY(fooF); + const auto fooF = classB->findFunction(QLatin1String("foo")); + QVERIFY(!fooF.isNull()); } void TestAbstractMetaClass::testSpecialFunctions() @@ -356,11 +357,11 @@ void TestAbstractMetaClass::testSpecialFunctions() const AbstractMetaClass *classA = AbstractMetaClass::findClass(classes, QLatin1String("A")); QVERIFY(classA); - AbstractMetaFunctionList ctors = classA->queryFunctions(AbstractMetaClass::Constructors); + auto ctors = classA->queryFunctions(AbstractMetaClass::Constructors); QCOMPARE(ctors.size(), 2); QCOMPARE(ctors.constFirst()->functionType(), AbstractMetaFunction::ConstructorFunction); QCOMPARE(ctors.at(1)->functionType(), AbstractMetaFunction::CopyConstructorFunction); - AbstractMetaFunctionList assigmentOps = classA->queryFunctionsByName(QLatin1String("operator=")); + auto assigmentOps = classA->queryFunctionsByName(QLatin1String("operator=")); QCOMPARE(assigmentOps.size(), 1); QCOMPARE(assigmentOps.constFirst()->functionType(), AbstractMetaFunction::AssignmentOperatorFunction); @@ -424,7 +425,7 @@ void TestAbstractMetaClass::testClassDefaultConstructors() QVERIFY(classA); QCOMPARE(classA->functions().size(), 2); - AbstractMetaFunctionList ctors = classA->queryFunctions(AbstractMetaClass::Constructors); + auto ctors = classA->queryFunctions(AbstractMetaClass::Constructors); QCOMPARE(ctors.size(), 2); if (ctors.constFirst()->minimalSignature() != QLatin1String("A()")) qSwap(ctors[0], ctors[1]); @@ -491,7 +492,7 @@ void TestAbstractMetaClass::testClassInheritedDefaultConstructors() AbstractMetaClass* classA = AbstractMetaClass::findClass(classes, QLatin1String("A")); QVERIFY(classA); - AbstractMetaFunctionList ctors = classA->queryFunctions(AbstractMetaClass::Constructors); + auto ctors = classA->queryFunctions(AbstractMetaClass::Constructors); QCOMPARE(ctors.size(), 2); if (ctors.constFirst()->minimalSignature() != QLatin1String("A()")) qSwap(ctors[0], ctors[1]); @@ -529,7 +530,7 @@ void TestAbstractMetaClass::testAbstractClassDefaultConstructors() AbstractMetaClass* classA = AbstractMetaClass::findClass(classes, QLatin1String("A")); QVERIFY(classA); - AbstractMetaFunctionList ctors = classA->queryFunctions(AbstractMetaClass::Constructors); + const auto ctors = classA->queryFunctions(AbstractMetaClass::Constructors); QCOMPARE(ctors.size(), 1); QCOMPARE(ctors.constFirst()->arguments().size(), 0); QCOMPARE(ctors.constFirst()->minimalSignature(), QLatin1String("A()")); @@ -550,7 +551,7 @@ void TestAbstractMetaClass::testObjectTypesMustNotHaveCopyConstructors() AbstractMetaClass* classA = AbstractMetaClass::findClass(classes, QLatin1String("A")); QVERIFY(classA); - AbstractMetaFunctionList ctors = classA->queryFunctions(AbstractMetaClass::Constructors); + const auto ctors = classA->queryFunctions(AbstractMetaClass::Constructors); QCOMPARE(ctors.size(), 1); QCOMPARE(ctors.constFirst()->arguments().size(), 0); QCOMPARE(ctors.constFirst()->minimalSignature(), QLatin1String("A()")); diff --git a/sources/shiboken6/ApiExtractor/tests/testabstractmetatype.cpp b/sources/shiboken6/ApiExtractor/tests/testabstractmetatype.cpp index e65b0f214..897940cd5 100644 --- a/sources/shiboken6/ApiExtractor/tests/testabstractmetatype.cpp +++ b/sources/shiboken6/ApiExtractor/tests/testabstractmetatype.cpp @@ -74,7 +74,7 @@ void TestAbstractMetaType::testConstCharPtrType() QScopedPointer<AbstractMetaBuilder> builder(TestUtil::parse(cppCode, xmlCode)); QVERIFY(!builder.isNull()); QCOMPARE(builder->globalFunctions().size(), 1); - AbstractMetaFunction *func = builder->globalFunctions().constFirst(); + const auto func = builder->globalFunctions().constFirst(); AbstractMetaType rtype = func->type(); // Test properties of const char* QVERIFY(!rtype.isVoid()); @@ -111,8 +111,7 @@ void TestAbstractMetaType::testApiVersionSupported() QCOMPARE(classes.size(), 2); - AbstractMetaFunctionList functions = builder->globalFunctions(); - QCOMPARE(functions.size(), 2); + QCOMPARE(builder->globalFunctions().size(), 2); } @@ -145,9 +144,9 @@ void TestAbstractMetaType::testCharType() QCOMPARE(classes.size(), 1); QCOMPARE(classes.constFirst()->package(), QLatin1String("Foo")); - AbstractMetaFunctionList functions = builder->globalFunctions(); + const auto functions = builder->globalFunctions(); QCOMPARE(functions.size(), 1); - AbstractMetaFunction *func = functions.constFirst(); + const auto func = functions.constFirst(); AbstractMetaType rtype = func->type(); // Test properties of const char* QVERIFY(!rtype.isVoid()); @@ -205,9 +204,9 @@ void TestAbstractMetaType::testTypedefWithTemplates() AbstractMetaClassList classes = builder->classes(); QCOMPARE(classes.size(), 1); - AbstractMetaFunctionList functions = builder->globalFunctions(); + const auto functions = builder->globalFunctions(); QCOMPARE(functions.count(), 1); - AbstractMetaFunction *function = functions.constFirst(); + const auto function = functions.constFirst(); AbstractMetaArgumentList args = function->arguments(); QCOMPARE(args.count(), 1); const AbstractMetaArgument &arg = args.constFirst(); @@ -232,9 +231,9 @@ void TestAbstractMetaType::testObjectTypeUsedAsValue() QCOMPARE(classes.size(), 1); const AbstractMetaClass *classA = AbstractMetaClass::findClass(classes, QLatin1String("A")); QVERIFY(classA); - AbstractMetaFunctionList overloads = classA->queryFunctionsByName(QLatin1String("method")); + const auto overloads = classA->queryFunctionsByName(QLatin1String("method")); QCOMPARE(overloads.count(), 1); - AbstractMetaFunction* method = overloads.constFirst(); + const auto method = overloads.constFirst(); QVERIFY(method); AbstractMetaArgumentList args = method->arguments(); QCOMPARE(args.count(), 1); diff --git a/sources/shiboken6/ApiExtractor/tests/testaddfunction.cpp b/sources/shiboken6/ApiExtractor/tests/testaddfunction.cpp index 83720b8cb..7a52b9b33 100644 --- a/sources/shiboken6/ApiExtractor/tests/testaddfunction.cpp +++ b/sources/shiboken6/ApiExtractor/tests/testaddfunction.cpp @@ -166,7 +166,7 @@ void TestAddFunction::testAddFunctionConstructor() const AbstractMetaClass *classA = AbstractMetaClass::findClass(classes, QLatin1String("A")); QVERIFY(classA); QCOMPARE(classA->functions().count(), 3); // default and added ctors - AbstractMetaFunction *addedFunc = classA->functions().constLast(); + const auto addedFunc = classA->functions().constLast(); QCOMPARE(addedFunc->visibility(), AbstractMetaFunction::Public); QCOMPARE(addedFunc->functionType(), AbstractMetaFunction::ConstructorFunction); QCOMPARE(addedFunc->arguments().size(), 1); @@ -189,7 +189,7 @@ void TestAddFunction::testAddFunctionTagDefaultValues() const AbstractMetaClass *classA = AbstractMetaClass::findClass(classes, QLatin1String("A")); QVERIFY(classA); QCOMPARE(classA->functions().count(), 3); // default ctor, default copy ctor and the added function - AbstractMetaFunction *addedFunc = classA->functions().constLast(); + const auto addedFunc = classA->functions().constLast(); QCOMPARE(addedFunc->visibility(), AbstractMetaFunction::Public); QCOMPARE(addedFunc->functionType(), AbstractMetaFunction::NormalFunction); QVERIFY(addedFunc->isUserAdded()); @@ -213,7 +213,7 @@ void TestAddFunction::testAddFunctionCodeSnippets() AbstractMetaClassList classes = builder->classes(); const AbstractMetaClass *classA = AbstractMetaClass::findClass(classes, QLatin1String("A")); QVERIFY(classA); - AbstractMetaFunction *addedFunc = classA->functions().constLast(); + const auto addedFunc = classA->functions().constLast(); QVERIFY(addedFunc->hasInjectedCode()); } @@ -243,8 +243,8 @@ void TestAddFunction::testAddFunctionWithoutParenteses() AbstractMetaClassList classes = builder->classes(); const AbstractMetaClass *classA = AbstractMetaClass::findClass(classes, QLatin1String("A")); QVERIFY(classA); - const AbstractMetaFunction* addedFunc = classA->findFunction(QLatin1String("func")); - QVERIFY(addedFunc); + const auto addedFunc = classA->findFunction(QLatin1String("func")); + QVERIFY(!addedFunc.isNull()); QVERIFY(addedFunc->hasInjectedCode()); QCOMPARE(addedFunc->injectedCodeSnips(TypeSystem::CodeSnipPositionAny, TypeSystem::TargetLangCode).count(), 1); } @@ -278,8 +278,8 @@ void TestAddFunction::testAddFunctionWithDefaultArgs() AbstractMetaClassList classes = builder->classes(); const AbstractMetaClass *classA = AbstractMetaClass::findClass(classes, QLatin1String("A")); QVERIFY(classA); - const AbstractMetaFunction* addedFunc = classA->findFunction(QLatin1String("func")); - QVERIFY(addedFunc); + const auto addedFunc = classA->findFunction(QLatin1String("func")); + QVERIFY(!addedFunc.isNull()); const AbstractMetaArgument &arg = addedFunc->arguments().at(1); QCOMPARE(arg.defaultValueExpression(), QLatin1String("2")); } @@ -342,8 +342,8 @@ void TestAddFunction::testAddFunctionWithVarargs() AbstractMetaClassList classes = builder->classes(); const AbstractMetaClass *classA = AbstractMetaClass::findClass(classes, QLatin1String("A")); QVERIFY(classA); - const AbstractMetaFunction* addedFunc = classA->findFunction(QLatin1String("func")); - QVERIFY(addedFunc); + const auto addedFunc = classA->findFunction(QLatin1String("func")); + QVERIFY(!addedFunc.isNull()); const AbstractMetaArgument &arg = addedFunc->arguments().constLast(); QVERIFY(arg.type().isVarargs()); QVERIFY(arg.type().typeEntry()->isVarargs()); @@ -366,8 +366,8 @@ void TestAddFunction::testAddStaticFunction() AbstractMetaClassList classes = builder->classes(); const AbstractMetaClass *classA = AbstractMetaClass::findClass(classes, QLatin1String("A")); QVERIFY(classA); - const AbstractMetaFunction* addedFunc = classA->findFunction(QLatin1String("func")); - QVERIFY(addedFunc); + const auto addedFunc = classA->findFunction(QLatin1String("func")); + QVERIFY(!addedFunc.isNull()); QVERIFY(addedFunc->isStatic()); } @@ -388,7 +388,7 @@ void TestAddFunction::testAddGlobalFunction() </typesystem>\n"; QScopedPointer<AbstractMetaBuilder> builder(TestUtil::parse(cppCode, xmlCode)); QVERIFY(!builder.isNull()); - AbstractMetaFunctionList globalFuncs = builder->globalFunctions(); + const auto globalFuncs = builder->globalFunctions(); QCOMPARE(globalFuncs.count(), 2); const AbstractMetaClass *classB = AbstractMetaClass::findClass(builder->classes(), QLatin1String("B")); QVERIFY(classB); @@ -414,7 +414,7 @@ void TestAddFunction::testAddFunctionWithApiVersion() QScopedPointer<AbstractMetaBuilder> builder(TestUtil::parse(cppCode, xmlCode, true, QLatin1String("0.1"))); QVERIFY(!builder.isNull()); - AbstractMetaFunctionList globalFuncs = builder->globalFunctions(); + const auto globalFuncs = builder->globalFunctions(); QCOMPARE(globalFuncs.count(), 1); } @@ -439,7 +439,8 @@ void TestAddFunction::testModifyAddedFunction() QVERIFY(!builder.isNull()); AbstractMetaClassList classes = builder->classes(); AbstractMetaClass* foo = AbstractMetaClass::findClass(classes, QLatin1String("Foo")); - const AbstractMetaFunction* method = foo->findFunction(QLatin1String("method")); + const auto method = foo->findFunction(QLatin1String("method")); + QVERIFY(!method.isNull()); QCOMPARE(method->arguments().size(), 2); const AbstractMetaArgument &arg = method->arguments().at(1); QCOMPARE(arg.defaultValueExpression(), QLatin1String("0")); @@ -469,12 +470,12 @@ void TestAddFunction::testAddFunctionOnTypedef() AbstractMetaClass* foo = AbstractMetaClass::findClass(classes, QLatin1String("FooInt")); QVERIFY(foo); QVERIFY(foo->hasNonPrivateConstructor()); - const AbstractMetaFunctionList &lst = foo->queryFunctions(AbstractMetaClass::Constructors); - for (const AbstractMetaFunction *f : lst) + const auto &lst = foo->queryFunctions(AbstractMetaClass::Constructors); + for (const auto &f : lst) QVERIFY(f->signature().startsWith(f->name())); QCOMPARE(lst.size(), 2); - const AbstractMetaFunction* method = foo->findFunction(QLatin1String("method")); - QVERIFY(method); + const auto method = foo->findFunction(QLatin1String("method")); + QVERIFY(!method.isNull()); } void TestAddFunction::testAddFunctionWithTemplateArg() @@ -490,7 +491,7 @@ void TestAddFunction::testAddFunctionWithTemplateArg() QScopedPointer<AbstractMetaBuilder> builder(TestUtil::parse(cppCode, xmlCode)); QVERIFY(!builder.isNull()); QCOMPARE(builder->globalFunctions().size(), 1); - AbstractMetaFunction *func = builder->globalFunctions().constFirst(); + const auto func = builder->globalFunctions().constFirst(); const AbstractMetaArgument &arg = func->arguments().constFirst(); QCOMPARE(arg.type().instantiations().count(), 1); } diff --git a/sources/shiboken6/ApiExtractor/tests/testarrayargument.cpp b/sources/shiboken6/ApiExtractor/tests/testarrayargument.cpp index df6280725..22cf7ab40 100644 --- a/sources/shiboken6/ApiExtractor/tests/testarrayargument.cpp +++ b/sources/shiboken6/ApiExtractor/tests/testarrayargument.cpp @@ -63,8 +63,8 @@ void TestArrayArgument::testArrayArgumentWithSizeDefinedByInteger() static QString functionMinimalSignature(const AbstractMetaClass *c, const QString &name) { - const AbstractMetaFunction *f = c->findFunction(name); - return f ? f->minimalSignature() : QString(); + const auto f = c->findFunction(name); + return f.isNull() ? QString() : f->minimalSignature(); } void TestArrayArgument::testArraySignature() diff --git a/sources/shiboken6/ApiExtractor/tests/testconversionoperator.cpp b/sources/shiboken6/ApiExtractor/tests/testconversionoperator.cpp index b9345ddbc..32071f533 100644 --- a/sources/shiboken6/ApiExtractor/tests/testconversionoperator.cpp +++ b/sources/shiboken6/ApiExtractor/tests/testconversionoperator.cpp @@ -65,14 +65,14 @@ void TestConversionOperator::testConversionOperator() QCOMPARE(classC->functions().count(), 3); QCOMPARE(classA->externalConversionOperators().count(), 2); - AbstractMetaFunction *convOp = nullptr; - for (AbstractMetaFunction *func : classB->functions()) { + AbstractMetaFunctionCPtr convOp; + for (const auto &func : classB->functions()) { if (func->isConversionOperator()) { convOp = func; break; } } - QVERIFY(convOp); + QVERIFY(!convOp.isNull()); QVERIFY(classA->externalConversionOperators().contains(convOp)); } diff --git a/sources/shiboken6/ApiExtractor/tests/testenum.cpp b/sources/shiboken6/ApiExtractor/tests/testenum.cpp index 710361b47..df744e994 100644 --- a/sources/shiboken6/ApiExtractor/tests/testenum.cpp +++ b/sources/shiboken6/ApiExtractor/tests/testenum.cpp @@ -64,7 +64,7 @@ void TestEnum::testEnumCppSignature() QCOMPARE(globalEnums.constFirst().name(), QLatin1String("GlobalEnum")); // enum as parameter of a function - AbstractMetaFunctionList functions = builder->globalFunctions(); + const auto functions = builder->globalFunctions(); QCOMPARE(functions.count(), 1); QCOMPARE(functions.constFirst()->arguments().count(), 1); QCOMPARE(functions.constFirst()->arguments().constFirst().type().cppSignature(), @@ -73,10 +73,9 @@ void TestEnum::testEnumCppSignature() // enum as parameter of a method const AbstractMetaClass *classA = AbstractMetaClass::findClass(classes, QLatin1String("A")); QCOMPARE(classA->enums().count(), 1); - AbstractMetaFunctionList funcs = classA->queryFunctionsByName(QLatin1String("method")); + const auto funcs = classA->queryFunctionsByName(QLatin1String("method")); QVERIFY(!funcs.isEmpty()); - AbstractMetaFunction *method = funcs.constFirst(); - QVERIFY(method); + const auto method = funcs.constFirst(); AbstractMetaArgument arg = method->arguments().constFirst(); QCOMPARE(arg.type().name(), QLatin1String("ClassEnum")); QCOMPARE(arg.type().cppSignature(), QLatin1String("A::ClassEnum")); diff --git a/sources/shiboken6/ApiExtractor/tests/testfunctiontag.cpp b/sources/shiboken6/ApiExtractor/tests/testfunctiontag.cpp index ba8f22706..f58ea6f64 100644 --- a/sources/shiboken6/ApiExtractor/tests/testfunctiontag.cpp +++ b/sources/shiboken6/ApiExtractor/tests/testfunctiontag.cpp @@ -82,7 +82,7 @@ void TestFunctionTag::testRenameGlobalFunction() QVERIFY(func); QCOMPARE(builder->globalFunctions().size(), 1); - const AbstractMetaFunction *metaFunc = builder->globalFunctions().constFirst(); + const auto metaFunc = builder->globalFunctions().constFirst(); QVERIFY(metaFunc); QCOMPARE(metaFunc->modifications().size(), 1); diff --git a/sources/shiboken6/ApiExtractor/tests/testimplicitconversions.cpp b/sources/shiboken6/ApiExtractor/tests/testimplicitconversions.cpp index ef9699cad..928122967 100644 --- a/sources/shiboken6/ApiExtractor/tests/testimplicitconversions.cpp +++ b/sources/shiboken6/ApiExtractor/tests/testimplicitconversions.cpp @@ -58,7 +58,7 @@ void TestImplicitConversions::testWithPrivateCtors() const AbstractMetaClass *classA = AbstractMetaClass::findClass(classes, QLatin1String("A")); const AbstractMetaClass *classC = AbstractMetaClass::findClass(classes, QLatin1String("C")); - AbstractMetaFunctionList implicitConvs = classA->implicitConversions(); + const auto implicitConvs = classA->implicitConversions(); QCOMPARE(implicitConvs.count(), 1); QCOMPARE(implicitConvs.constFirst()->arguments().constFirst().type().typeEntry(), classC->typeEntry()); @@ -88,7 +88,7 @@ void TestImplicitConversions::testWithModifiedVisibility() QCOMPARE(classes.count(), 2); const AbstractMetaClass *classA = AbstractMetaClass::findClass(classes, QLatin1String("A")); const AbstractMetaClass *classB = AbstractMetaClass::findClass(classes, QLatin1String("B")); - AbstractMetaFunctionList implicitConvs = classA->implicitConversions(); + const auto implicitConvs = classA->implicitConversions(); QCOMPARE(implicitConvs.count(), 1); QCOMPARE(implicitConvs.constFirst()->arguments().constFirst().type().typeEntry(), classB->typeEntry()); @@ -122,7 +122,7 @@ void TestImplicitConversions::testWithAddedCtor() QCOMPARE(classes.count(), 3); const AbstractMetaClass *classA = AbstractMetaClass::findClass(classes, QLatin1String("A")); - AbstractMetaFunctionList implicitConvs = classA->implicitConversions(); + auto implicitConvs = classA->implicitConversions(); QCOMPARE(implicitConvs.count(), 2); // Added constructors with custom types should never result in implicit converters. @@ -149,17 +149,17 @@ void TestImplicitConversions::testWithExternalConversionOperator() QCOMPARE(classes.count(), 2); AbstractMetaClass* classA = AbstractMetaClass::findClass(classes, QLatin1String("A")); AbstractMetaClass* classB = AbstractMetaClass::findClass(classes, QLatin1String("B")); - AbstractMetaFunctionList implicitConvs = classA->implicitConversions(); + const auto implicitConvs = classA->implicitConversions(); QCOMPARE(implicitConvs.count(), 1); - AbstractMetaFunctionList externalConvOps = classA->externalConversionOperators(); + const auto &externalConvOps = classA->externalConversionOperators(); QCOMPARE(externalConvOps.count(), 1); - const AbstractMetaFunction *convOp = nullptr; - for (const AbstractMetaFunction *func : classB->functions()) { + AbstractMetaFunctionCPtr convOp; + for (const auto &func : classB->functions()) { if (func->isConversionOperator()) convOp = func; } - QVERIFY(convOp); + QVERIFY(!convOp.isNull()); QCOMPARE(implicitConvs.constFirst(), convOp); } diff --git a/sources/shiboken6/ApiExtractor/tests/testmodifyfunction.cpp b/sources/shiboken6/ApiExtractor/tests/testmodifyfunction.cpp index 6928448b7..0fa07b75c 100644 --- a/sources/shiboken6/ApiExtractor/tests/testmodifyfunction.cpp +++ b/sources/shiboken6/ApiExtractor/tests/testmodifyfunction.cpp @@ -67,8 +67,8 @@ void TestModifyFunction::testRenameArgument() QVERIFY(!builder.isNull()); AbstractMetaClassList classes = builder->classes(); const AbstractMetaClass *classA = AbstractMetaClass::findClass(classes, QLatin1String("A")); - const AbstractMetaFunction* func = classA->findFunction(QLatin1String("method")); - Q_ASSERT(func); + const auto func = classA->findFunction(QLatin1String("method")); + QVERIFY(!func.isNull()); QCOMPARE(func->argumentName(1), QLatin1String("otherArg")); } @@ -95,7 +95,8 @@ void TestModifyFunction::testOwnershipTransfer() QVERIFY(!builder.isNull()); AbstractMetaClassList classes = builder->classes(); const AbstractMetaClass *classB = AbstractMetaClass::findClass(classes, QLatin1String("B")); - const AbstractMetaFunction* func = classB->findFunction(QLatin1String("method")); + const auto func = classB->findFunction(QLatin1String("method")); + QVERIFY(!func.isNull()); QCOMPARE(func->ownership(func->ownerClass(), TypeSystem::TargetLangCode, 0), TypeSystem::CppOwnership); } @@ -143,7 +144,7 @@ void TestModifyFunction::invalidateAfterUse() QVERIFY(!builder.isNull()); AbstractMetaClassList classes = builder->classes(); const AbstractMetaClass *classB = AbstractMetaClass::findClass(classes, QLatin1String("B")); - const AbstractMetaFunction* func = classB->findFunction(QLatin1String("call")); + auto func = classB->findFunction(QLatin1String("call")); QCOMPARE(func->modifications().size(), 1); QCOMPARE(func->modifications().at(0).argument_mods().size(), 1); QVERIFY(func->modifications().at(0).argument_mods().at(0).resetAfterUse); @@ -216,7 +217,7 @@ void TestModifyFunction::testWithApiVersion() QVERIFY(!builder.isNull()); AbstractMetaClassList classes = builder->classes(); AbstractMetaClass* classB = AbstractMetaClass::findClass(classes, QLatin1String("B")); - const AbstractMetaFunction* func = classB->findFunction(QLatin1String("method")); + auto func = classB->findFunction(QLatin1String("method")); QCOMPARE(func->ownership(func->ownerClass(), TypeSystem::TargetLangCode, 0), TypeSystem::CppOwnership); @@ -256,28 +257,28 @@ struct A { QVERIFY(classA); // Nothing specified, true - const AbstractMetaFunction *f1 = classA->findFunction(QLatin1String("f1")); - QVERIFY(f1); + const auto f1 = classA->findFunction(QLatin1String("f1")); + QVERIFY(!f1.isNull()); QVERIFY(!f1->allowThread()); // 'auto' specified, should be false for nontrivial function - const AbstractMetaFunction *f2 = classA->findFunction(QLatin1String("f2")); - QVERIFY(f2); + const auto f2 = classA->findFunction(QLatin1String("f2")); + QVERIFY(!f2.isNull()); QVERIFY(f2->allowThread()); // 'no' specified, should be false - const AbstractMetaFunction *f3 = classA->findFunction(QLatin1String("f3")); - QVERIFY(f3); + const auto f3 = classA->findFunction(QLatin1String("f3")); + QVERIFY(!f3.isNull()); QVERIFY(!f3->allowThread()); // Nothing specified, should be false for simple getter - const AbstractMetaFunction *getter1 = classA->findFunction(QLatin1String("getter1")); - QVERIFY(getter1); + const auto getter1 = classA->findFunction(QLatin1String("getter1")); + QVERIFY(!getter1.isNull()); QVERIFY(!getter1->allowThread()); // Forced to true simple getter - const AbstractMetaFunction *getter2 = classA->findFunction(QLatin1String("getter2")); - QVERIFY(getter2); + const auto getter2 = classA->findFunction(QLatin1String("getter2")); + QVERIFY(!getter2.isNull()); QVERIFY(getter2->allowThread()); // Forced to true simple getter } @@ -310,8 +311,8 @@ void TestModifyFunction::testGlobalFunctionModification() ArgumentModification argMod = argMods.constFirst(); QCOMPARE(argMod.replacedDefaultExpression, QLatin1String("A()")); - const AbstractMetaFunction *func = builder->globalFunctions().constFirst(); - QVERIFY(func); + QVERIFY(!builder->globalFunctions().isEmpty()); + const auto func = builder->globalFunctions().constFirst(); QCOMPARE(func->arguments().count(), 1); const AbstractMetaArgument &arg = func->arguments().constFirst(); QCOMPARE(arg.type().cppSignature(), QLatin1String("A *")); @@ -452,19 +453,19 @@ void TestModifyFunction::testScopedModifications() const AbstractMetaClass *classA = AbstractMetaClass::findClass(builder->classes(), QLatin1String("A")); QVERIFY(classA); - const AbstractMetaFunction *f = classA->findFunction(QStringLiteral("unspecified")); - QVERIFY(f); + auto f = classA->findFunction(QStringLiteral("unspecified")); + QVERIFY(!f.isNull()); QCOMPARE(f->exceptionSpecification(), ExceptionSpecification::Unknown); QCOMPARE(f->generateExceptionHandling(), expectedGenerateUnspecified); QCOMPARE(f->allowThread(), expectedAllowThread); f = classA->findFunction(QStringLiteral("nonThrowing")); - QVERIFY(f); + QVERIFY(!f.isNull()); QCOMPARE(f->exceptionSpecification(), ExceptionSpecification::NoExcept); QCOMPARE(f->generateExceptionHandling(), expectedGenerateNonThrowing); f = classA->findFunction(QStringLiteral("throwing")); - QVERIFY(f); + QVERIFY(!f.isNull()); QCOMPARE(f->exceptionSpecification(), ExceptionSpecification::Throws); QCOMPARE(f->generateExceptionHandling(), expectedGenerateThrowing); } diff --git a/sources/shiboken6/ApiExtractor/tests/testmultipleinheritance.cpp b/sources/shiboken6/ApiExtractor/tests/testmultipleinheritance.cpp index 7702d37d9..748adfc39 100644 --- a/sources/shiboken6/ApiExtractor/tests/testmultipleinheritance.cpp +++ b/sources/shiboken6/ApiExtractor/tests/testmultipleinheritance.cpp @@ -62,8 +62,7 @@ void TestMultipleInheritance::testVirtualClass() const AbstractMetaClass *classD = AbstractMetaClass::findClass(classes, QLatin1String("D")); bool functionFound = false; - const AbstractMetaFunctionList &functions = classD->functions(); - for (AbstractMetaFunction *f : functions) { + for (const auto &f : classD->functions()) { if (f->name() == QLatin1String("theBug")) { functionFound = true; break; diff --git a/sources/shiboken6/ApiExtractor/tests/testnamespace.cpp b/sources/shiboken6/ApiExtractor/tests/testnamespace.cpp index 7f0addd6b..99aabe780 100644 --- a/sources/shiboken6/ApiExtractor/tests/testnamespace.cpp +++ b/sources/shiboken6/ApiExtractor/tests/testnamespace.cpp @@ -57,8 +57,8 @@ void NamespaceTest::testNamespaceMembers() QVERIFY(ns); auto metaEnum = ns->findEnum(QLatin1String("Option")); QVERIFY(metaEnum.has_value()); - const AbstractMetaFunction* func = ns->findFunction(QLatin1String("foo")); - QVERIFY(func); + const auto func = ns->findFunction(QLatin1String("foo")); + QVERIFY(!func.isNull()); } void NamespaceTest::testNamespaceInnerClassMembers() @@ -89,8 +89,8 @@ void NamespaceTest::testNamespaceInnerClassMembers() QVERIFY(ins); const AbstractMetaClass *sc = AbstractMetaClass::findClass(classes, QLatin1String("OuterNamespace::InnerNamespace::SomeClass")); QVERIFY(sc); - const AbstractMetaFunction* meth = sc->findFunction(QLatin1String("method")); - QVERIFY(meth); + const auto meth = sc->findFunction(QLatin1String("method")); + QVERIFY(!meth.isNull()); } QTEST_APPLESS_MAIN(NamespaceTest) diff --git a/sources/shiboken6/ApiExtractor/tests/testnestedtypes.cpp b/sources/shiboken6/ApiExtractor/tests/testnestedtypes.cpp index 4613eeaa5..71daef051 100644 --- a/sources/shiboken6/ApiExtractor/tests/testnestedtypes.cpp +++ b/sources/shiboken6/ApiExtractor/tests/testnestedtypes.cpp @@ -73,7 +73,7 @@ void TestNestedTypes::testNestedTypesModifications() CodeSnip snip = ins->typeEntry()->codeSnips().constFirst(); QCOMPARE(snip.code().trimmed(), QLatin1String("custom_code1();")); - AbstractMetaFunction *addedFunc = ins->functions().constFirst(); + const auto addedFunc = ins->functions().constFirst(); QVERIFY(addedFunc->isUserAdded()); QCOMPARE(addedFunc->visibility(), AbstractMetaFunction::Public); QCOMPARE(addedFunc->functionType(), AbstractMetaFunction::NormalFunction); @@ -88,7 +88,7 @@ void TestNestedTypes::testNestedTypesModifications() const AbstractMetaClass *sc = AbstractMetaClass::findClass(classes, QLatin1String("OuterNamespace::InnerNamespace::SomeClass")); QVERIFY(ins); QCOMPARE(sc->functions().count(), 2); // default constructor and removed method - AbstractMetaFunction *removedFunc = sc->functions().constLast(); + const auto removedFunc = sc->functions().constLast(); QVERIFY(removedFunc->isModifiedRemoved()); } diff --git a/sources/shiboken6/ApiExtractor/tests/testnumericaltypedef.cpp b/sources/shiboken6/ApiExtractor/tests/testnumericaltypedef.cpp index d613074fe..de2f30135 100644 --- a/sources/shiboken6/ApiExtractor/tests/testnumericaltypedef.cpp +++ b/sources/shiboken6/ApiExtractor/tests/testnumericaltypedef.cpp @@ -50,9 +50,8 @@ void TestNumericalTypedef::testNumericalTypedef() QVERIFY(!builder.isNull()); QCOMPARE(builder->globalFunctions().size(), 2); - const AbstractMetaFunction *funcDouble = builder->globalFunctions().constFirst(); - QVERIFY(funcDouble); - const AbstractMetaFunction *funcReal = builder->globalFunctions().constLast(); + auto funcDouble = builder->globalFunctions().constFirst(); + auto funcReal = builder->globalFunctions().constLast(); QVERIFY(funcReal); if (funcDouble->name() == QLatin1String("funcReal")) @@ -90,10 +89,8 @@ void TestNumericalTypedef::testUnsignedNumericalTypedef() QVERIFY(!builder.isNull()); QCOMPARE(builder->globalFunctions().size(), 2); - const AbstractMetaFunction *funcUnsignedShort = builder->globalFunctions().constFirst(); - QVERIFY(funcUnsignedShort); - const AbstractMetaFunction *funcUShort = builder->globalFunctions().constLast(); - QVERIFY(funcUShort); + auto funcUnsignedShort = builder->globalFunctions().constFirst(); + auto funcUShort = builder->globalFunctions().constLast(); if (funcUnsignedShort->name() == QLatin1String("funcUShort")) std::swap(funcUnsignedShort, funcUShort); diff --git a/sources/shiboken6/ApiExtractor/tests/testrefcounttag.cpp b/sources/shiboken6/ApiExtractor/tests/testrefcounttag.cpp index 9f1e32e05..a589827e4 100644 --- a/sources/shiboken6/ApiExtractor/tests/testrefcounttag.cpp +++ b/sources/shiboken6/ApiExtractor/tests/testrefcounttag.cpp @@ -55,8 +55,8 @@ void TestRefCountTag::testReferenceCountTag() QVERIFY(!builder.isNull()); AbstractMetaClassList classes = builder->classes(); const AbstractMetaClass *classB = AbstractMetaClass::findClass(classes, QLatin1String("B")); - const AbstractMetaFunction* func = classB->findFunction(QLatin1String("keepObject")); - QVERIFY(func); + const auto func = classB->findFunction(QLatin1String("keepObject")); + QVERIFY(!func.isNull()); ReferenceCount refCount = func->modifications().constFirst().argument_mods().constFirst().referenceCounts.constFirst(); QCOMPARE(refCount.action, ReferenceCount::Add); } @@ -88,8 +88,8 @@ void TestRefCountTag::testWithApiVersion() QVERIFY(!builder.isNull()); AbstractMetaClassList classes = builder->classes(); const AbstractMetaClass *classB = AbstractMetaClass::findClass(classes, QLatin1String("B")); - const AbstractMetaFunction* func = classB->findFunction(QLatin1String("keepObject")); - QVERIFY(func); + const auto func = classB->findFunction(QLatin1String("keepObject")); + QVERIFY(!func.isNull()); ReferenceCount refCount = func->modifications().constFirst().argument_mods().constFirst().referenceCounts.constFirst(); QCOMPARE(refCount.action, ReferenceCount::Add); diff --git a/sources/shiboken6/ApiExtractor/tests/testreferencetopointer.cpp b/sources/shiboken6/ApiExtractor/tests/testreferencetopointer.cpp index 6cd719743..b929ebd66 100644 --- a/sources/shiboken6/ApiExtractor/tests/testreferencetopointer.cpp +++ b/sources/shiboken6/ApiExtractor/tests/testreferencetopointer.cpp @@ -50,8 +50,8 @@ void TestReferenceToPointer::testReferenceToPointerArgument() AbstractMetaClassList classes = builder->classes(); const AbstractMetaClass *classB = AbstractMetaClass::findClass(classes, QLatin1String("B")); QVERIFY(classB); - const AbstractMetaFunction* func = classB->findFunction(QLatin1String("dummy")); - QVERIFY(func); + const auto func = classB->findFunction(QLatin1String("dummy")); + QVERIFY(!func.isNull()); QCOMPARE(func->arguments().constFirst().type().minimalSignature(), QLatin1String("A*&")); } diff --git a/sources/shiboken6/ApiExtractor/tests/testremoveimplconv.cpp b/sources/shiboken6/ApiExtractor/tests/testremoveimplconv.cpp index bd78ad80d..41103c24e 100644 --- a/sources/shiboken6/ApiExtractor/tests/testremoveimplconv.cpp +++ b/sources/shiboken6/ApiExtractor/tests/testremoveimplconv.cpp @@ -62,7 +62,7 @@ void TestRemoveImplConv::testRemoveImplConv() QVERIFY(classB); const AbstractMetaClass *classC = AbstractMetaClass::findClass(classes, QLatin1String("C")); QVERIFY(classC); - AbstractMetaFunctionList implConv = classC->implicitConversions(); + const auto implConv = classC->implicitConversions(); QCOMPARE(implConv.count(), 1); QCOMPARE(implConv.constFirst()->arguments().constFirst().type().typeEntry(), classB->typeEntry()); diff --git a/sources/shiboken6/ApiExtractor/tests/testremoveoperatormethod.cpp b/sources/shiboken6/ApiExtractor/tests/testremoveoperatormethod.cpp index 3b9936571..9824d1bf0 100644 --- a/sources/shiboken6/ApiExtractor/tests/testremoveoperatormethod.cpp +++ b/sources/shiboken6/ApiExtractor/tests/testremoveoperatormethod.cpp @@ -106,8 +106,7 @@ void TestRemoveOperatorMethod::testRemoveOperatorMethod() removedSignatures.append(QLatin1String("operator>>(Char&)")); removedSignatures.append(QLatin1String("operator>>(String&)")); int notRemoved = classA->functions().size(); - const AbstractMetaFunctionList &functions = classA->functions(); - for (const AbstractMetaFunction *f : functions) { + for (const auto &f : classA->functions()) { QCOMPARE(f->isModifiedRemoved(), bool(removedSignatures.contains(f->minimalSignature()))); notRemoved -= int(f->isModifiedRemoved()); } diff --git a/sources/shiboken6/ApiExtractor/tests/testresolvetype.cpp b/sources/shiboken6/ApiExtractor/tests/testresolvetype.cpp index 2203f3648..4c2930234 100644 --- a/sources/shiboken6/ApiExtractor/tests/testresolvetype.cpp +++ b/sources/shiboken6/ApiExtractor/tests/testresolvetype.cpp @@ -58,7 +58,8 @@ void TestResolveType::testResolveReturnTypeFromParentScope() AbstractMetaClassList classes = builder->classes(); const AbstractMetaClass *classD = AbstractMetaClass::findClass(classes, QLatin1String("A::D")); QVERIFY(classD); - const AbstractMetaFunction* meth = classD->findFunction(QLatin1String("method")); + const auto meth = classD->findFunction(QLatin1String("method")); + QVERIFY(!meth.isNull()); QVERIFY(meth); } diff --git a/sources/shiboken6/ApiExtractor/tests/testreverseoperators.cpp b/sources/shiboken6/ApiExtractor/tests/testreverseoperators.cpp index 66dd6edbf..3ad77c86f 100644 --- a/sources/shiboken6/ApiExtractor/tests/testreverseoperators.cpp +++ b/sources/shiboken6/ApiExtractor/tests/testreverseoperators.cpp @@ -52,9 +52,9 @@ void TestReverseOperators::testReverseSum() QVERIFY(classA); QCOMPARE(classA->functions().count(), 4); - const AbstractMetaFunction* reverseOp = nullptr; - const AbstractMetaFunction* normalOp = 0; - for (const AbstractMetaFunction *func : classA->functions()) { + AbstractMetaFunctionCPtr reverseOp; + AbstractMetaFunctionCPtr normalOp; + for (const auto &func : classA->functions()) { if (func->name() == QLatin1String("operator+")) { if (func->isReverseOperator()) reverseOp = func; @@ -63,10 +63,10 @@ void TestReverseOperators::testReverseSum() } } - QVERIFY(normalOp); + QVERIFY(!normalOp.isNull()); QVERIFY(!normalOp->isReverseOperator()); QCOMPARE(normalOp->arguments().count(), 1); - QVERIFY(reverseOp); + QVERIFY(!reverseOp.isNull()); QVERIFY(reverseOp->isReverseOperator()); QCOMPARE(reverseOp->arguments().count(), 1); } @@ -98,9 +98,9 @@ void TestReverseOperators::testReverseSumWithAmbiguity() QVERIFY(classB); QCOMPARE(classB->functions().count(), 4); - const AbstractMetaFunction *reverseOp = nullptr; - const AbstractMetaFunction *normalOp = nullptr; - for (const AbstractMetaFunction *func : classB->functions()) { + AbstractMetaFunctionCPtr reverseOp; + AbstractMetaFunctionCPtr normalOp; + for (const auto &func : classB->functions()) { if (func->name() == QLatin1String("operator+")) { if (func->isReverseOperator()) reverseOp = func; @@ -108,11 +108,11 @@ void TestReverseOperators::testReverseSumWithAmbiguity() normalOp = func; } } - QVERIFY(normalOp); + QVERIFY(!normalOp.isNull()); QVERIFY(!normalOp->isReverseOperator()); QCOMPARE(normalOp->arguments().count(), 1); QCOMPARE(normalOp->minimalSignature(), QLatin1String("operator+(B,A)")); - QVERIFY(reverseOp); + QVERIFY(!reverseOp.isNull()); QVERIFY(reverseOp->isReverseOperator()); QCOMPARE(reverseOp->arguments().count(), 1); QCOMPARE(reverseOp->minimalSignature(), QLatin1String("operator+(A,B)")); diff --git a/sources/shiboken6/ApiExtractor/tests/testtemplates.cpp b/sources/shiboken6/ApiExtractor/tests/testtemplates.cpp index 2ddccc900..2a5bd750d 100644 --- a/sources/shiboken6/ApiExtractor/tests/testtemplates.cpp +++ b/sources/shiboken6/ApiExtractor/tests/testtemplates.cpp @@ -77,7 +77,8 @@ namespace Internet { AbstractMetaClass* classB = AbstractMetaClass::findClass(classes, QLatin1String("Bookmarks")); QVERIFY(classB); - const AbstractMetaFunction* func = classB->findFunction(QLatin1String("list")); + const auto func = classB->findFunction(QLatin1String("list")); + QVERIFY(!func.isNull()); AbstractMetaType funcType = func->type(); QVERIFY(!funcType.isVoid()); QCOMPARE(funcType.cppSignature(), QLatin1String("QList<Internet::Url >")); @@ -116,7 +117,8 @@ namespace Namespace { QVERIFY(classB); QVERIFY(!classB->baseClass()); QVERIFY(classB->baseClassName().isEmpty()); - const AbstractMetaFunction* func = classB->findFunction(QLatin1String("foo")); + const auto func = classB->findFunction(QLatin1String("foo")); + QVERIFY(!func.isNull()); AbstractMetaType argType = func->arguments().constFirst().type(); QCOMPARE(argType.instantiations().count(), 1); QCOMPARE(argType.typeEntry()->qualifiedCppName(), QLatin1String("QList")); @@ -146,10 +148,10 @@ void func(List<int> arg) {} QScopedPointer<AbstractMetaBuilder> builder(TestUtil::parse(cppCode, xmlCode, false)); QVERIFY(!builder.isNull()); - AbstractMetaFunctionList globalFuncs = builder->globalFunctions(); + const auto globalFuncs = builder->globalFunctions(); QCOMPARE(globalFuncs.count(), 1); - AbstractMetaFunction *func = globalFuncs.constFirst(); + const auto func = globalFuncs.constFirst(); QCOMPARE(func->minimalSignature(), QLatin1String("func(List<int>)")); QCOMPARE(func->arguments().constFirst().type().cppSignature(), QLatin1String("List<int >")); @@ -171,10 +173,10 @@ void func(List<int>* arg) {} QScopedPointer<AbstractMetaBuilder> builder(TestUtil::parse(cppCode, xmlCode, false)); QVERIFY(!builder.isNull()); - AbstractMetaFunctionList globalFuncs = builder->globalFunctions(); + AbstractMetaFunctionCList globalFuncs = builder->globalFunctions(); QCOMPARE(globalFuncs.count(), 1); - AbstractMetaFunction* func = globalFuncs.constFirst(); + const auto func = globalFuncs.constFirst(); QCOMPARE(func->minimalSignature(), QLatin1String("func(List<int>*)")); QCOMPARE(func->arguments().constFirst().type().cppSignature(), QLatin1String("List<int > *")); @@ -196,10 +198,10 @@ void func(List<int>& arg) {} QScopedPointer<AbstractMetaBuilder> builder(TestUtil::parse(cppCode, xmlCode, false)); QVERIFY(!builder.isNull()); - AbstractMetaFunctionList globalFuncs = builder->globalFunctions(); + const auto globalFuncs = builder->globalFunctions(); QCOMPARE(globalFuncs.count(), 1); - AbstractMetaFunction* func = globalFuncs.constFirst(); + const auto func = globalFuncs.constFirst(); QCOMPARE(func->minimalSignature(), QLatin1String("func(List<int>&)")); QCOMPARE(func->arguments().constFirst().type().cppSignature(), QLatin1String("List<int > &")); @@ -230,13 +232,13 @@ struct List { QCOMPARE(templates.count(), 1); const AbstractMetaClass *list = templates.constFirst(); // Verify that the parameter of "void append(List l)" gets fixed to "List<T >" - const AbstractMetaFunction *append = list->findFunction(QStringLiteral("append")); - QVERIFY(append); + const auto append = list->findFunction(QStringLiteral("append")); + QVERIFY(!append.isNull()); QCOMPARE(append->arguments().size(), 1); QCOMPARE(append->arguments().at(0).type().cppSignature(), QLatin1String("List<T >")); // Verify that the parameter of "void erase(Iterator)" is not modified - const AbstractMetaFunction *erase = list->findFunction(QStringLiteral("erase")); - QVERIFY(erase); + const auto erase = list->findFunction(QStringLiteral("erase")); + QVERIFY(!erase.isNull()); QCOMPARE(erase->arguments().size(), 1); QEXPECT_FAIL("", "Clang: Some other code changes the parameter type", Abort); QCOMPARE(erase->arguments().at(0).type().cppSignature(), QLatin1String("List::Iterator")); @@ -438,12 +440,12 @@ typedef Vector<int> IntVector; ContainerTypeEntry::VectorContainer); QCOMPARE(vector->functions().count(), 4); - const AbstractMetaFunction* method = vector->findFunction(QLatin1String("method")); - QVERIFY(method); + const auto method = vector->findFunction(QLatin1String("method")); + QVERIFY(!method.isNull()); QCOMPARE(method->signature(), QLatin1String("method(const Vector<int > & vector)")); - const AbstractMetaFunction* otherMethod = vector->findFunction(QLatin1String("otherMethod")); - QVERIFY(otherMethod); + const auto otherMethod = vector->findFunction(QLatin1String("otherMethod")); + QVERIFY(!otherMethod.isNull()); QCOMPARE(otherMethod->signature(), QLatin1String("otherMethod()")); QVERIFY(!otherMethod->type().isVoid()); QCOMPARE(otherMethod->type().cppSignature(), QLatin1String("Vector<int >")); @@ -572,15 +574,13 @@ void TestTemplates::testTemplateTypeDefs() QCOMPARE(xmlOptionalInt->templateBaseClass(), optional); // Check whether the value() method now has an 'int' return - const AbstractMetaFunction *valueMethod = - optionalInt->findFunction(QLatin1String("value")); - QVERIFY(valueMethod); + const auto valueMethod = optionalInt->findFunction(QLatin1String("value")); + QVERIFY(!valueMethod.isNull()); QCOMPARE(valueMethod->type().cppSignature(), QLatin1String("int")); // ditto for typesystem XML - const AbstractMetaFunction *xmlValueMethod = - xmlOptionalInt->findFunction(QLatin1String("value")); - QVERIFY(xmlValueMethod); + const auto xmlValueMethod = xmlOptionalInt->findFunction(QLatin1String("value")); + QVERIFY(!xmlValueMethod.isNull()); QCOMPARE(xmlValueMethod->type().cppSignature(), QLatin1String("int")); // Check whether the m_value field is of type 'int' diff --git a/sources/shiboken6/ApiExtractor/tests/testvoidarg.cpp b/sources/shiboken6/ApiExtractor/tests/testvoidarg.cpp index d39819d0f..6d155dacc 100644 --- a/sources/shiboken6/ApiExtractor/tests/testvoidarg.cpp +++ b/sources/shiboken6/ApiExtractor/tests/testvoidarg.cpp @@ -45,7 +45,8 @@ void TestVoidArg::testVoidParsedFunction() AbstractMetaClassList classes = builder->classes(); const AbstractMetaClass *classA = AbstractMetaClass::findClass(classes, QLatin1String("A")); QVERIFY(classA); - const AbstractMetaFunction* addedFunc = classA->findFunction(QLatin1String("a")); + const auto addedFunc = classA->findFunction(QLatin1String("a")); + QVERIFY(!addedFunc.isNull()); QCOMPARE(addedFunc->arguments().count(), 0); } @@ -63,7 +64,8 @@ void TestVoidArg::testVoidAddedFunction() AbstractMetaClassList classes = builder->classes(); const AbstractMetaClass *classA = AbstractMetaClass::findClass(classes, QLatin1String("A")); QVERIFY(classA); - const AbstractMetaFunction* addedFunc = classA->findFunction(QLatin1String("a")); + const auto addedFunc = classA->findFunction(QLatin1String("a")); + QVERIFY(!addedFunc.isNull()); QCOMPARE(addedFunc->arguments().count(), 0); } @@ -80,7 +82,8 @@ void TestVoidArg::testVoidPointerParsedFunction() AbstractMetaClassList classes = builder->classes(); const AbstractMetaClass *classA = AbstractMetaClass::findClass(classes, QLatin1String("A")); QVERIFY(classA); - const AbstractMetaFunction* addedFunc = classA->findFunction(QLatin1String("a")); + const auto addedFunc = classA->findFunction(QLatin1String("a")); + QVERIFY(!addedFunc.isNull()); QCOMPARE(addedFunc->arguments().count(), 1); } |