1 | /**************************************************************************** |
2 | ** |
3 | ** Copyright (C) 2016 The Qt Company Ltd. |
4 | ** Contact: https://www.qt.io/licensing/ |
5 | ** |
6 | ** This file is part of the test suite of the Qt Toolkit. |
7 | ** |
8 | ** $QT_BEGIN_LICENSE:GPL-EXCEPT$ |
9 | ** Commercial License Usage |
10 | ** Licensees holding valid commercial Qt licenses may use this file in |
11 | ** accordance with the commercial license agreement provided with the |
12 | ** Software or, alternatively, in accordance with the terms contained in |
13 | ** a written agreement between you and The Qt Company. For licensing terms |
14 | ** and conditions see https://www.qt.io/terms-conditions. For further |
15 | ** information use the contact form at https://www.qt.io/contact-us. |
16 | ** |
17 | ** GNU General Public License Usage |
18 | ** Alternatively, this file may be used under the terms of the GNU |
19 | ** General Public License version 3 as published by the Free Software |
20 | ** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT |
21 | ** included in the packaging of this file. Please review the following |
22 | ** information to ensure the GNU General Public License requirements will |
23 | ** be met: https://www.gnu.org/licenses/gpl-3.0.html. |
24 | ** |
25 | ** $QT_END_LICENSE$ |
26 | ** |
27 | ****************************************************************************/ |
28 | |
29 | |
30 | #include <QtTest/QtTest> |
31 | |
32 | #include "private/qabstractxmlforwarditerator_p.h" |
33 | |
34 | /*! |
35 | \class tst_QAbstractXmlForwardIterator |
36 | \internal |
37 | \since 4.4 |
38 | \brief Tests class QAbstractXmlForwardIterator. |
39 | |
40 | This test is not intended for testing the engine, but the functionality specific |
41 | to the QAbstractXmlForwardIterator class. |
42 | |
43 | In other words, if you have an engine bug; don't add it here because it won't be |
44 | tested properly. Instead add it to the test suite. |
45 | |
46 | */ |
47 | class tst_QAbstractXmlForwardIterator : public QObject |
48 | { |
49 | Q_OBJECT |
50 | private Q_SLOTS: |
51 | void objectSize() const; |
52 | }; |
53 | |
54 | void tst_QAbstractXmlForwardIterator::objectSize() const |
55 | { |
56 | /* We add sizeof(void *) times two. One for the |
57 | * virtual table pointer, one for the d-pointer. |
58 | * |
59 | * The reason we check also allow (+ sizeof(void *) / 2) is that on 64 bit |
60 | * the first member in QAbstractXmlForwardIterator gets padded to a pointer |
61 | * address due to QSharedData not being sizeof(qptrdiff), but sizeof(qint32). |
62 | */ |
63 | QVERIFY( sizeof(QAbstractXmlForwardIterator<int>) == sizeof(QSharedData) + sizeof(void *) * 2 |
64 | || sizeof(QAbstractXmlForwardIterator<int>) == sizeof(QSharedData) + sizeof(void *) * 2 + sizeof(void *) / 2); |
65 | } |
66 | |
67 | QTEST_MAIN(tst_QAbstractXmlForwardIterator) |
68 | |
69 | #include "tst_qabstractxmlforwarditerator.moc" |
70 | |