QuickFix: Fix generate function definition with unsigned type

Fixes: QTCREATORBUG-28378
Change-Id: Ic94901e430d08aab22c8f4c394eda1f8a93398bc
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
Artem Sokolovskii
2022-10-31 16:31:20 +01:00
parent 421e5d9c59
commit 39d04fb9e7
4 changed files with 113 additions and 1 deletions

View File

@@ -4713,6 +4713,95 @@ void QuickfixTest::testInsertDefFromDeclTemplateFunction()
QuickFixOperationTest(singleDocument(original, expected), &factory);
}
void QuickfixTest::testInsertDefFromDeclFunctionWithSignedUnsignedArgument()
{
QByteArray original;
QByteArray expected;
InsertDefFromDecl factory;
original =R"--(
class myclass
{
myc@lass(QVector<signed> g);
myclass(QVector<unsigned> g);
}
)--";
expected =R"--(
class myclass
{
myclass(QVector<signed> g);
myclass(QVector<unsigned> g);
}
myclass::myclass(QVector<signed int> g)
{
}
)--";
QuickFixOperationTest(singleDocument(original, expected), &factory);
original =R"--(
class myclass
{
myclass(QVector<signed> g);
myc@lass(QVector<unsigned> g);
}
)--";
expected =R"--(
class myclass
{
myclass(QVector<signed> g);
myclass(QVector<unsigned> g);
}
myclass::myclass(QVector<unsigned int> g)
{
}
)--";
QuickFixOperationTest(singleDocument(original, expected), &factory);
original =R"--(
class myclass
{
unsigned f@oo(unsigned);
}
)--";
expected =R"--(
class myclass
{
unsigned foo(unsigned);
}
unsigned int myclass::foo(unsigned int)
{
}
)--";
QuickFixOperationTest(singleDocument(original, expected), &factory);
original =R"--(
class myclass
{
signed f@oo(signed);
}
)--";
expected =R"--(
class myclass
{
signed foo(signed);
}
signed int myclass::foo(signed int)
{
}
)--";
QuickFixOperationTest(singleDocument(original, expected), &factory);
}
void QuickfixTest::testInsertDefFromDeclNotTriggeredForFriendFunc()
{
const QByteArray contents =