New and fixed tests
This commit is contained in:
parent
aa838bf826
commit
b7ceb7087a
3 changed files with 95 additions and 45 deletions
|
|
@ -110,5 +110,10 @@ void apparatus::init() {
|
||||||
}
|
}
|
||||||
|
|
||||||
void apparatus::shutdown() {
|
void apparatus::shutdown() {
|
||||||
delete apparatus::_instance;
|
apparatus::instance()->save();
|
||||||
|
if (apparatus::isFirstRun() && apparatus::instance()->get_auth_subsystem()->users().length() > 0) {
|
||||||
|
apparatus::generate_lock_file();
|
||||||
|
}
|
||||||
|
// delete apparatus::_instance;
|
||||||
|
apparatus::_instance = nullptr;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE QtCreatorProject>
|
<!DOCTYPE QtCreatorProject>
|
||||||
<!-- Written by QtCreator 4.13.3, 2020-12-23T04:25:48. -->
|
<!-- Written by QtCreator 4.13.3, 2020-12-28T22:13:22. -->
|
||||||
<qtcreator>
|
<qtcreator>
|
||||||
<data>
|
<data>
|
||||||
<variable>EnvironmentId</variable>
|
<variable>EnvironmentId</variable>
|
||||||
|
|
@ -65,14 +65,20 @@
|
||||||
<value type="bool" key="AutoTest.Framework.QtTest">true</value>
|
<value type="bool" key="AutoTest.Framework.QtTest">true</value>
|
||||||
</valuemap>
|
</valuemap>
|
||||||
<valuemap type="QVariantMap" key="AutoTest.CheckStates">
|
<valuemap type="QVariantMap" key="AutoTest.CheckStates">
|
||||||
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:apparatus_check_auth_subsystem">Checked</value>
|
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:apparatus_check_first_registered_user">Checked</value>
|
||||||
|
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:apparatus_check_first_registration">Checked</value>
|
||||||
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:apparatus_check_first_run">Checked</value>
|
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:apparatus_check_first_run">Checked</value>
|
||||||
|
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:apparatus_check_first_run_no_registration">Checked</value>
|
||||||
|
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:apparatus_check_not_first_run">Checked</value>
|
||||||
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:apparatus_check_null_throws_error">Checked</value>
|
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:apparatus_check_null_throws_error">Checked</value>
|
||||||
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:apparatus_check_object_subsystem">Checked</value>
|
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:apparatus_check_remove_user">Checked</value>
|
||||||
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:cargo_entity_serialization_test">Checked</value>
|
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:cargo_entity_serialization_test">Checked</value>
|
||||||
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:cleanupTestCase">Unchecked</value>
|
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:cleanupTestCase">Unchecked</value>
|
||||||
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:dpoint_entity_serialization_test">Checked</value>
|
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:dpoint_entity_serialization_test">Checked</value>
|
||||||
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:initTestCase">Unchecked</value>
|
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:initTestCase">Unchecked</value>
|
||||||
|
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:object_subsystem_check_add_dpoint">Checked</value>
|
||||||
|
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:object_subsystem_check_find_dpoint">Checked</value>
|
||||||
|
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:object_subsystem_check_remove_dpoint">Checked</value>
|
||||||
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:st_test">Checked</value>
|
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:st_test">Checked</value>
|
||||||
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:storage_entity_serialization_test">Checked</value>
|
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:storage_entity_serialization_test">Checked</value>
|
||||||
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:user_entity_password_verification_test">Checked</value>
|
<value type="Qt::CheckState" key="C:/Users/Admin/Documents/repos/sea_transport_project/st_test/tst_st_test.cpp:user_entity_password_verification_test">Checked</value>
|
||||||
|
|
@ -106,7 +112,7 @@
|
||||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">qt.qt5.5150.win64_mingw81_kit</value>
|
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">qt.qt5.5150.win64_mingw81_kit</value>
|
||||||
<value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
|
<value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
|
||||||
<value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
|
<value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
|
||||||
<value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
|
<value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">1</value>
|
||||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
|
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
|
||||||
<value type="bool">true</value>
|
<value type="bool">true</value>
|
||||||
<value type="int" key="EnableQmlDebugging">0</value>
|
<value type="int" key="EnableQmlDebugging">0</value>
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,8 @@
|
||||||
#include "../sea_transport/entities/user_entity.h"
|
#include "../sea_transport/entities/user_entity.h"
|
||||||
|
|
||||||
#include "../sea_transport/system/apparatus.h"
|
#include "../sea_transport/system/apparatus.h"
|
||||||
|
#include "../sea_transport/system/auth_system.h"
|
||||||
|
#include "../sea_transport/system/object_system.h"
|
||||||
|
|
||||||
#include <QFile>
|
#include <QFile>
|
||||||
#include <QDataStream>
|
#include <QDataStream>
|
||||||
|
|
@ -14,6 +16,7 @@
|
||||||
class st_test : public QObject
|
class st_test : public QObject
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
dpoint_entity *p;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
st_test();
|
st_test();
|
||||||
|
|
@ -30,14 +33,22 @@ private slots:
|
||||||
void user_entity_serialization_test();
|
void user_entity_serialization_test();
|
||||||
|
|
||||||
void user_entity_password_verification_test();
|
void user_entity_password_verification_test();
|
||||||
|
|
||||||
void apparatus_check_null_throws_error();
|
void apparatus_check_null_throws_error();
|
||||||
|
|
||||||
void apparatus_check_first_run();
|
void apparatus_check_first_run();
|
||||||
void apparatus_check_auth_subsystem();
|
void apparatus_check_first_registration();
|
||||||
void apparatus_check_object_subsystem();
|
void apparatus_check_not_first_run();
|
||||||
|
void apparatus_check_first_registered_user();
|
||||||
|
void apparatus_check_remove_user();
|
||||||
|
|
||||||
|
void object_subsystem_check_add_dpoint();
|
||||||
|
void object_subsystem_check_find_dpoint();
|
||||||
|
void object_subsystem_check_remove_dpoint();
|
||||||
};
|
};
|
||||||
|
|
||||||
st_test::st_test() {
|
st_test::st_test() {
|
||||||
|
this->p = new dpoint_entity(0, "test");
|
||||||
}
|
}
|
||||||
|
|
||||||
st_test::~st_test() {
|
st_test::~st_test() {
|
||||||
|
|
@ -47,17 +58,19 @@ st_test::~st_test() {
|
||||||
//=================================================
|
//=================================================
|
||||||
void st_test::initTestCase() {
|
void st_test::initTestCase() {
|
||||||
QVERIFY2(
|
QVERIFY2(
|
||||||
!QFile("data.bin").exists(),
|
!QFile("data.bin").exists() && !QFile("lock").exists(),
|
||||||
"There should be no data file!"
|
"There should be no data and lock file!"
|
||||||
);
|
);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void st_test::cleanupTestCase() {
|
void st_test::cleanupTestCase() {
|
||||||
QVERIFY2(
|
QVERIFY2(
|
||||||
QFile("data.bin").exists(),
|
QFile("data.bin").exists() && QFile("lock").exists(),
|
||||||
"There should be a data file!"
|
"There should be data and lock file!"
|
||||||
);
|
);
|
||||||
QFile().remove("data.bin");
|
QFile().remove("data.bin");
|
||||||
|
QFile().remove("lock");
|
||||||
}
|
}
|
||||||
|
|
||||||
//=================================================
|
//=================================================
|
||||||
|
|
@ -236,49 +249,75 @@ void st_test::apparatus_check_null_throws_error() {
|
||||||
|
|
||||||
void st_test::apparatus_check_first_run() {
|
void st_test::apparatus_check_first_run() {
|
||||||
apparatus::init();
|
apparatus::init();
|
||||||
QVERIFY2(
|
QVERIFY(apparatus::instance()->isFirstRun());
|
||||||
apparatus::instance()->isFirstRun(),
|
|
||||||
"Not a first run!"
|
|
||||||
);
|
|
||||||
apparatus::shutdown();
|
apparatus::shutdown();
|
||||||
}
|
}
|
||||||
|
|
||||||
void st_test::apparatus_check_auth_subsystem() {
|
void st_test::apparatus_check_first_registration() {
|
||||||
apparatus::init();
|
apparatus::init();
|
||||||
auto as = apparatus::instance()->get_auth_subsystem();
|
auto as = apparatus::instance()->get_auth_subsystem();
|
||||||
{
|
|
||||||
bool test = as->register_user("testor", "passwd", UserRole::ADMINISTRATOR);
|
bool test = as->register_user("testor", "passwd", UserRole::ADMINISTRATOR);
|
||||||
QVERIFY(test);
|
QVERIFY(test);
|
||||||
}
|
|
||||||
{
|
|
||||||
bool test;
|
|
||||||
as->get_user("testor", test);
|
|
||||||
QVERIFY(test);
|
|
||||||
}
|
|
||||||
{
|
|
||||||
bool test = as->remove_user("testor");
|
|
||||||
QVERIFY(test);
|
|
||||||
}
|
|
||||||
apparatus::shutdown();
|
apparatus::shutdown();
|
||||||
}
|
}
|
||||||
|
|
||||||
void st_test::apparatus_check_object_subsystem() {
|
void st_test::apparatus_check_not_first_run() {
|
||||||
apparatus::init();
|
apparatus::init();
|
||||||
|
QVERIFY(!apparatus::instance()->isFirstRun());
|
||||||
|
apparatus::shutdown();
|
||||||
|
}
|
||||||
|
|
||||||
|
void st_test::apparatus_check_first_registered_user() {
|
||||||
|
apparatus::init();
|
||||||
|
auto as = apparatus::instance()->get_auth_subsystem();
|
||||||
|
|
||||||
|
bool test;
|
||||||
|
auto user = as->get_user("testor", test);
|
||||||
|
QVERIFY(test && user->role() == UserRole::ADMINISTRATOR);
|
||||||
|
|
||||||
|
apparatus::shutdown();
|
||||||
|
}
|
||||||
|
|
||||||
|
void st_test::apparatus_check_remove_user() {
|
||||||
|
apparatus::init();
|
||||||
|
auto as = apparatus::instance()->get_auth_subsystem();
|
||||||
|
|
||||||
|
bool test = as->remove_user("testor");
|
||||||
|
QVERIFY(test);
|
||||||
|
|
||||||
|
apparatus::shutdown();
|
||||||
|
}
|
||||||
|
|
||||||
|
void st_test::object_subsystem_check_add_dpoint() {
|
||||||
|
apparatus::init();
|
||||||
|
|
||||||
auto os = apparatus::instance()->get_object_subsystem();
|
auto os = apparatus::instance()->get_object_subsystem();
|
||||||
dpoint_entity p(0, "test");
|
bool test = os->add_dpoint(*this->p);
|
||||||
{
|
QVERIFY(test);
|
||||||
bool test = os->add_dpoint(p);
|
|
||||||
QVERIFY(test);
|
apparatus::shutdown();
|
||||||
}
|
}
|
||||||
{
|
|
||||||
bool test;
|
void st_test::object_subsystem_check_find_dpoint() {
|
||||||
os->get_dpoint(p.id(), test);
|
apparatus::init();
|
||||||
QVERIFY(test);
|
|
||||||
}
|
auto os = apparatus::instance()->get_object_subsystem();
|
||||||
{
|
bool test;
|
||||||
bool test = os->remove_dpoint(p.id());
|
os->get_dpoint(this->p->id(), test);
|
||||||
QVERIFY(test);
|
QVERIFY(test);
|
||||||
}
|
|
||||||
|
apparatus::shutdown();
|
||||||
|
}
|
||||||
|
|
||||||
|
void st_test::object_subsystem_check_remove_dpoint() {
|
||||||
|
apparatus::init();
|
||||||
|
|
||||||
|
auto os = apparatus::instance()->get_object_subsystem();
|
||||||
|
bool test = os->remove_dpoint(this->p->id());
|
||||||
|
QVERIFY(test);
|
||||||
|
|
||||||
apparatus::shutdown();
|
apparatus::shutdown();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue