File indexing completed on 2024-09-22 04:12:33

0001 /*
0002     This file is part of KDevelop
0003 
0004     Copyright 2008 Evgeniy Ivanov <powerfox@kde.ru>
0005     Copyright 2009 Fabian Wiesel <fabian.wiesel@fu-berlin.de>
0006     Copyright 2017 Sergey Kalinichev <kalinichev.so.0@gmail.com>
0007 
0008     This library is free software; you can redistribute it and/or
0009     modify it under the terms of the GNU Library General Public
0010     License as published by the Free Software Foundation; either
0011     version 2 of the License, or (at your option) any later version.
0012 
0013     This library is distributed in the hope that it will be useful,
0014     but WITHOUT ANY WARRANTY; without even the implied warranty of
0015     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
0016     Library General Public License for more details.
0017 
0018     You should have received a copy of the GNU Library General Public License
0019     along with this library; see the file COPYING.LIB.  If not, write to
0020     the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
0021     Boston, MA 02110-1301, USA.
0022 */
0023 
0024 #pragma once
0025 
0026 #include <QObject>
0027 
0028 class MercurialPlugin;
0029 
0030 namespace KDevelop
0031 {
0032 class TestCore;
0033 }
0034 
0035 class MercurialTest: public QObject
0036 {
0037     Q_OBJECT
0038 
0039 private:
0040     void repoInit();
0041     void addFiles();
0042     void commitFiles();
0043     void cloneRepository();
0044 
0045 private slots:
0046     void testInit();
0047     void testAdd();
0048     void testCommit();
0049     void testBranching();
0050     void testRevisionHistory();
0051     void testAnnotate();
0052     void testDiff();
0053     void testAnnotateFailed();
0054     void testHeads();
0055 
0056     void initTestCase();
0057     void cleanupTestCase();
0058     void init();
0059     void cleanup();
0060 
0061 private:
0062     MercurialPlugin *m_proxy;
0063     KDevelop::TestCore *m_testCore;
0064     void removeTempDirs();
0065 };