Qt VS Code Extensions Manual Tests Debugger
This is about catching the Qt types not properly understood by the debugger.
Found problems are to be reported in https://bugreports.qt.io/browse/VSCODEEXT-154?filter=27222
Auto test is meant to replace the manual testing
| Pre-requisit | Result | Annotation |
|---|---|---|
| Have VS code installed (https://code.visualstudio.com/docs/setup/setup-overview) | ||
| Have a Qt installation (https://account.qt.io/s/downloads) | ||
| Have the Qt C++ Extension Pack installed, a Qt installation registered and a Qt kit selected | ||
| Copy the debugger test project from vscodeext/debugging_helpers/manual_testing/QtType | to do, create project and link |
To use the latest vs-debugtools, use a local vscodeext. To set up everything, run:
npm ci
git submodule update --init
npm run prepareNatvisFiles
npm run all_dev
Place breaking point at each expect call in the debuggee.cpp file.
Check that the debugger output is as expected.
This is a work in progress, need to use the latest natvis files from https://github.com/narnaud/natvis4qt (to be moved to qt-labs/vs-debugtools QTVSADDINBUG-1310)
| Qt6 Tested type | Result | Annotation |
|---|---|---|
| QPropertyData | ok | |
| QUuid | VSCODEEXT-161 | |
| QBasicAtomicInteger | Problem or adapt expectation | Type is QAtomicOps<int> instead of QBasicAtomicInteger<int>
In Raw View value type is <int> instead of std::atomic<int> |
| QBasicAtomicPointer | Adapt expectation? | Raw View type is QBasicAtomicPointer<void>::AtomicType instead of QBasicAtomicPointer<void> |
| QPoint | Adapt expectation | No Type shown in Raw View |
| QPointF | adapt expectation | No Type shown in Raw View |
| QRect | Problem | Width and height not properly displayed |
| QRect | Problem? | Raw View x and y replaced by xp and yp, width and height replaced by w and h. Type is qreal instead of double
No Type shown in Raw View |
| QSize | Raw View width and height replaced by wd and ht
No Type shown in Raw View |
|
| QSizeF | Raw View width and height replaced by wd and ht. Not rounded as expected.
No Type shown in Raw View |
|
| QLine | Raw View start point and end point replaced by pt1 and pt2. Not rounded as expected.
No Type shown in Raw View |
|
| QLineF | Raw View start point and end point replaced by pt1 and pt2. Not rounded as expected.
No Type shown in Raw View |
|
| QChar QChar_default_constructed | Adapt expectations | Raw View is not as expected |
| QChar QChar_Latin1 | Adapt expectations. Problem? | Raw View is not as expected. No latin 1 nor unicode, only ucs. The type and value of ucs are as expected. Need to check those of latin 1 and unicode though. |
| QChar QChar_non_Latin1 | Adapt expectations. | See QChar_Latin1, values are not as expected |
| QString | Adapt expectations. | Look into binary view |
| QStringView | Adapt expectations. | Type of the size not as expected. Look into binary view |
| QByteArray | Adapt expectations. | Type of the size not as expected. Look into binary view |
| QUrl | VSCODEEXT-159 | |
| QDate | ||
| QTime | VSCODEEXT-160 | |
| QPair<int, int> | type show is QPair<int, int> instead of expected std::pair<int,int> | |
| continue | ||
| to do: add Qt types to debuggee.cpp |