phonebookui/cnthistorymodel/tsrc/mt_cnthistorymodel/testrunner.cpp
changeset 81 640d30f4fb64
parent 77 c18f9fa7f42e
child 84 63017c97b1d6
--- a/phonebookui/cnthistorymodel/tsrc/mt_cnthistorymodel/testrunner.cpp	Fri Oct 08 11:42:51 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,176 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-
-#include "testrunner.h"
-#include <QtTest/QtTest>
-#include <QDir>
-#include <stdio.h>
-
-const char testFunctionElement[] = "TestFunction";
-const char incidentElement[] = "Incident";
-const char descriptionElement[] = "Description";
-const char nameAttr[] = "name";
-const char typeAttr[] = "type";
-const char fileAttr[] = "file";
-const char lineAttr[] = "line";
-const char attrValueFail[] = "fail";
-
-
-TestRunner::TestRunner(const QString& name)
-: mTestCount(0),
-  mParsingIncidentElement(false),
-  mParsingDescriptionElement(false),
-  mCurrentTestFailed(false),
-  mCurrentTestFailureLine(0)
-{
-    mTestRunParams.append(name);
-    mTestRunParams.append("-xml");
-    mTestRunParams.append("-o");
-    mHomeDir = QDir::homePath();
-    mTestRunParams.append(QString()); // Initial result file name
-
-    if (!mHomeDir.endsWith(QString::fromAscii("/")))
-        mHomeDir += QString::fromAscii("/");
-}
-
-TestRunner::~TestRunner()
-{
-}
-
-int TestRunner::runTests(QObject& testObject)
-{
-    QString className(testObject.metaObject()->className());
-    printf("Running tests for %s ... ", className.toUtf8().data());
-    QString resultFileName = mHomeDir + className + ".xml";
-    mTestRunParams.replace(mTestRunParams.count()-1,resultFileName);
-    int errorsBefore = mErrors.count();
-    int error = QTest::qExec(&testObject, mTestRunParams);
-    parse(resultFileName);
-    printf("Failures: %d\n",mErrors.count()-errorsBefore);
-    fflush(stdout);
-    return error;
-}
-
-void TestRunner::printResults()
-{
-    printf("\nTests executed: %d\n",mTestCount);
-    if (mErrors.count() > 0) {
-        printf("Failures (%d):\n", mErrors.count());
-        foreach(QString error, mErrors) {
-            printf("\n%s", error.toUtf8().data());
-        }
-        printf("\n");
-    } else {
-        printf("All passed.\n\n");
-    }
-    fflush(stdout);
-    
-    //To write in file
-    QFile file("C:\\TestResult.txt");
-    if(file.open(QIODevice::WriteOnly)) 
-    {
-        QTextStream ts( &file );
-        ts << "Tests executed: " << mTestCount << "\n";
-        if (mErrors.count() > 0)
-        {
-            ts <<"Failures : " << mErrors.count() << "\n";
-            foreach(QString error, mErrors)
-                {
-                    ts << error.toUtf8().data();
-                }
-            ts << "\n";
-        }
-        else
-        {
-            ts<< "All passed.\n\n";
-        }
-        
-        ts << endl;
-        file.close();
-    } 
-}
-
-void TestRunner::parse(const QString& fileName)
-{
-    QFile file(fileName);
-    QXmlInputSource inputSource(&file);
-    QXmlSimpleReader reader;
-    reader.setContentHandler(this);
-    reader.parse(inputSource);
-}
-
-bool TestRunner::startElement(
-    const QString& /*namespaceURI*/, 
-    const QString& /*localName*/, 
-    const QString& qName, 
-    const QXmlAttributes& atts)
-{
-    if (qName == QString::fromAscii(testFunctionElement)) {
-        mTestCount++;
-        mCurrentTestName = atts.value(QString::fromAscii(nameAttr));
-        return true;
-    }
-    if (qName == QString::fromAscii(incidentElement)) {
-        mParsingIncidentElement = true;
-        if (atts.value(QString::fromAscii(typeAttr)) == QString::fromAscii(attrValueFail)) {
-            mCurrentTestFailed = true;
-            mCurrentTestFile = atts.value(QString::fromAscii(fileAttr));
-            mCurrentTestFailureLine = atts.value(QString::fromAscii(lineAttr)).toInt();
-        }
-        return true;
-    }
-    mParsingDescriptionElement =
-        (qName == QString::fromAscii(descriptionElement));
-    return true;
-}
-
-bool TestRunner::endElement(
-    const QString& /*namespaceURI*/,
-    const QString& /*localName*/,
-    const QString& qName)
-{
-    if (qName == QString::fromAscii(incidentElement)) {
-        mParsingIncidentElement = false;
-        mCurrentTestFailed = false;
-        return true;
-    }
-    if (qName == QString::fromAscii(descriptionElement)) {
-        mParsingDescriptionElement = false;
-    }    
-    return true;
-}
-
-bool TestRunner::characters(const QString& ch)
-{
-    if (mParsingIncidentElement && 
-        mParsingDescriptionElement &&
-        mCurrentTestFailed) {
-        QByteArray testResult = mCurrentTestName.toAscii() + " failed:\n";
-        testResult += "File: ";
-        testResult += mCurrentTestFile.toAscii();
-        testResult += "\n";
-        testResult += "Line: ";
-        testResult += QByteArray::number(mCurrentTestFailureLine);
-        testResult += "\n";
-        testResult += "Reason: ";
-        testResult += ch.toAscii();
-        testResult += "\n";
-        mErrors.append(QString::fromAscii(testResult.data()));
-    }
-    return true;
-}
-