Add a fleet overview page that shows every printer's status at once.
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -103,4 +103,41 @@ int main() {
|
||||
assert(!data.live());
|
||||
assert(data.status_text() == "PRINTER OFFLINE");
|
||||
assert(data.health_details().find("unavailable") != std::string::npos);
|
||||
|
||||
data.connected = true;
|
||||
data.online = "on";
|
||||
data.elegoo = false;
|
||||
data.print_error = "off";
|
||||
data.print_error_reason = "ok";
|
||||
data.hms_error = "off";
|
||||
data.status = "running";
|
||||
data.task = "Workshop organizer";
|
||||
data.progress = 67;
|
||||
data.time_left = 1.75f;
|
||||
data.remaining_unit = "h";
|
||||
data.finish_time = "16:05";
|
||||
assert(data.overview_task() == "Workshop organizer");
|
||||
assert(data.overview_meta() == "67% 16:05 1h 45m");
|
||||
data.task = "";
|
||||
assert(data.overview_task() == "No active print");
|
||||
data.connected = false;
|
||||
assert(data.overview_task() == "Waiting for Home Assistant");
|
||||
assert(data.overview_meta() == "--");
|
||||
|
||||
FleetCounts counts;
|
||||
data.connected = true;
|
||||
data.online = "on";
|
||||
data.status = "printing";
|
||||
tally(counts, data);
|
||||
data.status = "pause";
|
||||
tally(counts, data);
|
||||
data.print_error = "on";
|
||||
tally(counts, data);
|
||||
data.print_error = "off";
|
||||
data.online = "off";
|
||||
tally(counts, data);
|
||||
data.online = "unavailable";
|
||||
data.connected = true;
|
||||
tally(counts, data);
|
||||
assert(fleet_summary(counts) == "1 attention, 1 printing, 1 paused, 1 offline, 1 syncing");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user