55 lines
1.8 KiB
C++
55 lines
1.8 KiB
C++
#include "dashboard.h"
|
|
#include <cassert>
|
|
|
|
int main() {
|
|
using namespace bambu_display;
|
|
assert(remaining(1.75f, "h") == "1h 45m");
|
|
assert(remaining(105.0f, "min") == "1h 45m");
|
|
assert(remaining(6300.0f, "s") == "1h 45m");
|
|
assert(remaining(0.15f, "h") == "0h 09m");
|
|
assert(remaining(NAN, "h") == "--");
|
|
assert(remaining(-1, "min") == "--");
|
|
assert(remaining(10, "") == "--");
|
|
assert(remaining(INFINITY, "h") == "--");
|
|
assert(number(NAN) == "--");
|
|
assert(temperature(219, 220, "°C") == "219 / 220 °C");
|
|
assert(filament_color("#60DE9AFF") == GREEN);
|
|
assert(filament_color("60de9a") == GREEN);
|
|
assert(filament_color("#60DE9AZZ") == TRACK);
|
|
assert(filament_color("unknown") == TRACK);
|
|
assert(gauge_value(NAN, 100) == 0);
|
|
assert(gauge_value(110, 100) == 100);
|
|
assert(gauge_value(-10, 100) == 0);
|
|
|
|
Snapshot data;
|
|
data.online = "on";
|
|
data.status = "running";
|
|
assert(!data.live());
|
|
assert(data.status_text() == "HA OFFLINE");
|
|
data.connected = true;
|
|
assert(data.live());
|
|
assert(data.status_text() == "PRINTING");
|
|
data.online = "off";
|
|
assert(!data.live());
|
|
assert(data.status_text() == "PRINTER OFFLINE");
|
|
data.online = "unavailable";
|
|
assert(data.status_text() == "SYNCING");
|
|
data.online = "on";
|
|
data.status = "unknown";
|
|
assert(!data.live());
|
|
data.status = "pause";
|
|
assert(data.status_text() == "PAUSED");
|
|
assert(data.status_color() == AMBER);
|
|
data.print_error = "on";
|
|
assert(data.status_text() == "PRINT ERROR");
|
|
assert(data.status_color() == RED);
|
|
data.print_error = "off";
|
|
data.hms_error = "True";
|
|
assert(data.status_text() == "HMS ALERT");
|
|
assert(data.status_color() == RED);
|
|
data.hms_error = "off";
|
|
data.status = "finish";
|
|
assert(data.status_text() == "COMPLETE");
|
|
assert(data.status_color() == GREEN);
|
|
}
|