#include #include "databaseapi.h" // add necessary includes here class DatabaseTest : public QObject { Q_OBJECT private slots: void open_database_test(); void open_database_ip_fail_test(); void open_database_name_fail_test(); void open_database_user_fail_test(); void open_database_password_fail_test(); void download_data_test(); void download_data_fail_test(); }; void DatabaseTest::open_database_test() { serversdk::DatabaseManager dbManager; DatabaseAPI db(&dbManager, false); QVERIFY(db.open()); // TODO: fix -> databaseAPI must be able to add credentials to check for wrong one or test wrong IP //db.open(user, password, url, etc ); // then test with wrong credentials // QVERIFY(!db.open(worng usernae)); // QVERIFY(!db.open(worng ip)); } void DatabaseTest::open_database_ip_fail_test() { serversdk::DatabaseManager dbManager; DatabaseAPI db(&dbManager, false); QVERIFY(!db.open("1.1.1.1")); } void DatabaseTest::open_database_name_fail_test() { serversdk::DatabaseManager dbManager; DatabaseAPI db(&dbManager, false); QVERIFY(!db.open("192.168.1.94", "wrong name")); } void DatabaseTest::open_database_user_fail_test() { serversdk::DatabaseManager dbManager; DatabaseAPI db(&dbManager, false); QVERIFY(!db.open("192.168.1.94", "delliote", "wrong user")); } void DatabaseTest::open_database_password_fail_test() { serversdk::DatabaseManager dbManager; DatabaseAPI db(&dbManager, false); QVERIFY(!db.open("192.168.1.94", "delliote", "postgres", "wrong password")); } void DatabaseTest::download_data_test() { serversdk::DatabaseManager dbManager; DatabaseAPI db(&dbManager, false); db.open(); QVERIFY(db.downloadData()); } void DatabaseTest::download_data_fail_test() { serversdk::DatabaseManager dbManager; DatabaseAPI db(&dbManager, false); // fail open so download data should return nullptr db.open("1.1.1.1"); QVERIFY(!db.downloadData()); } QTEST_APPLESS_MAIN(DatabaseTest) #include "tst_databaseapi.moc"