Change testcase for Szeged
This commit is contained in:
parent
c2a8f0b00b
commit
dbcd27b377
@ -31,13 +31,13 @@ extern "C" char* strptime(const char* s,
|
|||||||
#include <fstream>
|
#include <fstream>
|
||||||
#include <sstream>
|
#include <sstream>
|
||||||
#include "calculator_functions.h"
|
#include "calculator_functions.h"
|
||||||
#include <calculate_price.h>
|
#include "calculate_price.h"
|
||||||
|
|
||||||
#define SZEGED (0)
|
#define SZEGED (1)
|
||||||
#define SCHOENAU_KOENIGSEE (0)
|
#define SCHOENAU_KOENIGSEE (0)
|
||||||
#define NEUHAUSER_KORNEUBURG (0)
|
#define NEUHAUSER_KORNEUBURG (0)
|
||||||
#define NEUHAUSER_LINSINGER_MASCHINENBAU (0)
|
#define NEUHAUSER_LINSINGER_MASCHINENBAU (0)
|
||||||
#define NEUHAUSER_NORDISCHES_AUSBILDUNGSZENTRUM (1)
|
#define NEUHAUSER_NORDISCHES_AUSBILDUNGSZENTRUM (0)
|
||||||
#define NEUHAUSER_BILEXA_GALTUER (0)
|
#define NEUHAUSER_BILEXA_GALTUER (0)
|
||||||
|
|
||||||
|
|
||||||
@ -230,33 +230,37 @@ int main() {
|
|||||||
|
|
||||||
#elif SZEGED==1
|
#elif SZEGED==1
|
||||||
std::ifstream input;
|
std::ifstream input;
|
||||||
|
int pop_min_time;
|
||||||
int pop_max_time;
|
int pop_max_time;
|
||||||
|
int pop_min_price;
|
||||||
|
int pop_max_price;
|
||||||
|
|
||||||
for (int t=6; t < 7; t+=20) {
|
for (int t=2; t < 3; ++t) {
|
||||||
|
//for (int t=6; t < 7; t+=20) {
|
||||||
switch (t) {
|
switch (t) {
|
||||||
case 1: {
|
case 1: {
|
||||||
input.open("/opt/ptu5/opt/customer_281/etc/psa_tariff/tariff01.json");
|
input.open("/opt/ptu5/opt/customer_281/etc/psa_tariff/tariff01.json");
|
||||||
pop_max_time = 6*60;
|
//pop_max_time = 6*60;
|
||||||
} break;
|
} break;
|
||||||
case 2: {
|
case 2: {
|
||||||
input.open("/opt/ptu5/opt/customer_281/etc/psa_tariff/tariff02.json");
|
input.open("/opt/ptu5/opt/customer_281/etc/psa_tariff/tariff02.json");
|
||||||
pop_max_time = 5*60;
|
//pop_max_time = 5*60;
|
||||||
} break;
|
} break;
|
||||||
case 3: {
|
case 3: {
|
||||||
input.open("/opt/ptu5/opt/customer_281/etc/psa_tariff/tariff03.json");
|
input.open("/opt/ptu5/opt/customer_281/etc/psa_tariff/tariff03.json");
|
||||||
pop_max_time = 6*60;
|
//pop_max_time = 6*60;
|
||||||
} break;
|
} break;
|
||||||
case 4: {
|
case 4: {
|
||||||
input.open("/opt/ptu5/opt/customer_281/etc/psa_tariff/tariff04.json");
|
input.open("/opt/ptu5/opt/customer_281/etc/psa_tariff/tariff04.json");
|
||||||
pop_max_time = 4*60;
|
//pop_max_time = 4*60;
|
||||||
} break;
|
} break;
|
||||||
case 5: {
|
case 5: {
|
||||||
input.open("/opt/ptu5/opt/customer_281/etc/psa_tariff/tariff05.json");
|
input.open("/opt/ptu5/opt/customer_281/etc/psa_tariff/tariff05.json");
|
||||||
pop_max_time = 6*60;
|
//pop_max_time = 6*60;
|
||||||
} break;
|
} break;
|
||||||
case 6: {
|
case 6: {
|
||||||
input.open("/opt/ptu5/opt/customer_281/etc/psa_tariff/tariff06.json");
|
input.open("/opt/ptu5/opt/customer_281/etc/psa_tariff/tariff06.json");
|
||||||
pop_max_time = 4*60;
|
//pop_max_time = 4*60;
|
||||||
} break;
|
} break;
|
||||||
default:
|
default:
|
||||||
continue;
|
continue;
|
||||||
@ -265,13 +269,24 @@ int main() {
|
|||||||
while(input >> sstr.rdbuf());
|
while(input >> sstr.rdbuf());
|
||||||
std::string json(sstr.str());
|
std::string json(sstr.str());
|
||||||
|
|
||||||
Calculator calculator;
|
|
||||||
Configuration cfg;
|
Configuration cfg;
|
||||||
|
|
||||||
bool isParsed = cfg.ParseJson(&cfg, json.c_str());
|
bool isParsed = cfg.ParseJson(&cfg, json.c_str());
|
||||||
cout << endl;
|
cout << endl;
|
||||||
|
|
||||||
if (isParsed) {
|
if (isParsed) {
|
||||||
|
// test library functions
|
||||||
|
|
||||||
|
pop_min_time = get_minimal_parkingtime(&cfg);
|
||||||
|
pop_max_time = get_maximal_parkingtime(&cfg);
|
||||||
|
pop_min_price = get_minimal_parkingprice(&cfg);
|
||||||
|
pop_max_price = get_maximal_parkingprice(&cfg);
|
||||||
|
|
||||||
|
qCritical() << " pop_min_time: " << pop_min_time;
|
||||||
|
qCritical() << " pop_max_time: " << pop_max_time;
|
||||||
|
qCritical() << "pop_min_price: " << pop_min_price;
|
||||||
|
qCritical() << "pop_max_price: " << pop_max_price;
|
||||||
|
|
||||||
{
|
{
|
||||||
// zone 1 (lila)
|
// zone 1 (lila)
|
||||||
QDateTime s(QDate(2023, 11, 30), QTime());
|
QDateTime s(QDate(2023, 11, 30), QTime());
|
||||||
@ -279,17 +294,17 @@ int main() {
|
|||||||
for (int duration = 15; duration <= pop_max_time; duration += 5) {
|
for (int duration = 15; duration <= pop_max_time; duration += 5) {
|
||||||
for (int offset = 480; offset < 1080; ++offset) {
|
for (int offset = 480; offset < 1080; ++offset) {
|
||||||
QDateTime start = s.addSecs(offset * 60);
|
QDateTime start = s.addSecs(offset * 60);
|
||||||
//qCritical() << "start" << start.toString(Qt::ISODate);
|
// qCritical() << "start" << start.toString(Qt::ISODate);
|
||||||
|
|
||||||
double cost = calculator.GetCostFromDuration(&cfg, 3, start, end, duration);
|
double cost = Calculator::GetInstance().GetCostFromDuration(&cfg, 3, start, end, duration);
|
||||||
//Q_ASSERT(cost == duration*2.5);
|
// Q_ASSERT(cost == duration*2.5);
|
||||||
//qCritical() << "";
|
qCritical() << "";
|
||||||
//qCritical() << "start" << start.toString(Qt::ISODate)
|
qCritical() << "start" << start.toString(Qt::ISODate)
|
||||||
// << "end" << end.toString(Qt::ISODate)
|
<< "end" << end.toString(Qt::ISODate)
|
||||||
// << "duration" << duration
|
<< "duration" << duration
|
||||||
// << "cost" << cost;
|
<< "cost" << cost;
|
||||||
|
|
||||||
std::string duration = calculator.GetDurationFromCost(&cfg, 3, start.toString(Qt::ISODate).toStdString().c_str(), cost);
|
std::string duration = Calculator::GetInstance().GetDurationFromCost(&cfg, 3, start.toString(Qt::ISODate).toStdString().c_str(), cost);
|
||||||
//Q_ASSERT(cost == duration*2.5);
|
//Q_ASSERT(cost == duration*2.5);
|
||||||
qCritical() << "start" << start.toString(Qt::ISODate)
|
qCritical() << "start" << start.toString(Qt::ISODate)
|
||||||
<< "cost" << cost
|
<< "cost" << cost
|
||||||
@ -297,20 +312,22 @@ int main() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#if 0
|
||||||
{
|
{
|
||||||
QDateTime start(QDate(2023, 12, 1), QTime(18, 0));
|
QDateTime start(QDate(2023, 12, 1), QTime(18, 0));
|
||||||
QDateTime end;
|
QDateTime end;
|
||||||
double cost = calculator.GetCostFromDuration(&cfg, 3, start, end, 60);
|
double cost = Calculator::GetInstance().GetCostFromDuration(&cfg, 3, start, end, 60);
|
||||||
// Q_ASSERT(cost == 150);
|
// Q_ASSERT(cost == 150);
|
||||||
qCritical() << "end" << end.toString(Qt::ISODate) << "cost" << cost;
|
qCritical() << "end" << end.toString(Qt::ISODate) << "cost" << cost;
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
QDateTime start(QDate(2023, 10, 31), QTime(18, 0));
|
QDateTime start(QDate(2023, 10, 31), QTime(18, 0));
|
||||||
QDateTime end;
|
QDateTime end;
|
||||||
double cost = calculator.GetCostFromDuration(&cfg, 3, start, end, 60);
|
double cost = Calculator::GetInstance().GetCostFromDuration(&cfg, 3, start, end, 60);
|
||||||
//Q_ASSERT(cost == 150);
|
//Q_ASSERT(cost == 150);
|
||||||
qCritical() << "end" << end.toString(Qt::ISODate) << "cost" << cost;
|
qCritical() << "end" << end.toString(Qt::ISODate) << "cost" << cost;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user