1 #include "SayonaraTest.h" 2 #include "PlayManagerMock.h" 3 4 #include "Database/Connector.h" 5 6 #include "Utils/FileUtils.h" 7 #include "Utils/Logger/Logger.h" 8 #include "Utils/Settings/Settings.h" 9 #include "Utils/StandardPaths.h" 10 #include "Utils/Utils.h" 11 12 #include <QStandardPaths> 13 #include <QApplication> 14 #include <QDir> 15 16 using Test::Base; 17 18 // needs to be done in global namespace init_resources()19static void init_resources() 20 { 21 Q_INIT_RESOURCE(Test); 22 Q_INIT_RESOURCE(Database); 23 Q_INIT_RESOURCE(Resources); 24 } 25 Base(const QString & testName)26Test::Base::Base(const QString& testName) : 27 QObject(), 28 mTmpPath(Util::tempPath(testName)) 29 { 30 Util::File::removeFilesInDirectory(QDir::home().absoluteFilePath(".qttest")); 31 32 Util::File::createDirectories(mTmpPath); 33 QStandardPaths::setTestModeEnabled(true); 34 QApplication::setApplicationName("sayonara"); 35 36 init_resources(); 37 DB::Connector::instance_custom("", mTmpPath, ""); 38 Settings* s = Settings::instance(); 39 s->checkSettings(); 40 s->set<Set::Logger_Level>( int(Log::Develop) ); 41 42 this->setObjectName(testName); 43 } 44 ~Base()45Test::Base::~Base() 46 { 47 Util::File::deleteFiles({mTmpPath}); 48 Util::File::removeFilesInDirectory(QDir::home().absoluteFilePath(".qttest")); 49 } 50 tempPath() const51QString Test::Base::tempPath() const 52 { 53 return mTmpPath; 54 } 55 tempPath(const QString & append) const56QString Test::Base::tempPath(const QString& append) const 57 { 58 QDir d(tempPath()); 59 return d.absoluteFilePath(append); 60 } 61