Files
qt-creator/src/plugins/projectexplorer/outputparser_test.h
hjk a4e6d36427 ProjectExplorer: Move outputparser test class creation class
... closer to the tested code.

Change-Id: Icdc2efcae8bfa6129ed641116ca6e8c917d8c0f3
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2024-01-18 10:16:59 +00:00

63 lines
1.2 KiB
C++

// Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
#pragma once
#ifdef WITH_TESTS
#include "projectexplorer_export.h"
#include "task.h"
#include <utils/outputformatter.h>
namespace ProjectExplorer {
class TestTerminator;
class PROJECTEXPLORER_EXPORT OutputParserTester : public Utils::OutputFormatter
{
Q_OBJECT
public:
enum Channel {
STDOUT,
STDERR
};
OutputParserTester();
~OutputParserTester();
// test functions:
void testParsing(const QString &lines, Channel inputChannel,
Tasks tasks,
const QString &childStdOutLines,
const QString &childStdErrLines,
const QString &outputLines);
void setDebugEnabled(bool);
signals:
void aboutToDeleteParser();
private:
void reset();
bool m_debug = false;
QString m_receivedStdErrChildLine;
QString m_receivedStdOutChildLine;
Tasks m_receivedTasks;
QString m_receivedOutput;
friend class TestTerminator;
};
QObject *createOutputParserTest();
} // namespace ProjectExplorer
Q_DECLARE_METATYPE(ProjectExplorer::OutputParserTester::Channel)
#endif