diff options
author | Christian Stenger <christian.stenger@qt.io> | 2016-06-01 16:22:50 +0200 |
---|---|---|
committer | Christian Stenger <christian.stenger@qt.io> | 2016-06-09 11:50:26 +0000 |
commit | 5ef85949a81742b89fabbcfd752460312d64e6b4 (patch) | |
tree | ccf3a120f2cd1dabaeb724828944b34cec26b4e8 /src/plugins/autotest/itestframework.h | |
parent | 1681066c37e545da33a3c428b9cfec7974c8c627 (diff) |
AutoTest: Add test frame work handling
Mainly a preparation for enabling/disabling test frame works.
Change-Id: I0bbea7e055a607517ef8193587c229cadf0de027
Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
Diffstat (limited to 'src/plugins/autotest/itestframework.h')
-rw-r--r-- | src/plugins/autotest/itestframework.h | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/src/plugins/autotest/itestframework.h b/src/plugins/autotest/itestframework.h new file mode 100644 index 0000000000..f46454ceee --- /dev/null +++ b/src/plugins/autotest/itestframework.h @@ -0,0 +1,65 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of Qt Creator. +** +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +****************************************************************************/ + +#pragma once + +#include "testtreeitem.h" +#include "itestparser.h" + +namespace Autotest { +namespace Internal { + +class ITestFramework +{ +public: + virtual ~ITestFramework() { } + + virtual const char *name() const = 0; + virtual unsigned priority() const = 0; // should this be modifyable? + + TestTreeItem *rootNode() + { if (!m_rootNode) + m_rootNode = createRootNode(); + return m_rootNode; + } + + ITestParser *testParser() + { + if (!m_testParser) + m_testParser = createTestParser(); + return m_testParser; + } + +protected: + virtual ITestParser *createTestParser() const = 0; + virtual TestTreeItem *createRootNode() const = 0; + +private: + TestTreeItem *m_rootNode = 0; + ITestParser *m_testParser = 0; +}; + +} // namespace Internal +} // namespace Autotest |