Moved some parts to a static lib so both the executable and the tests can link to it.

Written additional tests.
This commit is contained in:
eelke 2017-02-26 19:29:50 +01:00
parent 0a809a7288
commit d0ea9dfa0c
39 changed files with 1767 additions and 493 deletions

54
src/ConnectionList.h Normal file
View file

@ -0,0 +1,54 @@
#ifndef CONNECTIONLIST_H
#define CONNECTIONLIST_H
#include "ConnectionConfig.h"
#include <QString>
#include <QUuid>
#include <vector>
#include "Expected.h"
class ConnectionList {
private:
static QString iniFileName();
public:
ConnectionList();
int size() const { return m_connections.size(); }
ConnectionConfig& getConfigByIdx(int idx)
{
return m_connections.at(idx).m_config;
}
int createNew();
void remove(int idx, int count);
void load();
void save();
void save(int index);
private:
class LijstElem {
public:
QUuid m_uuid;
ConnectionConfig m_config;
LijstElem(const QUuid id, const ConnectionConfig &cfg)
: m_uuid(id), m_config(cfg)
{}
};
using t_Connections = std::vector<LijstElem>;
t_Connections m_connections;
void deleteFromIni(t_Connections::iterator begin, t_Connections::iterator end);
};
#endif // CONNECTIONLIST_H