summaryrefslogtreecommitdiffstats
path: root/khtml/test_regression.h
diff options
context:
space:
mode:
Diffstat (limited to 'khtml/test_regression.h')
-rw-r--r--khtml/test_regression.h194
1 files changed, 0 insertions, 194 deletions
diff --git a/khtml/test_regression.h b/khtml/test_regression.h
deleted file mode 100644
index df76f4439..000000000
--- a/khtml/test_regression.h
+++ /dev/null
@@ -1,194 +0,0 @@
-/**
- * This file is part of the KDE project
- *
- * Copyright (C) 2001,2003 Peter Kelly (pmk@post.com)
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- *
- */
-
-#ifndef TEST_REGRESSION_H
-#define TEST_REGRESSION_H
-
-#include <khtml_part.h>
-#include <kurl.h>
-#include <tqobject.h>
-#include <kjs/ustring.h>
-#include <kjs/object.h>
-#include <kjs/interpreter.h>
-
-class RegressionTest;
-class TQTimer;
-
-/**
- * @internal
- */
-class PartMonitor : public TQObject
-{
- Q_OBJECT
-public:
- PartMonitor(KHTMLPart *_part);
- ~PartMonitor();
- void waitForCompletion();
- static PartMonitor* sm_highestMonitor;
- bool m_completed;
- KHTMLPart *m_part;
- int m_timer_waits;
- TQTimer *m_timeout_timer;
-public slots:
- void partCompleted();
- void timeout();
- void finishTimers();
-};
-
-/**
- * @internal
- */
-class RegTestObject : public KJS::ObjectImp
-{
-public:
- RegTestObject(KJS::ExecState *exec, RegressionTest *_regTest);
-
-private:
- RegressionTest *m_regTest;
-};
-
-/**
- * @internal
- */
-class RegTestFunction : public KJS::ObjectImp
-{
-public:
- RegTestFunction(KJS::ExecState *exec, RegressionTest *_regTest, int _id, int length);
-
- bool implementsCall() const;
- KJS::Value call(KJS::ExecState *exec, KJS::Object &thisObj, const KJS::List &args);
-
- enum { Print, ReportResult, CheckOutput, Quit };
-
-private:
- RegressionTest *m_regTest;
- int id;
-};
-
-/**
- * @internal
- */
-class KHTMLPartObject : public KJS::ObjectImp
-{
-public:
- KHTMLPartObject(KJS::ExecState *exec, KHTMLPart *_part);
-
- virtual KJS::Value get(KJS::ExecState *exec, const KJS::Identifier &propertyName) const;
-
-private:
- KHTMLPart *m_part;
-};
-
-/**
- * @internal
- */
-class KHTMLPartFunction : public KJS::ObjectImp
-{
-public:
- KHTMLPartFunction(KJS::ExecState *exec, KHTMLPart *_part, int _id, int length);
-
- bool implementsCall() const;
- KJS::Value call(KJS::ExecState *exec, KJS::Object &thisObj, const KJS::List &args);
-
- enum { OpenPage, OpenPageAsUrl, Begin, Write, End, ExecuteScript, ProcessEvents };
-private:
- KHTMLPart *m_part;
- int id;
-};
-
-namespace KJS {
-class ScriptInterpreter;
-}
-
-/**
- * @internal
- */
-class RegressionTest : public TQObject
-{
- Q_OBJECT
-public:
-
- RegressionTest(KHTMLPart *part, const TQString &baseDir, const TQString &outputDir,
- bool _genOutput, bool runJS, bool runHTML);
- ~RegressionTest();
-
- enum OutputType { DOMTree, RenderTree };
- TQString getPartOutput( OutputType type );
- void getPartDOMOutput( TQTextStream &outputStream, KHTMLPart* part, uint indent );
- void dumpRenderTree( TQTextStream &outputStream, KHTMLPart* part );
- void testStaticFile(const TQString& filename);
- void testJSFile(const TQString& filename);
- enum CheckResult { Failure = 0, Success = 1, Ignored = 2 };
- CheckResult checkOutput(const TQString& againstFilename);
- CheckResult checkPaintdump( const TQString& againstFilename);
- enum FailureType { NoFailure = 0, AllFailure = 1, RenderFailure = 2, DomFailure = 4, PaintFailure = 8, JSFailure = 16};
- bool runTests(TQString relPath = TQString::null, bool mustExist = false, int known_failure = NoFailure);
- bool reportResult( bool passed, const TQString & description = TQString::null );
- bool reportResult(CheckResult result, const TQString & description = TQString::null );
- void createMissingDirs(const TQString &path);
-
- TQImage renderToImage();
- bool imageEqual( const TQImage &lhs, const TQImage &rhs );
- void createLink( const TQString& test, int failures );
- void doJavascriptReport( const TQString &test );
- void doFailureReport( const TQString& test, int failures );
-
- KHTMLPart *m_part;
- TQString m_baseDir;
- TQString m_outputDir;
- bool m_genOutput;
- TQString m_currentBase;
-
- TQString m_currentOutput;
- TQString m_currentCategory;
- TQString m_currentTest;
- TQPixmap* m_paintBuffer;
-
- bool m_getOutput;
- bool m_runJS;
- bool m_runHTML;
- int m_passes_work;
- int m_passes_fail;
- int m_failures_work;
- int m_failures_fail;
- int m_errors;
- bool saw_failure;
- bool ignore_errors;
- int m_known_failures;
-
- static RegressionTest *curr;
-
-private:
- void printDescription(const TQString& description);
-
- static bool svnIgnored( const TQString &filename );
-
-private:
- void evalJS( KJS::ScriptInterpreter &interp, const TQString &filename, bool report ); // used by testJS
-
-private slots:
- void slotOpenURL(const KURL &url, const KParts::URLArgs &args);
- void resizeTopLevelWidget( int, int );
-
-};
-
-#endif