diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/application.cpp | 2 | ||||
| -rw-r--r-- | src/mainview.cpp | 3 | ||||
| -rw-r--r-- | src/mainview.h | 3 | ||||
| -rw-r--r-- | src/tests/CMakeLists.txt | 22 | ||||
| -rw-r--r-- | src/tests/mainview_test.cpp | 443 | ||||
| -rw-r--r-- | src/tests/tabbar_test.cpp | 17 | ||||
| -rw-r--r-- | src/urlbar.cpp | 3 | 
7 files changed, 477 insertions, 16 deletions
| diff --git a/src/application.cpp b/src/application.cpp index 634e068f..8e65b394 100644 --- a/src/application.cpp +++ b/src/application.cpp @@ -172,7 +172,7 @@ int Application::newInstance()  Application *Application::instance()  { -    return (static_cast<Application *>(QCoreApplication::instance())); +    return (qobject_cast<Application *>(QCoreApplication::instance()));  } diff --git a/src/mainview.cpp b/src/mainview.cpp index 04ede24c..c4b0cfc2 100644 --- a/src/mainview.cpp +++ b/src/mainview.cpp @@ -91,9 +91,6 @@ MainView::MainView(QWidget *parent)      connect(m_tabBar, SIGNAL(reloadAllTabs()), this, SLOT(slotReloadAllTabs()));      connect(m_tabBar, SIGNAL(tabCloseRequested(int)), this, SLOT(slotCloseTab(int))); - -    // connecting urlbar signals -    connect(urlBar(), SIGNAL(activated(const KUrl&)), Application::instance(), SLOT(loadUrl(const KUrl&)));      // current page index changing      connect(this, SIGNAL(currentChanged(int)), this, SLOT(slotCurrentChanged(int))); diff --git a/src/mainview.h b/src/mainview.h index f0fe183d..dc0393fa 100644 --- a/src/mainview.h +++ b/src/mainview.h @@ -31,6 +31,7 @@  // Local Includes +#include "rekonqprivate_export.h"  #include "webview.h"  #include "webpage.h"  #include "application.h" @@ -58,7 +59,7 @@ class UrlBar;   *   */ -class MainView : public KTabWidget +class REKONQ_TESTS_EXPORT MainView : public KTabWidget  {      Q_OBJECT diff --git a/src/tests/CMakeLists.txt b/src/tests/CMakeLists.txt index 9963acd4..5df23e24 100644 --- a/src/tests/CMakeLists.txt +++ b/src/tests/CMakeLists.txt @@ -1,4 +1,4 @@ -### ---------- General Settings ------- +##### ---------- General Settings ----------  SET( EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} ) @@ -7,16 +7,26 @@ INCLUDE_DIRECTORIES (   ${CMAKE_CURRENT_BINARY_DIR}/..                          ${QT4_INCLUDES}  ) -##### -------------tabbar test +##### ------------- tabbar test + +kde4_add_unit_test( tabbar_test tabbar_test.cpp ) -kde4_add_unit_test( tabbar_test TEST tabbar_test.cpp ) -   target_link_libraries( tabbar_test      kdeinit_rekonq      ${KDE4_KDECORE_LIBS}      ${KDE4_KDEUI_LIBS} -    ${QT_QTCORE_LIBRARY}      ${QT_QTTEST_LIBRARY}  ) -# -------------- +##### ------------- mainview test + +kde4_add_unit_test( mainview_test mainview_test.cpp ) +  +target_link_libraries( mainview_test +    kdeinit_rekonq +    ${KDE4_KDECORE_LIBS} +    ${KDE4_KDEUI_LIBS} +    ${QT_QTTEST_LIBRARY} +) + +############################################################ diff --git a/src/tests/mainview_test.cpp b/src/tests/mainview_test.cpp new file mode 100644 index 00000000..f56d73ab --- /dev/null +++ b/src/tests/mainview_test.cpp @@ -0,0 +1,443 @@ +/* ============================================================ +* +* This file is a part of the rekonq project +* +* Copyright 2008 Benjamin C. Meyer <ben@meyerhome.net> +* Copyright 2009 by Andrea Diamantini <adjam7 at gmail dot com> +* +* +* This program is free software; you can redistribute it and/or +* modify it under the terms of the GNU General Public License as +* published by the Free Software Foundation; either version 2 of +* the License or (at your option) version 3 or any later version +* accepted by the membership of KDE e.V. (or its successor approved +* by the membership of KDE e.V.), which shall act as a proxy  +* defined in Section 14 of version 3 of the license. +*  +* This program 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 General Public License for more details. +* +* You should have received a copy of the GNU General Public License +* along with this program.  If not, see <http://www.gnu.org/licenses/>. +* +* ============================================================ */ + + +#include <qtest_kde.h> + +#include <QtTest> +#include <QtCore> +#include <QtGui> + +#include "../mainview.h" +#include "../webview.h" + + +class MainViewTest : public QObject +{ +    Q_OBJECT + +public slots: +    void initTestCase(); +    void cleanupTestCase(); +    void init(); +    void cleanup(); + +private slots: +    void tabwidget_data(); +    void tabwidget(); +     +    void closeTab_data(); +    void closeTab(); +     +    void currentWebView_data(); +    void currentWebView(); +     +    void newTab_data(); +    void newTab(); +     +    void nextTab_data(); +    void nextTab(); +     +    void previousTab_data(); +    void previousTab(); +     +    void recentlyClosedTabs_data(); +    void recentlyClosedTabs(); +     +    void setCurrentTitle_data(); +    void setCurrentTitle(const QString &); +     +    void showStatusBarMessage_data(); +    void showStatusBarMessage(const QString &); +     +    void currentChanged_data(); +    void currentChanged(); +}; + + +// Subclass that exposes the protected functions. +class SubMainView : public MainView +{ +public: +    void call_resizeEvent(QResizeEvent *event) +        { return SubMainView::resizeEvent(event); } +}; + + +// This will be called before the first test function is executed. +// It is only called once. +void MainViewTest::initTestCase() +{ +} + +// This will be called after the last test function is executed. +// It is only called once. +void MainViewTest::cleanupTestCase() +{ +} + +// This will be called before each test function is executed. +void MainViewTest::init() +{ +} + +// This will be called after every test function. +void MainViewTest::cleanup() +{ +} + +// ------------------------------------------- + +void MainViewTest::tabwidget_data() +{ +} + +void MainViewTest::tabwidget() +{ +    SubMainView widget; +//     widget.currentWebView(); +//     QCOMPARE(widget.currentIndex(), 0); +//     widget.newTab(); +//     widget.nextTab(); +//     QCOMPARE(widget.currentIndex(), 1); +//     widget.previousTab(); +//     QCOMPARE(widget.currentIndex(), 0); +} + +// ------------------------------------------- + +void MainViewTest::closeTab_data() +{ +    QTest::addColumn<int>("index"); +    QTest::newRow("null") << 0; +} + +// public void closeTab(int index = -1) +void MainViewTest::closeTab() +{ +    QFETCH(int, index); + +    SubMainView widget; +/* +    QSignalSpy spy0(&widget, SIGNAL(linkHovered(const QString &))); +    QSignalSpy spy3(&widget, SIGNAL(setCurrentTitle(const QString &))); +QSignalSpy spy5(&widget, SIGNAL(tabsChanged())); +    QSignalSpy spy6(&widget, SIGNAL(lastTabClosed())); + +    widget.newTab(); +    widget.slotCloseTab(index); +    widget.newTab(); +    widget.slotCloseTab(index); +    widget.newTab(); + +    QCOMPARE(spy0.count(), 0); +    QCOMPARE(spy3.count(), 2); +    QCOMPARE(spy5.count(), 0); +    QCOMPARE(spy6.count(), 0);*/ +} + +// ------------------------------------------- + +Q_DECLARE_METATYPE(WebView*) +void MainViewTest::currentWebView_data() +{ +    /* +    QTest::addColumn<WebView*>("currentWebView"); +    QTest::newRow("null") << WebView*(); +    */ +} + +// public WebView *currentWebView() const +void MainViewTest::currentWebView() +{ +    /* +    QFETCH(WebView*, currentWebView); + +    SubMainView widget; + +    QSignalSpy spy0(&widget, SIGNAL(linkHovered(const QString &))); +    QSignalSpy spy2(&widget, SIGNAL(loadProgress(int))); +    QSignalSpy spy3(&widget, SIGNAL(setCurrentTitle(const QString &))); +    QSignalSpy spy4(&widget, SIGNAL(showStatusBarMessage(const QString &))); +    QSignalSpy spy5(&widget, SIGNAL(tabsChanged())); +    QSignalSpy spy6(&widget, SIGNAL(lastTabClosed())); + +    QCOMPARE(widget.currentWebView(), currentWebView); + +    QCOMPARE(spy0.count(), 0); +    QCOMPARE(spy2.count(), 0); +    QCOMPARE(spy3.count(), 0); +    QCOMPARE(spy4.count(), 0); +    QCOMPARE(spy5.count(), 0); +    QCOMPARE(spy6.count(), 0); +    */ +    QSKIP("Test is not implemented.", SkipAll); +} + +// ------------------------------------------- + +void MainViewTest::newTab_data() +{ +    QTest::addColumn<int>("foo"); +    QTest::newRow("null") << 0; +} + +// public void newTab() +void MainViewTest::newTab() +{ +    /* +    QFETCH(int, foo); + +    SubMainView widget; + +    QSignalSpy spy0(&widget, SIGNAL(linkHovered(const QString &))); +    QSignalSpy spy2(&widget, SIGNAL(loadProgress(int))); +    QSignalSpy spy3(&widget, SIGNAL(setCurrentTitle(const QString &))); +    QSignalSpy spy4(&widget, SIGNAL(showStatusBarMessage(const QString &))); +    QSignalSpy spy5(&widget, SIGNAL(tabsChanged())); +    QSignalSpy spy6(&widget, SIGNAL(lastTabClosed())); + +    widget.newTab(); + +    QCOMPARE(spy0.count(), 0); +    QCOMPARE(spy2.count(), 0); +    QCOMPARE(spy3.count(), 0); +    QCOMPARE(spy4.count(), 0); +    QCOMPARE(spy5.count(), 0); +    QCOMPARE(spy6.count(), 0); +    */ +    QSKIP("Test is not implemented.", SkipAll); +} + +// ------------------------------------------- + +void MainViewTest::nextTab_data() +{ +    QTest::addColumn<int>("foo"); +    QTest::newRow("null") << 0; +} + +// public void nextTab() +void MainViewTest::nextTab() +{ +    /* +    QFETCH(int, foo); + +    SubMainView widget; + +    QSignalSpy spy0(&widget, SIGNAL(linkHovered(const QString &))); +    QSignalSpy spy2(&widget, SIGNAL(loadProgress(int))); +    QSignalSpy spy3(&widget, SIGNAL(setCurrentTitle(const QString &))); +    QSignalSpy spy4(&widget, SIGNAL(showStatusBarMessage(const QString &))); +    QSignalSpy spy5(&widget, SIGNAL(tabsChanged())); +    QSignalSpy spy6(&widget, SIGNAL(lastTabClosed())); + +    widget.nextTab(); + +    QCOMPARE(spy0.count(), 0); +    QCOMPARE(spy2.count(), 0); +    QCOMPARE(spy3.count(), 0); +    QCOMPARE(spy4.count(), 0); +    QCOMPARE(spy5.count(), 0); +    QCOMPARE(spy6.count(), 0); +    */ +    QSKIP("Test is not implemented.", SkipAll); +} + +// ------------------------------------------- + +void MainViewTest::previousTab_data() +{ +    QTest::addColumn<int>("foo"); +    QTest::newRow("null") << 0; +} + + +// public void previousTab() +void MainViewTest::previousTab() +{ +    /* +    QFETCH(int, foo); + +    SubMainView widget; + +    QSignalSpy spy0(&widget, SIGNAL(linkHovered(const QString &))); +    QSignalSpy spy2(&widget, SIGNAL(loadProgress(int))); +    QSignalSpy spy3(&widget, SIGNAL(setCurrentTitle(const QString &))); +    QSignalSpy spy4(&widget, SIGNAL(showStatusBarMessage(const QString &))); +    QSignalSpy spy5(&widget, SIGNAL(tabsChanged())); +    QSignalSpy spy6(&widget, SIGNAL(lastTabClosed())); + +    widget.previousTab(); + +    QCOMPARE(spy0.count(), 0); +    QCOMPARE(spy2.count(), 0); +    QCOMPARE(spy3.count(), 0); +    QCOMPARE(spy4.count(), 0); +    QCOMPARE(spy5.count(), 0); +    QCOMPARE(spy6.count(), 0); +    */ +    QSKIP("Test is not implemented.", SkipAll); +} + +// ------------------------------------------- + +void MainViewTest::recentlyClosedTabs_data() +{ +} + +void MainViewTest::recentlyClosedTabs() +{ +    /* +    SubMainView widget; + +    QSignalSpy spy0(&widget, SIGNAL(linkHovered(const QString &))); +    QSignalSpy spy2(&widget, SIGNAL(loadProgress(int))); +    QSignalSpy spy3(&widget, SIGNAL(setCurrentTitle(const QString &))); +    QSignalSpy spy4(&widget, SIGNAL(showStatusBarMessage(const QString &))); +    QSignalSpy spy5(&widget, SIGNAL(tabsChanged())); +    QSignalSpy spy6(&widget, SIGNAL(lastTabClosed())); + +    QCOMPARE(spy0.count(), 0); +    QCOMPARE(spy2.count(), 0); +    QCOMPARE(spy3.count(), 0); +    QCOMPARE(spy4.count(), 0); +    QCOMPARE(spy5.count(), 0); +    QCOMPARE(spy6.count(), 0); +    */ +    QSKIP("Test is not implemented.", SkipAll); +} + +// ------------------------------------------- + +void MainViewTest::setCurrentTitle_data() +{ +    QTest::addColumn<QString>("url"); +    QTest::newRow("null") << QString("foo"); +} + +// protected void setCurrentTitle(QString const &url) +void MainViewTest::setCurrentTitle(const QString &) +{ +    /* +    QFETCH(QString, url); + +    SubMainView widget; + +    QSignalSpy spy0(&widget, SIGNAL(linkHovered(const QString &))); +    QSignalSpy spy2(&widget, SIGNAL(loadProgress(int))); +    QSignalSpy spy3(&widget, SIGNAL(setCurrentTitle(const QString &))); +    QSignalSpy spy4(&widget, SIGNAL(showStatusBarMessage(const QString &))); +    QSignalSpy spy5(&widget, SIGNAL(tabsChanged())); +    QSignalSpy spy6(&widget, SIGNAL(lastTabClosed())); + +    widget.call_setCurrentTitle(url); + +    QCOMPARE(spy0.count(), 0); +    QCOMPARE(spy2.count(), 0); +    QCOMPARE(spy3.count(), 0); +    QCOMPARE(spy4.count(), 0); +    QCOMPARE(spy5.count(), 0); +    QCOMPARE(spy6.count(), 0); +    */ +    QSKIP("Test is not implemented.", SkipAll); +} + +// ------------------------------------------- + +void MainViewTest::showStatusBarMessage_data() +{ +    QTest::addColumn<QString>("message"); +    QTest::newRow("null") << QString("foo"); +} + +// protected void showStatusBarMessage(QString const &message) +void MainViewTest::showStatusBarMessage(const QString &) +{ +    /* +    QFETCH(QString, message); + +    SubMainView widget; + +    QSignalSpy spy0(&widget, SIGNAL(linkHovered(const QString &))); +    QSignalSpy spy2(&widget, SIGNAL(loadProgress(int))); +    QSignalSpy spy3(&widget, SIGNAL(setCurrentTitle(const QString &))); +    QSignalSpy spy4(&widget, SIGNAL(showStatusBarMessage(const QString &))); +    QSignalSpy spy5(&widget, SIGNAL(tabsChanged())); +    QSignalSpy spy6(&widget, SIGNAL(lastTabClosed())); + +    widget.call_showStatusBarMessage(message); + +    QCOMPARE(spy0.count(), 0); +    QCOMPARE(spy2.count(), 0); +    QCOMPARE(spy3.count(), 0); +    QCOMPARE(spy4.count(), 0); +    QCOMPARE(spy5.count(), 0); +    QCOMPARE(spy6.count(), 0); +    */ +    QSKIP("Test is not implemented.", SkipAll); +} + +// ------------------------------------------- + +// void slotCurrentChanged(int index); +void MainViewTest::currentChanged_data() +{ +    QTest::addColumn<int>("foo"); +    QTest::newRow("null") << 0; +} + +// private slotCurrentChanged +void MainViewTest::currentChanged() +{ +    /* +    QFETCH(int, foo); + +    SubMainView widget; + +    QSignalSpy spy0(&widget, SIGNAL(linkHovered(const QString &))); +    QSignalSpy spy2(&widget, SIGNAL(loadProgress(int))); +    QSignalSpy spy3(&widget, SIGNAL(setCurrentTitle(const QString &))); +    QSignalSpy spy4(&widget, SIGNAL(showStatusBarMessage(const QString &))); +    QSignalSpy spy5(&widget, SIGNAL(tabsChanged())); +    QSignalSpy spy6(&widget, SIGNAL(lastTabClosed())); + +    widget.call_tabsChanged(); + +    QCOMPARE(spy0.count(), 0); +    QCOMPARE(spy2.count(), 0); +    QCOMPARE(spy3.count(), 0); +    QCOMPARE(spy4.count(), 0); +    QCOMPARE(spy5.count(), 0); +    QCOMPARE(spy6.count(), 0); +    */ +    QSKIP("Test is not implemented.", SkipAll); +} + +// ------------------------------------------- + +QTEST_KDEMAIN(MainViewTest, GUI) +#include "mainview_test.moc" diff --git a/src/tests/tabbar_test.cpp b/src/tests/tabbar_test.cpp index 7b40c487..08f295d1 100644 --- a/src/tests/tabbar_test.cpp +++ b/src/tests/tabbar_test.cpp @@ -18,8 +18,11 @@   * Boston, MA  02110-1301  USA   */ -#include <QtGui/QtGui> -#include <QtTest/QtTest> +#include <qtest_kde.h> + +#include <QtTest> +#include <QtCore> +#include <QtGui>  #include "../tabbar.h" @@ -101,6 +104,7 @@ void TabBarTest::cleanup()  {  } +// -------------------------------------------  void TabBarTest::tabbar_data()  { @@ -109,8 +113,10 @@ void TabBarTest::tabbar_data()  void TabBarTest::tabbar()  { +    SubTabBar widget;  } +// -------------------------------------------  void TabBarTest::tabSizeHint_data()  { @@ -127,7 +133,8 @@ void TabBarTest::tabSizeHint()  //     SubTabBar bar;  //     QVERIFY(bar.call_tabSizeHint(index).width() <= 250);  } +     +// ------------------------------------------- - -QTEST_MAIN(TabBarTest) -#include "tst_tabbar.moc" +QTEST_KDEMAIN(TabBarTest, GUI) +#include "tabbar_test.moc" diff --git a/src/urlbar.cpp b/src/urlbar.cpp index d587fd80..81185409 100644 --- a/src/urlbar.cpp +++ b/src/urlbar.cpp @@ -81,6 +81,9 @@ UrlBar::UrlBar(QWidget *parent)      QPalette p = view()->palette();      p.setColor(QPalette::Base, palette().color(QPalette::Base));      view()->setPalette(p); + +    // load urls on activated urlbar signal +    connect(this, SIGNAL(activated(const KUrl&)), Application::instance(), SLOT(loadUrl(const KUrl&)));  } | 
