Warning, file /pim/trojita/tests/Composer/test_Html_formatting.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 /* Copyright (C) 2006 - 2014 Jan Kundrát <jkt@flaska.net>
0002 
0003    This file is part of the Trojita Qt IMAP e-mail client,
0004    http://trojita.flaska.net/
0005 
0006    This program is free software; you can redistribute it and/or
0007    modify it under the terms of the GNU General Public License as
0008    published by the Free Software Foundation; either version 2 of
0009    the License or (at your option) version 3 or any later version
0010    accepted by the membership of KDE e.V. (or its successor approved
0011    by the membership of KDE e.V.), which shall act as a proxy
0012    defined in Section 14 of version 3 of the license.
0013 
0014    This program is distributed in the hope that it will be useful,
0015    but WITHOUT ANY WARRANTY; without even the implied warranty of
0016    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
0017    GNU General Public License for more details.
0018 
0019    You should have received a copy of the GNU General Public License
0020    along with this program.  If not, see <http://www.gnu.org/licenses/>.
0021 */
0022 
0023 #ifndef TEST_HTML_FORMATTING
0024 #define TEST_HTML_FORMATTING
0025 
0026 #include <QTest>
0027 #include "UiUtils/PlainTextFormatter.h"
0028 
0029 class QWebView;
0030 
0031 /** @short Tests for HTML prettification of plaintext content */
0032 class HtmlFormattingTest : public QObject
0033 {
0034     Q_OBJECT
0035 private slots:
0036     void testPlainTextFormattingFlowed();
0037     void testPlainTextFormattingFlowed_data();
0038     void testPlainTextFormattingFlowedDelSp();
0039     void testPlainTextFormattingFlowedDelSp_data();
0040 
0041     void testPlainTextFormattingViaHtml();
0042     void testPlainTextFormattingViaHtml_data();
0043     void testPlainTextFormattingViaPaste();
0044     void testPlainTextFormattingViaPaste_data();
0045     void testPlainTextFormattingViaPasteDelSp();
0046     void testPlainTextFormattingViaPasteDelSp_data();
0047 
0048     void testLinkRecognition();
0049     void testLinkRecognition_data();
0050 
0051     void testUnrecognizedLinks();
0052     void testUnrecognizedLinks_data();
0053 
0054     void testSignatures();
0055     void testSignatures_data();
0056 };
0057 
0058 class WebRenderingTester: public QObject
0059 {
0060     Q_OBJECT
0061 public:
0062 
0063     typedef enum {
0064         RenderDefaultCollapsing,
0065         RenderExpandEverythingCollapsed
0066     } CollapsingFlags;
0067 
0068     WebRenderingTester();
0069     virtual ~WebRenderingTester();
0070     QString asPlainText(const QString &input, const UiUtils::FlowedFormat format,
0071                         const CollapsingFlags collapsing=RenderDefaultCollapsing);
0072 public slots:
0073     void doDelayedLoad();
0074 private:
0075     QWebView *m_web;
0076     QEventLoop *m_loop;
0077     QString sourceData;
0078 };
0079 
0080 #endif