From 3c48d26c5b297f851615f942b30a3346d8b0df5c Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Thu, 25 Aug 2011 16:21:36 +1000 Subject: [PATCH] Remove duplicated code from QTestBasicStreamer. Instead of using the file output functions inherited from QAbstractTestLogger, QTestLogger relied on QTestBasicStreamer having a copy of these functions. This commit removes the copied functions from QTestBasicStreamer and makes it and QTestLogger use the original functions from QAbstractTestLogger. Change-Id: Icac1ae9d85cd39efd4c67c79104404dd56766b17 Reviewed-on: http://codereview.qt.nokia.com/3565 Reviewed-by: Qt Sanity Bot Reviewed-by: Rohan McGovern --- src/testlib/qtestbasicstreamer.cpp | 53 +------------------------------------- src/testlib/qtestbasicstreamer.h | 3 --- src/testlib/qtestlogger.cpp | 5 ++-- 3 files changed, 4 insertions(+), 57 deletions(-) diff --git a/src/testlib/qtestbasicstreamer.cpp b/src/testlib/qtestbasicstreamer.cpp index 25e48ee..50933b9 100644 --- a/src/testlib/qtestbasicstreamer.cpp +++ b/src/testlib/qtestbasicstreamer.cpp @@ -43,8 +43,6 @@ #include "qtestlogger_p.h" #include "qtestelement.h" #include "qtestelementattribute.h" -#include "QtTest/private/qtestlog_p.h" -#include "qtestassert.h" #include #include @@ -55,11 +53,6 @@ QT_BEGIN_NAMESPACE -namespace QTest -{ - static FILE *stream = 0; -} - QTestBasicStreamer::QTestBasicStreamer() :testLogger(0) { @@ -158,51 +151,7 @@ void QTestBasicStreamer::outputElementAttributes(const QTestElement* element, QT void QTestBasicStreamer::outputString(const char *msg) const { - QTEST_ASSERT(QTest::stream); - - ::fputs(msg, QTest::stream); - ::fflush(QTest::stream); -} - -void QTestBasicStreamer::startStreaming() -{ - QTEST_ASSERT(!QTest::stream); - - const char *out = QTestLog::outputFileName(); - if (!out) { - QTest::stream = stdout; - return; - } - #if defined(_MSC_VER) && _MSC_VER >= 1400 && !defined(Q_OS_WINCE) - if (::fopen_s(&QTest::stream, out, "wt")) { - #else - QTest::stream = ::fopen(out, "wt"); - if (!QTest::stream) { - #endif - printf("Unable to open file for logging: %s", out); - ::exit(1); - } -} - -bool QTestBasicStreamer::isTtyOutput() -{ - QTEST_ASSERT(QTest::stream); - -#if defined(Q_OS_WIN) || defined(Q_OS_INTEGRITY) - return true; -#else - static bool ttyoutput = isatty(fileno(QTest::stream)); - return ttyoutput; -#endif -} - -void QTestBasicStreamer::stopStreaming() -{ - QTEST_ASSERT(QTest::stream); - if (QTest::stream != stdout) - fclose(QTest::stream); - - QTest::stream = 0; + testLogger->outputString(msg); } void QTestBasicStreamer::setLogger(const QTestLogger *tstLogger) diff --git a/src/testlib/qtestbasicstreamer.h b/src/testlib/qtestbasicstreamer.h index 867c1f1..371bb49 100644 --- a/src/testlib/qtestbasicstreamer.h +++ b/src/testlib/qtestbasicstreamer.h @@ -64,9 +64,6 @@ class QTestBasicStreamer virtual void output(QTestElement *element) const; void outputString(const char *msg) const; - bool isTtyOutput(); - void startStreaming(); - void stopStreaming(); void setLogger(const QTestLogger *tstLogger); const QTestLogger *logger() const; diff --git a/src/testlib/qtestlogger.cpp b/src/testlib/qtestlogger.cpp index 2c81a4b..316e89f 100644 --- a/src/testlib/qtestlogger.cpp +++ b/src/testlib/qtestlogger.cpp @@ -80,6 +80,8 @@ QTestLogger::~QTestLogger() void QTestLogger::startLogging() { + QAbstractTestLogger::startLogging(); + switch(format){ case TLF_LightXml:{ logFormatter = new QTestLightXmlStreamer; @@ -99,7 +101,6 @@ void QTestLogger::startLogging() } logFormatter->setLogger(this); - logFormatter->startStreaming(); } void QTestLogger::stopLogging() @@ -161,7 +162,7 @@ void QTestLogger::stopLogging() logFormatter->output(iterator); } - logFormatter->stopStreaming(); + QAbstractTestLogger::stopLogging(); } void QTestLogger::enterTestFunction(const char *function) -- 2.7.4