Snake/SnakeServer/serverProtocolTests/tst_testsnakeserver.cpp

641 lines
16 KiB
C++
Raw Normal View History

2019-02-13 13:03:40 +03:00
#include <QtTest>
#include <cp.h>
#include <sp.h>
#include <thread>
#include <quasarapp.h>
#include <QCoreApplication>
#include <QCryptographicHash>
2019-04-17 15:16:11 +03:00
#include <sqldbwriter.h>
#include <sqldbcache.h>
2019-04-30 16:29:36 +03:00
#include <snake.h>
2019-04-30 17:25:36 +03:00
#include <playerdbdata.h>
#include <mainserver.h>
2019-03-05 00:48:32 +03:00
#include "factorynetobjects.h"
2019-06-12 08:10:12 +03:00
#include "testutils.h"
2019-02-13 13:03:40 +03:00
// add necessary includes here
2019-05-26 13:52:16 +03:00
#define TEST_LOCAL_SERVER QString(DEFAULT_SERVER) + "Test"
#define TEST_SERVER_ADDRESS LOCAL_SNAKE_SERVER
#define TEST_SERVER_PORT 27777
2019-02-13 13:03:40 +03:00
class testSankeServer : public QObject
{
Q_OBJECT
private:
void testPingServerProtockol(ServerProtocol::Client &cle);
void testStateServerProtockol(ServerProtocol::Client &cle);
void testBanServerProtockol(ServerProtocol::Client& cle);
void testUnBanServerProtockol(ServerProtocol::Client& cle);
void testRestartServerProtockol(ServerProtocol::Client& cle);
void testStopServerProtockol(ServerProtocol::Client& cle);
2019-02-16 17:08:00 +03:00
2019-06-12 08:10:12 +03:00
void testPingClientProtockol(ClientProtocol::Client& cle);
void testLogin(ClientProtocol::Client& cle);
void testUserData(ClientProtocol::Client& cle);
void testGetItem(ClientProtocol::Client& cle);
void testApplyData(ClientProtocol::Client& cle);
2019-07-27 17:03:59 +03:00
void testWebSockets(ClientProtocol::Client& cle);
2019-04-12 17:25:17 +03:00
void testBaseSql();
void testSqlCache();
2019-02-13 13:03:40 +03:00
public:
testSankeServer();
2019-02-13 13:03:40 +03:00
~testSankeServer();
private slots:
void initTestCase();
void cleanupTestCase();
2019-06-12 08:10:12 +03:00
void testProtockols();
// void testClientProtockol();
void testSql();
2019-04-12 17:25:17 +03:00
2019-02-13 13:03:40 +03:00
};
2019-05-13 10:13:22 +03:00
testSankeServer::testSankeServer() {
2019-05-26 18:07:04 +03:00
QuasarAppUtils::Params::setArg("verbose", 3);
2019-02-13 13:03:40 +03:00
}
2019-05-13 10:13:22 +03:00
testSankeServer::~testSankeServer() {
2019-02-13 13:03:40 +03:00
}
2019-05-13 10:13:22 +03:00
void testSankeServer::initTestCase() {
2019-04-29 14:39:48 +03:00
ClientProtocol::initClientProtockol();
2019-02-13 13:03:40 +03:00
}
2019-05-13 10:13:22 +03:00
void testSankeServer::cleanupTestCase() {
2019-02-13 13:03:40 +03:00
}
void testSankeServer::testPingServerProtockol(ServerProtocol::Client &cle) {
2019-02-13 13:03:40 +03:00
bool isWork = false;
2019-05-26 18:07:04 +03:00
bool received = false;
QMetaObject::Connection m_connection;
2019-02-13 13:03:40 +03:00
m_connection = QObject::connect(&cle, &ServerProtocol::Client::sigIncommingData,
2019-05-26 18:07:04 +03:00
[&isWork, &received, &m_connection] (const QVariantMap& map) {
2019-02-13 13:03:40 +03:00
isWork = map["res"].toString() == "Pong";
disconnect(m_connection);
2019-05-26 18:07:04 +03:00
received = true;
2019-02-13 13:03:40 +03:00
});
2019-02-13 13:03:40 +03:00
QVERIFY(cle.ping());
2019-02-13 13:03:40 +03:00
2019-05-26 18:07:04 +03:00
QVERIFY(cle.wait(received, 1000));
2019-02-13 13:03:40 +03:00
QVERIFY(isWork);
2019-02-13 13:03:40 +03:00
}
void testSankeServer::testStateServerProtockol(ServerProtocol::Client& cle) {
bool isWork = false;
2019-05-26 18:07:04 +03:00
bool received = false;
QMetaObject::Connection m_connection;
m_connection = QObject::connect(&cle, &ServerProtocol::Client::sigIncommingData,
2019-05-26 18:07:04 +03:00
[&isWork, &received, &m_connection] (const QVariantMap& map) {
isWork = !map.contains("Error");
2019-05-26 18:07:04 +03:00
received = true;
disconnect(m_connection);
2019-02-13 13:03:40 +03:00
});
QVERIFY(cle.getState());
2019-05-26 18:07:04 +03:00
QVERIFY(cle.wait(received, 1000));
2019-02-13 13:03:40 +03:00
QVERIFY(isWork);
}
void testSankeServer::testBanServerProtockol(ServerProtocol::Client& cle) {
bool isWork = false;
2019-05-26 18:07:04 +03:00
bool received = false;
QMetaObject::Connection m_connection;
m_connection = QObject::connect(&cle, &ServerProtocol::Client::sigIncommingData,
2019-05-26 18:07:04 +03:00
[&isWork, &received, &m_connection] (const QVariantMap& map) {
isWork = !map.contains("Error");
2019-05-26 18:07:04 +03:00
received = true;
disconnect(m_connection);
});
2019-03-14 19:21:37 +03:00
QVERIFY(!cle.ban(QHostAddress()));
QVERIFY(cle.ban(QHostAddress("192.192.192.192")));
2019-05-26 18:07:04 +03:00
QVERIFY(cle.wait(received, 1000));
QVERIFY(isWork);
2019-03-14 19:21:37 +03:00
}
void testSankeServer::testUnBanServerProtockol(ServerProtocol::Client& cle)
2019-03-14 19:21:37 +03:00
{
bool isWork = false;
2019-05-26 18:07:04 +03:00
bool received = false;
QMetaObject::Connection m_connection;
m_connection = QObject::connect(&cle, &ServerProtocol::Client::sigIncommingData,
2019-05-26 18:07:04 +03:00
[&isWork, &received, &m_connection] (const QVariantMap& map) {
isWork = !map.contains("Error");
2019-05-26 18:07:04 +03:00
received = true;
disconnect(m_connection);
});
2019-03-14 19:21:37 +03:00
QVERIFY(!cle.unBan(QHostAddress()));
QVERIFY(cle.unBan(QHostAddress("192.192.192.192")));
2019-05-26 18:07:04 +03:00
QVERIFY(cle.wait(received, 1000));
QVERIFY(isWork);
2019-03-14 19:21:37 +03:00
}
void testSankeServer::testRestartServerProtockol(ServerProtocol::Client& cle) {
bool isWork = false;
2019-05-26 18:07:04 +03:00
bool received = false;
QMetaObject::Connection m_connection;
m_connection = QObject::connect(&cle, &ServerProtocol::Client::sigIncommingData,
2019-05-26 18:07:04 +03:00
[&isWork, &received, &m_connection] (const QVariantMap& map) {
2019-05-26 18:07:04 +03:00
isWork = !map.contains("Error");
received = true;
disconnect(m_connection);
});
2019-03-14 19:21:37 +03:00
QVERIFY(!cle.restart("lolo", 0));
QVERIFY(!cle.restart("192.168.1.999", 0));
QVERIFY(!cle.restart("192.168.1.99", 0));
QVERIFY(!cle.restart("192.168.1.9", 0));
QVERIFY(!cle.restart("-1.168.1.999", 77));
QVERIFY(!cle.restart("192.168.-1.99", 7777));
QVERIFY(cle.restart("127.168.1.9", 3456));
2019-05-26 18:07:04 +03:00
cle.wait(received, 1000);
QVERIFY(isWork);
isWork = false;
received = false;
m_connection = QObject::connect(&cle, &ServerProtocol::Client::sigIncommingData,
[&isWork, &received, &m_connection] (const QVariantMap& map) {
isWork = map.value("Address") == QString("%0:%1").
arg(TEST_SERVER_ADDRESS).
arg(TEST_SERVER_PORT) &&
!map.contains("Error");
received = true;
disconnect(m_connection);
});
QVERIFY(cle.restart(TEST_SERVER_ADDRESS, TEST_SERVER_PORT));
2019-05-26 18:07:04 +03:00
cle.wait(received, 1000);
QVERIFY(isWork);
}
void testSankeServer::testStopServerProtockol(ServerProtocol::Client& cle) {
bool isWork = false;
2019-05-26 18:07:04 +03:00
bool received = false;
QMetaObject::Connection m_connection;
m_connection = QObject::connect(&cle, &ServerProtocol::Client::sigIncommingData,
2019-05-26 18:07:04 +03:00
[&isWork, &received, &m_connection] (const QVariantMap& map) {
isWork = !map.contains("Error");
2019-05-26 18:07:04 +03:00
received = true;
disconnect(m_connection);
});
QVERIFY(cle.stop());
2019-05-26 18:07:04 +03:00
cle.wait(received, 1000);
2019-03-14 19:21:37 +03:00
2019-05-26 18:07:04 +03:00
QVERIFY(!received || isWork);
2019-03-14 19:21:37 +03:00
}
2019-06-12 08:10:12 +03:00
void testSankeServer::testPingClientProtockol(ClientProtocol::Client &cle) {
2019-02-13 13:03:40 +03:00
2019-06-12 08:10:12 +03:00
bool isWork = false;
bool received = false;
2019-02-13 13:03:40 +03:00
2019-06-12 08:10:12 +03:00
QMetaObject::Connection m_connection;
2019-02-13 13:03:40 +03:00
2019-06-12 08:10:12 +03:00
m_connection = QObject::connect(&cle, &ClientProtocol::Client::sigIncommingData,
[&isWork, &received, &m_connection] (const ClientProtocol::Command cmd,
const QByteArray&) {
2019-02-13 13:03:40 +03:00
2019-04-29 14:39:48 +03:00
isWork = cmd == ClientProtocol::Command::Ping;
2019-06-12 08:10:12 +03:00
received = true;
disconnect(m_connection);
2019-02-13 13:03:40 +03:00
});
2019-06-12 08:10:12 +03:00
QVERIFY(cle.ping());
QVERIFY(TestUtils::wait(received, 1000));
2019-02-13 13:03:40 +03:00
QVERIFY(isWork);
2019-02-16 17:08:00 +03:00
}
2019-06-12 08:10:12 +03:00
void testSankeServer::testLogin(ClientProtocol::Client &cle) {
2019-06-17 18:09:06 +03:00
bool received = false;
QMetaObject::Connection m_connection;
m_connection = QObject::connect(&cle, &ClientProtocol::Client::sigIncommingData,
[ &received, &m_connection] (const ClientProtocol::Command,
const QByteArray&) {
received = true;
disconnect(m_connection);
});
2019-06-17 11:51:31 +03:00
QVERIFY(cle.login("Test@gmail.com", "testpass"));
2019-06-17 18:09:06 +03:00
QVERIFY(TestUtils::wait(received, 1000));
QVERIFY(cle.isLogin());
cle.loginOut();
received = false;
m_connection = QObject::connect(&cle, &ClientProtocol::Client::sigIncommingData,
[ &received, &m_connection] (const ClientProtocol::Command,
const QByteArray&) {
2019-06-14 10:54:37 +03:00
2019-06-17 18:09:06 +03:00
received = true;
disconnect(m_connection);
});
QVERIFY(cle.login("Test@gmail.com", "testpass2"));
QVERIFY(TestUtils::wait(received, 1000));
QVERIFY(!cle.isLogin());
received = false;
m_connection = QObject::connect(&cle, &ClientProtocol::Client::sigIncommingData,
[ &received, &m_connection] (const ClientProtocol::Command,
const QByteArray&) {
received = true;
disconnect(m_connection);
});
QVERIFY(cle.login("Test@gmail.com", "testpass"));
QVERIFY(TestUtils::wait(received, 1000));
QVERIFY(cle.isLogin());
2019-02-16 17:08:00 +03:00
}
2019-02-13 13:03:40 +03:00
2019-06-12 08:10:12 +03:00
void testSankeServer::testUserData(ClientProtocol::Client &cle) {
2019-06-14 10:54:37 +03:00
cle._token = "";
QVERIFY(!cle.updateData());
2019-06-14 10:54:37 +03:00
cle._token = QCryptographicHash::hash("testtoken", QCryptographicHash::Sha256);
QVERIFY(cle.updateData());
2019-02-16 17:08:00 +03:00
}
2019-06-12 08:10:12 +03:00
void testSankeServer::testGetItem(ClientProtocol::Client &cle) {
2019-06-14 10:54:37 +03:00
cle._token = "";
QVERIFY(!cle.getItem(1));
2019-06-14 10:54:37 +03:00
cle._token = QCryptographicHash::hash("testtoken", QCryptographicHash::Sha256);
2019-03-02 16:47:26 +03:00
QVERIFY(cle.getItem(1));
}
2019-06-12 08:10:12 +03:00
void testSankeServer::testApplyData(ClientProtocol::Client &cle) {
2019-06-14 10:54:37 +03:00
cle._token = QCryptographicHash::hash("testtoken", QCryptographicHash::Sha256);
2019-03-05 00:48:32 +03:00
QVERIFY(!cle.savaData(QList<int>()));
2019-03-05 00:48:32 +03:00
QList<int> listData = {1};
2019-02-13 13:03:40 +03:00
2019-03-05 00:48:32 +03:00
QVERIFY(cle.savaData(listData));
2019-04-20 15:22:00 +03:00
2019-07-27 17:03:59 +03:00
}
void testSankeServer::testWebSockets(ClientProtocol::Client &cle) {
QVERIFY(cle.changeSubscribe(ClientProtocol::Command::Player, true));
QVERIFY(cle.changeSubscribe(ClientProtocol::Command::Player, false));
2019-04-20 15:22:00 +03:00
2019-02-13 13:03:40 +03:00
}
void testSankeServer::testBaseSql() {
2019-04-30 16:29:36 +03:00
SqlDBWriter db;
QFile::remove("./test.db");
2019-04-12 17:25:17 +03:00
2019-05-18 19:05:36 +03:00
bool init = db.initDb("./test.db");
2019-04-30 16:29:36 +03:00
if (!init) {
QFile::remove("./test.db");
}
2019-04-30 16:29:36 +03:00
QVERIFY(init);
2019-04-20 16:02:27 +03:00
2019-04-30 16:29:36 +03:00
ClientProtocol::Snake snake;
snake.setSpeed(10);
snake.setSkillet(QList<float>() << 1);
snake.setSnakeClass(0);
2019-04-22 13:03:30 +03:00
2019-04-15 17:12:22 +03:00
2019-04-30 16:29:36 +03:00
// TEST ITEM
2019-04-15 17:12:22 +03:00
2019-05-02 17:39:56 +03:00
ClientProtocol::Snake resSnake;
2019-04-15 17:12:22 +03:00
2019-04-30 16:29:36 +03:00
QVERIFY(db.saveItem(&snake) < 0);
snake.setId(0);
int id = db.saveItem(&snake);
2019-04-15 17:12:22 +03:00
2019-04-30 16:29:36 +03:00
QVERIFY(id == 0);
2019-04-22 13:03:30 +03:00
2019-05-02 17:39:56 +03:00
QVERIFY(db.getItem(id).parse(resSnake));
2019-04-22 13:03:30 +03:00
2019-05-02 17:39:56 +03:00
QVERIFY(snake.getSpeed() == resSnake.getSpeed());
QVERIFY(snake.getSkillet() == resSnake.getSkillet());
QVERIFY(snake.getSnakeClass() == resSnake.getSnakeClass());
QVERIFY(snake.getClass() == resSnake.getClass());
QVERIFY(snake.id() == resSnake.id());
2019-04-22 13:03:30 +03:00
2019-05-02 17:39:56 +03:00
resSnake.setSnakeClass(10);
QVERIFY(id == db.saveItem(Item(&resSnake)));
2019-04-22 13:03:30 +03:00
2019-05-02 17:39:56 +03:00
ClientProtocol::Snake temp;
QVERIFY(db.getItem(id).parse(temp));
2019-04-22 13:03:30 +03:00
2019-05-02 17:39:56 +03:00
QVERIFY(temp.getSnakeClass() == 10);
2019-04-22 13:03:30 +03:00
2019-05-03 15:01:18 +03:00
// TEST PLAYER
2019-04-22 13:03:30 +03:00
2019-05-03 15:01:18 +03:00
PlayerDBData player = PlayerDBData();
2019-04-22 13:03:30 +03:00
2019-05-03 15:01:18 +03:00
player.setMany(10);
player.setLastOnline(1000);
player.setOnlineTime(1001);
player.setName("test");
player.fromHexPass("FF");
2019-05-03 15:01:18 +03:00
player.setGmail("test@gmail.com");
player.setCureentSnake(0);
2019-04-22 13:03:30 +03:00
2019-05-03 15:01:18 +03:00
QVERIFY(db.savePlayer(player) < 0);
player.setId(0);
2019-05-02 17:39:56 +03:00
2019-05-03 15:01:18 +03:00
QVERIFY(db.savePlayer(player) < 0);
player.setCureentSnake(-1);
id = db.savePlayer(player);
QVERIFY(id == 0);
2019-04-30 20:58:07 +03:00
2019-05-03 15:01:18 +03:00
QVERIFY(!db.saveowners(id, QSet<int>() << 1));
QVERIFY(db.saveowners(id, QSet<int>() << 0));
2019-05-03 15:01:18 +03:00
QSet<int> items;
QVERIFY(db.getAllItemsOfPalyer(id, items));
QVERIFY(items.contains(0));
QVERIFY(items.size() == 1);
2019-04-30 20:58:07 +03:00
2019-05-03 15:01:18 +03:00
player.setCureentSnake(0);
id = db.savePlayer(player);
2019-04-30 17:25:36 +03:00
2019-05-03 15:01:18 +03:00
auto resPlayer = db.getPlayer(id);
QVERIFY(resPlayer.isValid());
QVERIFY(player.getLastOnline() == resPlayer.getLastOnline());
QVERIFY(player.getMany() == resPlayer.getMany());
QVERIFY(player.getOnlineTime() == resPlayer.getOnlineTime());
QVERIFY(player.getName() == resPlayer.getName());
QVERIFY(player.getPass() == resPlayer.getPass());
2019-05-03 15:01:18 +03:00
QVERIFY(player.getCureentSnake() == resPlayer.getCureentSnake());
2019-04-30 17:25:36 +03:00
2019-05-03 15:01:18 +03:00
player.setCureentSnake(3);
2019-04-30 17:25:36 +03:00
2019-05-03 15:01:18 +03:00
QVERIFY(db.savePlayer(player) < 0);
player.setCureentSnake(0);
player.setName("new");
QVERIFY(db.savePlayer(player) == id);
2019-04-22 13:03:30 +03:00
2019-05-03 15:01:18 +03:00
resPlayer = db.getPlayer(id);
2019-04-22 13:03:30 +03:00
2019-05-03 15:01:18 +03:00
QVERIFY(resPlayer.getName() == "new");
2019-04-22 13:03:30 +03:00
}
2019-04-22 13:03:30 +03:00
void testSankeServer::testSqlCache() {
2019-05-03 15:01:18 +03:00
SqlDBCache db;
2019-04-22 13:03:30 +03:00
2019-05-03 15:01:18 +03:00
QFile::remove("./test2.db");
2019-04-22 13:03:30 +03:00
2019-05-18 19:05:36 +03:00
bool init = db.initDb("./test2.db");
2019-04-22 13:03:30 +03:00
2019-05-03 15:01:18 +03:00
if (!init) {
QFile::remove("./test2.db");
}
2019-05-03 15:01:18 +03:00
QVERIFY(init);
2019-05-03 15:01:18 +03:00
ClientProtocol::Snake snake;
snake.setSpeed(10);
snake.setSkillet(QList<float>() << 1);
snake.setSnakeClass(0);
2019-05-03 15:01:18 +03:00
// TEST ITEM
2019-05-03 15:01:18 +03:00
ClientProtocol::Snake resSnake;
2019-05-03 15:01:18 +03:00
int id = db.saveItem(&snake);
2019-05-03 15:01:18 +03:00
QVERIFY(id == 0);
snake.setId(id);
2019-05-03 15:01:18 +03:00
QVERIFY(db.getItem(id).parse(resSnake));
2019-05-03 15:01:18 +03:00
QVERIFY(snake.getSpeed() == resSnake.getSpeed());
QVERIFY(snake.getSkillet() == resSnake.getSkillet());
QVERIFY(snake.getSnakeClass() == resSnake.getSnakeClass());
QVERIFY(snake.getClass() == resSnake.getClass());
QVERIFY(snake.id() == resSnake.id());
resSnake.setSnakeClass(10);
QVERIFY(id == db.saveItem(Item(&resSnake)));
2019-05-03 15:01:18 +03:00
ClientProtocol::Snake temp;
QVERIFY(db.getItem(id).parse(temp));
QVERIFY(temp.getSnakeClass() == 10);
2019-05-03 15:01:18 +03:00
// TEST PLAYER
2019-04-22 13:03:30 +03:00
2019-05-03 15:01:18 +03:00
PlayerDBData player = PlayerDBData();
2019-05-03 15:01:18 +03:00
player.setMany(10);
player.setLastOnline(1000);
player.setOnlineTime(1001);
player.setName("test");
player.fromHexPass("FF");
2019-05-03 15:01:18 +03:00
player.setGmail("test@gmail.com");
player.setCureentSnake(0);
QVERIFY(db.savePlayer(player) < 0);
player.setId(0);
QVERIFY(db.savePlayer(player) < 0);
player.setCureentSnake(-1);
id = db.savePlayer(player);
QVERIFY(id == 0);
2019-05-03 15:01:18 +03:00
QVERIFY(!db.getItem(id, 1));
QVERIFY(db.getItem(id, 0));
2019-05-03 15:01:18 +03:00
player.setCureentSnake(0);
QVERIFY(db.savePlayer(player) == id);
2019-05-03 15:01:18 +03:00
auto resPlayer = db.getPlayer(id);
QVERIFY(resPlayer.isValid());
QVERIFY(player.getLastOnline() == resPlayer.getLastOnline());
QVERIFY(player.getMany() == resPlayer.getMany());
QVERIFY(player.getOnlineTime() == resPlayer.getOnlineTime());
QVERIFY(player.getName() == resPlayer.getName());
QVERIFY(player.getPass() == resPlayer.getPass());
2019-05-03 15:01:18 +03:00
QVERIFY(player.getCureentSnake() == resPlayer.getCureentSnake());
2019-05-03 15:01:18 +03:00
player.setCureentSnake(3);
2019-05-03 15:01:18 +03:00
QVERIFY(db.savePlayer(player) < 0);
player.setCureentSnake(0);
player.setName("new");
QVERIFY(db.savePlayer(player) == id);
2019-05-03 15:01:18 +03:00
resPlayer = db.getPlayer(id);
2019-05-03 15:01:18 +03:00
QVERIFY(resPlayer.getName() == "new");
2019-05-03 15:01:18 +03:00
PlayerDBData second_player = PlayerDBData();
2019-05-03 15:01:18 +03:00
second_player.setMany(10);
second_player.setLastOnline(1000);
second_player.setOnlineTime(1001);
second_player.setName("test2");
second_player.setPass("test2");
2019-05-03 15:01:18 +03:00
second_player.setGmail("test2@gmail.com");
second_player.setCureentSnake(-1);
second_player.setId(-1);
2019-05-03 15:01:18 +03:00
QVERIFY(db.savePlayer(second_player) == 1);
2019-05-03 15:01:18 +03:00
QVERIFY(db.moveItem(0, 1, 0));
2019-05-03 15:01:18 +03:00
QSet<int> items;
QVERIFY(db.getAllItemsOfPalyer(1, items));
QVERIFY(items.contains(0));
QVERIFY(items.size() == 1);
2019-05-03 15:01:18 +03:00
db.updateInterval = 0;
2019-05-03 15:01:18 +03:00
db.globalUpdateDataBasePrivate(0);
}
void testSankeServer::testSql() {
testBaseSql();
testSqlCache();
2019-04-12 17:25:17 +03:00
}
2019-06-12 08:10:12 +03:00
void testSankeServer::testProtockols() {
int argc =0;
char * argv[] = {nullptr};
QCoreApplication app(argc, argv);
2019-06-13 12:53:35 +03:00
auto serv = new MainServer(true, this);
2019-08-06 17:03:49 +03:00
QVERIFY(serv->run(TEST_SERVER_ADDRESS, TEST_SERVER_PORT , "", TEST_LOCAL_SERVER));
2019-06-12 08:10:12 +03:00
ServerProtocol::Client cleS(TEST_LOCAL_SERVER);
2019-06-12 12:38:52 +03:00
ClientProtocol::Client cleC(TEST_SERVER_ADDRESS, TEST_SERVER_PORT);
2019-06-12 08:10:12 +03:00
2019-06-13 12:53:35 +03:00
QVERIFY(TestUtils::wait(cleC.isOnline(), 1000));
2019-06-12 08:10:12 +03:00
QTimer::singleShot(0, [this, &app, &cleS, &cleC]() {
// test client protockol
testPingClientProtockol(cleC);
testLogin(cleC);
testGetItem(cleC);
testUserData(cleC);
testApplyData(cleC);
2019-07-27 17:03:59 +03:00
testWebSockets(cleC);
2019-06-12 12:38:52 +03:00
// test server protockiol
testPingServerProtockol(cleS);
testStateServerProtockol(cleS);
testBanServerProtockol(cleS);
testUnBanServerProtockol(cleS);
testRestartServerProtockol(cleS);
testStopServerProtockol(cleS);
app.exit(0);
});
app.exec();
2019-02-13 13:03:40 +03:00
}
2019-06-12 08:10:12 +03:00
//void testSankeServer::testClientProtockol() {
2019-02-16 17:08:00 +03:00
2019-06-12 08:10:12 +03:00
// auto serv = new ClientProtocol::Server(this);
// QVERIFY(serv->run(TEST_SERVER_ADDRESS, TEST_SERVER_PORT));
2019-06-12 08:10:12 +03:00
//}
2019-02-13 13:03:40 +03:00
QTEST_APPLESS_MAIN(testSankeServer)
#include "tst_testsnakeserver.moc"