Remove duplicated code from QTestBasicStreamer.
authorJason McDonald <jason.mcdonald@nokia.com>
Thu, 25 Aug 2011 06:21:36 +0000 (16:21 +1000)
committerQt by Nokia <qt-info@nokia.com>
Fri, 26 Aug 2011 06:02:32 +0000 (08:02 +0200)
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 <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
src/testlib/qtestbasicstreamer.cpp
src/testlib/qtestbasicstreamer.h
src/testlib/qtestlogger.cpp

index 25e48ee..50933b9 100644 (file)
@@ -43,8 +43,6 @@
 #include "qtestlogger_p.h"
 #include "qtestelement.h"
 #include "qtestelementattribute.h"
-#include "QtTest/private/qtestlog_p.h"
-#include "qtestassert.h"
 
 #include <stdio.h>
 #include <stdlib.h>
 
 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)
index 867c1f1..371bb49 100644 (file)
@@ -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;
index 2c81a4b..316e89f 100644 (file)
@@ -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)