File indexing completed on 2024-05-05 04:04:23
0001 /* 0002 KShisen - A japanese game similar to Mahjongg 0003 SPDX-FileCopyrightText: 2016 Frederik Schwarzer <schwarzer@kde.org> 0004 0005 SPDX-License-Identifier: GPL-2.0-or-later 0006 */ 0007 0008 #ifndef MOVETEST_H 0009 #define MOVETEST_H 0010 0011 #include <QTest> 0012 0013 #include "../move.h" 0014 #include "../types.h" 0015 0016 class MoveTest : public QObject 0017 { 0018 Q_OBJECT 0019 private Q_SLOTS: 0020 void initTestCase(); 0021 0022 void x1() const; 0023 void y1() const; 0024 void x2() const; 0025 void y2() const; 0026 void tile1() const; 0027 void tile2() const; 0028 void hasSlide() const; 0029 void slide() const; 0030 void slideX1() const; 0031 void slideY1() const; 0032 void slideX2() const; 0033 void slideY2() const; 0034 void swapTiles(); 0035 0036 void cleanupTestCase(); 0037 0038 private: 0039 KShisen::TilePos m_tile1{1, 2}; 0040 KShisen::TilePos m_tile2{3, 4}; 0041 KShisen::TilePos m_tile3{5, 6}; 0042 KShisen::TilePos m_tile4{7, 8}; 0043 KShisen::TilePos m_slidePos1{15, 16}; 0044 KShisen::TilePos m_slidePos2{17, 18}; 0045 KShisen::Move m_moveWithoutSlide{m_tile1, m_tile2, 12, 34}; 0046 KShisen::Move m_moveWithSlide{m_tile3, m_tile4, 56, 78, KShisen::Slide() << m_slidePos1 << m_slidePos2}; 0047 }; 0048 0049 #endif // MOVETEST_H