File indexing completed on 2024-04-21 04:40:04

0001 /* This file is part of the KDE project
0002    Copyright (C) 2012-2017 Jarosław Staniek <staniek@kde.org>
0003 
0004    This library is free software; you can redistribute it and/or
0005    modify it under the terms of the GNU Library General Public
0006    License as published by the Free Software Foundation; either
0007    version 2 of the License, or (at your option) any later version.
0008 
0009    This library is distributed in the hope that it will be useful,
0010    but WITHOUT ANY WARRANTY; without even the implied warranty of
0011    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
0012    Library General Public License for more details.
0013 
0014    You should have received a copy of the GNU Library General Public License
0015    along with this library; see the file COPYING.LIB.  If not, write to
0016    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
0017  * Boston, MA 02110-1301, USA.
0018 */
0019 
0020 #ifndef KDB_SQLPARSERTEST_H
0021 #define KDB_SQLPARSERTEST_H
0022 
0023 #include <QScopedPointer>
0024 #include <QFile>
0025 
0026 #include <KDbParser>
0027 
0028 #include "KDbTestUtils.h"
0029 
0030 class SqlParserTest : public QObject
0031 {
0032     Q_OBJECT
0033 private Q_SLOTS:
0034     void initTestCase();
0035     void testParse_data();
0036     void testParse();
0037     //! Tests a few tokens, they should have certain values, needed for maintaining BC
0038     void testTokens();
0039     void cleanupTestCase();
0040 
0041 private:
0042     //! Opens database needed for tests.
0043     bool openDatabase(const QString &path);
0044 
0045     KDbTestUtils m_utils;
0046     QScopedPointer<KDbParser> m_parser;
0047     QFile m_errorFile;
0048     QTextStream m_errorStream;
0049 };
0050 
0051 #endif