1// Copyright (C) 2022 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4#ifndef QTESTELEMENT_P_H
5#define QTESTELEMENT_P_H
6
7//
8// W A R N I N G
9// -------------
10//
11// This file is not part of the Qt API. It exists purely as an
12// implementation detail. This header file may change from version to
13// version without notice, or even be removed.
14//
15// We mean it.
16//
17
18#include <QtTest/qttestglobal.h>
19#include <QtTest/private/qtestcoreelement_p.h>
20
21QT_BEGIN_NAMESPACE
22
23
24class QTestElement : public QTestCoreElement<QTestElement>
25{
26 public:
27 QTestElement(QTest::LogElementType type = QTest::LET_Undefined);
28 ~QTestElement();
29
30 bool addChild(QTestElement *element);
31 const std::vector<QTestElement*> &childElements() const;
32
33 const QTestElement *parentElement() const;
34 void setParent(const QTestElement *p);
35
36 private:
37 std::vector<QTestElement*> listOfChildren;
38 const QTestElement *parent = nullptr;
39
40};
41
42QT_END_NAMESPACE
43
44#endif
45

source code of qtbase/src/testlib/qtestelement_p.h