X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/9f01f72d7b1da24b97bcfed87a41f37fd88e7d10..f4333737c7e347efe9258ccf85c1237e03be619c:/tests/test_reconnect_on_tariff_change.cpp diff --git a/tests/test_reconnect_on_tariff_change.cpp b/tests/test_reconnect_on_tariff_change.cpp index 603f60df..60e36ffa 100644 --- a/tests/test_reconnect_on_tariff_change.cpp +++ b/tests/test_reconnect_on_tariff_change.cpp @@ -1,17 +1,20 @@ #include "tut/tut.hpp" +#include "stg/admin.h" #include "stg/user_property.h" #include "user_impl.h" #include "testsettings.h" #include "testtariffs.h" -#include "testadmin.h" #include "teststore.h" #include "testauth.h" #include "testusers.h" +#include "testservices.h" -class AFTER_CONNECTED_NOTIFIER : public PROPERTY_NOTIFIER_BASE, - private NONCOPYABLE { +namespace +{ + +class AFTER_CONNECTED_NOTIFIER : public STG::PropertyNotifierBase { public: AFTER_CONNECTED_NOTIFIER() : connects(0), @@ -40,6 +43,8 @@ class TEST_SETTINGS_LOCAL : public TEST_SETTINGS { bool reconnectOnTariffChange; }; +} + namespace tut { struct reconnect_on_tariff_change_data { @@ -58,27 +63,28 @@ namespace tut TEST_SETTINGS_LOCAL settings(false); TEST_TARIFFS tariffs; - TEST_ADMIN admin; + tariffs.ReadTariffs(); + STG::Admin admin(STG::Priv(0xFFFF), {}, {}); TEST_STORE store; TEST_AUTH auth; TEST_USERS users; - USER_IMPL user(&settings, &store, &tariffs, &admin, &users); + TEST_SERVICES services; + STG::UserImpl user(&settings, &store, &tariffs, &admin, &users, services); AFTER_CONNECTED_NOTIFIER connectionNotifier; user.AddConnectedAfterNotifier(&connectionNotifier); - USER_PROPERTY & cash(user.GetProperty().cash); - USER_PROPERTY & tariffName(user.GetProperty().tariffName); - USER_PROPERTY & ips(user.GetProperty().ips); + STG::UserProperty & tariffName = user.GetProperties().tariffName; + STG::UserProperty & ips = user.GetProperties().ips; - ips = StrToIPS("*"); + ips = STG::UserIPs::parse("*"); ensure_equals("user.connected = false", user.GetConnected(), false); - ensure_equals("connects = 0", connectionNotifier.GetConnects(), 0); - ensure_equals("disconnects = 0", connectionNotifier.GetDisconnects(), 0); + ensure_equals("connects = 0", connectionNotifier.GetConnects(), static_cast(0)); + ensure_equals("disconnects = 0", connectionNotifier.GetDisconnects(), static_cast(0)); - ensure_equals("user.tariffName == NO_TARIFF_NAME", user.GetProperty().tariffName.ConstData(), NO_TARIFF_NAME); + ensure_equals("user.tariffName == NO_TARIFF_NAME", user.GetProperties().tariffName.ConstData(), NO_TARIFF_NAME); user.Authorize(inet_strington("127.0.0.1"), 0, &auth); user.Run(); @@ -86,17 +92,17 @@ namespace tut ensure_equals("user.authorised_by = true", user.IsAuthorizedBy(&auth), true); ensure_equals("user.connected = true", user.GetConnected(), true); - ensure_equals("connects = 1", connectionNotifier.GetConnects(), 1); - ensure_equals("disconnects = 0", connectionNotifier.GetDisconnects(), 0); + ensure_equals("connects = 1", connectionNotifier.GetConnects(), static_cast(1)); + ensure_equals("disconnects = 0", connectionNotifier.GetDisconnects(), static_cast(0)); tariffName = "test"; - ensure_equals("user.tariffName == 'test'", user.GetProperty().tariffName.ConstData(), "test"); + ensure_equals("user.tariffName == 'test'", user.GetProperties().tariffName.ConstData(), "test"); ensure_equals("user.authorised_by = true", user.IsAuthorizedBy(&auth), true); ensure_equals("user.connected = true", user.GetConnected(), true); - ensure_equals("connects = 1", connectionNotifier.GetConnects(), 1); - ensure_equals("disconnects = 0", connectionNotifier.GetDisconnects(), 0); + ensure_equals("connects = 1", connectionNotifier.GetConnects(), static_cast(1)); + ensure_equals("disconnects = 0", connectionNotifier.GetDisconnects(), static_cast(0)); } @@ -109,34 +115,34 @@ namespace tut TEST_SETTINGS_LOCAL settings(true); TEST_SETTINGS * s1 = &settings; - SETTINGS * s2 = &settings; + STG::Settings * s2 = &settings; ensure("settings.GetReconnectOnTariffChange() == true", settings.GetReconnectOnTariffChange()); ensure("s1->GetReconnectOnTariffChange() == true", s1->GetReconnectOnTariffChange()); ensure("s2->GetReconnectOnTariffChange() == true", s2->GetReconnectOnTariffChange()); TEST_TARIFFS tariffs; - TEST_ADMIN admin; + STG::Admin admin(STG::Priv(0xFFFF), {}, {}); TEST_STORE store; TEST_AUTH auth; TEST_USERS users; - USER_IMPL user(&settings, &store, &tariffs, &admin, &users); + TEST_SERVICES services; + STG::UserImpl user(&settings, &store, &tariffs, &admin, &users, services); AFTER_CONNECTED_NOTIFIER connectionNotifier; user.AddConnectedAfterNotifier(&connectionNotifier); - USER_PROPERTY & cash(user.GetProperty().cash); - USER_PROPERTY & tariffName(user.GetProperty().tariffName); - USER_PROPERTY & ips(user.GetProperty().ips); + STG::UserProperty & tariffName = user.GetProperties().tariffName; + STG::UserProperty & ips = user.GetProperties().ips; - ips = StrToIPS("*"); + ips = STG::UserIPs::parse("*"); ensure_equals("user.connected = false", user.GetConnected(), false); - ensure_equals("connects = 0", connectionNotifier.GetConnects(), 0); - ensure_equals("disconnects = 0", connectionNotifier.GetDisconnects(), 0); + ensure_equals("connects = 0", connectionNotifier.GetConnects(), static_cast(0)); + ensure_equals("disconnects = 0", connectionNotifier.GetDisconnects(), static_cast(0)); - ensure_equals("user.tariffName == NO_TARIFF_NAME", user.GetProperty().tariffName.ConstData(), NO_TARIFF_NAME); + ensure_equals("user.tariffName == NO_TARIFF_NAME", user.GetProperties().tariffName.ConstData(), NO_TARIFF_NAME); user.Authorize(inet_strington("127.0.0.1"), 0, &auth); user.Run(); @@ -144,17 +150,17 @@ namespace tut ensure_equals("user.authorised_by = true", user.IsAuthorizedBy(&auth), true); ensure_equals("user.connected = true", user.GetConnected(), true); - ensure_equals("connects = 1", connectionNotifier.GetConnects(), 1); - ensure_equals("disconnects = 0", connectionNotifier.GetDisconnects(), 0); + ensure_equals("connects = 1", connectionNotifier.GetConnects(), static_cast(1)); + ensure_equals("disconnects = 0", connectionNotifier.GetDisconnects(), static_cast(0)); tariffName = "test"; - ensure_equals("user.tariffName == 'test'", user.GetProperty().tariffName.ConstData(), "test"); + ensure_equals("user.tariffName == 'test'", user.GetProperties().tariffName.ConstData(), "test"); ensure_equals("user.authorised_by = true", user.IsAuthorizedBy(&auth), true); ensure_equals("user.connected = true", user.GetConnected(), true); - ensure_equals("connects = 2", connectionNotifier.GetConnects(), 2); - ensure_equals("disconnects = 1", connectionNotifier.GetDisconnects(), 1); + ensure_equals("connects = 2", connectionNotifier.GetConnects(), static_cast(2)); + ensure_equals("disconnects = 1", connectionNotifier.GetDisconnects(), static_cast(1)); } }