mirror of
https://github.com/henrywhitaker3/Speedtest-Tracker.git
synced 2025-12-31 10:07:21 +01:00
121 lines
3.4 KiB
C
121 lines
3.4 KiB
C
//
|
|
// Created by Francesco Laurita on 6/2/16.
|
|
//
|
|
|
|
#ifndef SPEEDTEST_TESTCONFIGTEMPLATE_H
|
|
#define SPEEDTEST_TESTCONFIGTEMPLATE_H
|
|
|
|
#include "SpeedTest.h"
|
|
|
|
const TestConfig preflightConfigDownload = {
|
|
600000, // start_size
|
|
2000000, // max_size
|
|
125000, // inc_size
|
|
4096, // buff_size
|
|
10000, // min_test_time_ms
|
|
2, // Concurrency
|
|
"Preflight check"
|
|
};
|
|
|
|
const TestConfig slowConfigDownload = {
|
|
100000, // start_size
|
|
500000, // max_size
|
|
10000, // inc_size
|
|
1024, // buff_size
|
|
20000, // min_test_time_ms
|
|
2, // Concurrency
|
|
"Very-slow-line line type detected: profile selected slowband"
|
|
};
|
|
|
|
const TestConfig slowConfigUpload = {
|
|
50000, // start_size
|
|
80000, // max_size
|
|
1000, // inc_size
|
|
1024, // buff_size
|
|
20000, // min_test_time_ms
|
|
2, // Concurrency
|
|
"Very-slow-line line type detected: profile selected slowband"
|
|
};
|
|
|
|
|
|
const TestConfig narrowConfigDownload = {
|
|
1000000, // start_size
|
|
100000000, // max_size
|
|
750000, // inc_size
|
|
4096, // buff_size
|
|
20000, // min_test_time_ms
|
|
2, // Concurrency
|
|
"Buffering-lover line type detected: profile selected narrowband"
|
|
};
|
|
|
|
const TestConfig narrowConfigUpload = {
|
|
1000000, // start_size
|
|
100000000, // max_size
|
|
550000, // inc_size
|
|
4096, // buff_size
|
|
20000, // min_test_time_ms
|
|
2, // Concurrency
|
|
"Buffering-lover line type detected: profile selected narrowband"
|
|
};
|
|
|
|
const TestConfig broadbandConfigDownload = {
|
|
1000000, // start_size
|
|
100000000, // max_size
|
|
750000, // inc_size
|
|
65536, // buff_size
|
|
20000, // min_test_time_ms
|
|
32, // concurrency
|
|
"Broadband line type detected: profile selected broadband"
|
|
|
|
};
|
|
|
|
const TestConfig broadbandConfigUpload = {
|
|
1000000, // start_size
|
|
70000000, // max_size
|
|
250000, // inc_size
|
|
65536, // buff_size
|
|
20000, // min_test_time_ms
|
|
8, // concurrency
|
|
"Broadband line type detected: profile selected broadband"
|
|
};
|
|
|
|
const TestConfig fiberConfigDownload = {
|
|
5000000, // start_size
|
|
120000000, // max_size
|
|
950000, // inc_size
|
|
65536, // buff_size
|
|
20000, // min_test_time_ms
|
|
32, // concurrency
|
|
"Fiber / Lan line type detected: profile selected fiber"
|
|
};
|
|
|
|
const TestConfig fiberConfigUpload = {
|
|
1000000, // start_size
|
|
70000000, // max_size
|
|
250000, // inc_size
|
|
65536, // buff_size
|
|
20000, // min_test_time_ms
|
|
12, // concurrency
|
|
"Fiber / Lan line type detected: profile selected fiber"
|
|
};
|
|
|
|
void testConfigSelector(const double preSpeed, TestConfig& uploadConfig, TestConfig& downloadConfig){
|
|
uploadConfig = slowConfigUpload;
|
|
downloadConfig = slowConfigDownload;
|
|
|
|
|
|
if (preSpeed > 4 && preSpeed <= 30){
|
|
downloadConfig = narrowConfigDownload;
|
|
uploadConfig = narrowConfigUpload;
|
|
} else if (preSpeed > 30 && preSpeed < 150) {
|
|
downloadConfig = broadbandConfigDownload;
|
|
uploadConfig = broadbandConfigUpload;
|
|
} else if (preSpeed >= 150) {
|
|
downloadConfig = fiberConfigDownload;
|
|
uploadConfig = fiberConfigUpload;
|
|
}
|
|
|
|
}
|
|
|
|
#endif //SPEEDTEST_TESTCONFIGTEMPLATE_H
|