Files
qt-creator/src/plugins/projectexplorer/outputparser_test.h

63 lines
1.2 KiB
C
Raw Normal View History

// 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