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 <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
This commit is contained in:
Jason McDonald 2011-08-25 16:21:36 +10:00 committed by Qt by Nokia
parent c478ebc914
commit 3c48d26c5b
3 changed files with 4 additions and 57 deletions

View 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>
@ -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)

View 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;

View 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)