Update Naming and Tests

This commit is contained in:
2021-07-28 16:23:27 +02:00
parent f03e90f5b9
commit 03b00fa6de
17 changed files with 566 additions and 104 deletions
+28 -28
View File
@@ -1,6 +1,6 @@
#include "Bluetooth/Device.h"
#include "UniFi/Device.h"
#include "Bluetooth/Driver.h"
#include "Util/StaticDevice.h"
#include "WiFi/Driver.h"
#include <clipp.h>
#include <INIReader.h>
#include <Logging.h>
@@ -70,7 +70,7 @@ int main(int argc, char** argv)
std::string target = iniReader.Get("PresenceDetection", "Target", "");
bool unifi = iniReader.GetBoolean("PresenceDetection", "UniFi", false);
bool wifi = iniReader.GetBoolean("PresenceDetection", "WiFi", false);
bool bluetooth = iniReader.GetBoolean("PresenceDetection", "Bluetooth", false);
@@ -80,7 +80,7 @@ int main(int argc, char** argv)
for (auto section : sections)
{
if (section != "PresenceDetection" &&
section != "UniFi" &&
section != "WiFi" &&
section != "Bluetooth")
{
std::string WifiMac = iniReader.Get(section, "WifiMac", "");
@@ -123,42 +123,42 @@ int main(int argc, char** argv)
}
}
std::shared_ptr<PresenceDetection::UniFi::Device> pUniFiDevice;
if (unifi)
std::shared_ptr<PresenceDetection::WiFi::Driver> pWiFiDriver;
if (wifi)
{
std::string hostname = iniReader.Get("UniFi", "Hostname", "");
std::string hostname = iniReader.Get("WiFi", "Hostname", "");
if (hostname.empty())
throw std::runtime_error("UniFi Hostname directive missing in ini file.");
throw std::runtime_error("WiFi Hostname directive missing in ini file.");
int port = iniReader.GetInteger("UniFi", "Port", 8443);
int port = iniReader.GetInteger("WiFi", "Port", 8443);
std::string username = iniReader.Get("UniFi", "Username", "");
std::string username = iniReader.Get("WiFi", "Username", "");
if (username.empty())
throw std::runtime_error("UniFi Username directive missing in ini file.");
throw std::runtime_error("WiFi Username directive missing in ini file.");
std::string password = iniReader.Get("UniFi", "Password", "");
std::string password = iniReader.Get("WiFi", "Password", "");
if (password.empty())
throw std::runtime_error("UniFi Password directive missing in ini file.");
throw std::runtime_error("WiFi Password directive missing in ini file.");
std::string cookiefile = iniReader.Get("UniFi", "CookieFile", "");
std::string cookiefile = iniReader.Get("WiFi", "CookieFile", "");
if (cookiefile.empty())
throw std::runtime_error("UniFi CookieFile directive missing in ini file.");
throw std::runtime_error("WiFi CookieFile directive missing in ini file.");
int timeout = iniReader.GetInteger("UniFi", "Timeout", 150);
int timeout = iniReader.GetInteger("WiFi", "Timeout", 150);
std::string inventoryURL = iniReader.Get("UniFi", "Inventory", "");
std::string inventoryURL = iniReader.Get("WiFi", "Inventory", "");
pUniFiDevice = std::make_shared<PresenceDetection::UniFi::Device>(hostname, port, username, password, cookiefile, timeout, inventoryURL, target, staticDevices);
pWiFiDriver = std::make_shared<PresenceDetection::WiFi::Driver>(hostname, port, username, password, cookiefile, timeout, inventoryURL, target, staticDevices);
}
std::shared_ptr<PresenceDetection::Bluetooth::Device> pBluetoothDevice;
std::shared_ptr<PresenceDetection::Bluetooth::Driver> pBluetoothDriver;
if (bluetooth)
{
int timeout = iniReader.GetInteger("Bluetooth", "Timeout", 150);
std::string inventoryURL = iniReader.Get("Bluetooth", "Inventory", "");
pBluetoothDevice = std::make_shared<PresenceDetection::Bluetooth::Device>(timeout, inventoryURL, target, staticDevices);
pBluetoothDriver = std::make_shared<PresenceDetection::Bluetooth::Driver>(timeout, inventoryURL, target, staticDevices);
}
sigset_t wset;
@@ -171,17 +171,17 @@ int main(int argc, char** argv)
Logging::Log(Logging::Severity::Info, "Stopping PresenceDetection...");
if (pUniFiDevice)
pUniFiDevice->Stop();
if (pWiFiDriver)
pWiFiDriver->Stop();
if (pBluetoothDevice)
pBluetoothDevice->Stop();
if (pBluetoothDriver)
pBluetoothDriver->Stop();
if (pUniFiDevice)
pUniFiDevice->Wait();
if (pWiFiDriver)
pWiFiDriver->Wait();
if (pBluetoothDevice)
pBluetoothDevice->Wait();
if (pBluetoothDriver)
pBluetoothDriver->Wait();
Logging::CloseLog();
}