Files
ElyOffice/crates/ely-platform/tests/packaging.rs
T
ZacharyZhang-NY b7fca0146d Ely Office: six offline-first desktop apps in Rust and GPUI
ElyDoc, ElyTable, ElyShow (LibreOfficeKit), ElyPDF (MuPDF), ElyTree (Git),
ElyMark (Milkdown and CodeMirror in CEF). ElyMail and ElyAgent follow.
2026-10-08 21:20:08 -04:00

25 lines
837 B
Rust

use ely_platform::AppId::{self, *};
#[test]
fn packaging_table_lists_the_apps_in_prd_order() {
let apps: [AppId; 8] = [Doc, Table, Show, Pdf, Mail, Tree, Mark, Agent];
let table = include_str!("../../../packaging/apps.tsv");
let rows: Vec<Vec<&str>> = table
.lines()
.map(|line| line.split('\t').collect())
.collect();
assert_eq!(rows.len(), apps.len());
for (row, app) in rows.iter().zip(apps) {
assert_eq!(row[..2], [app.slug(), app.name()]);
assert!(
row[2].ends_with(';'),
"{} has no desktop categories",
app.slug()
);
// Mail and Agent ship in the second batch.
let batch = if matches!(app, Mail | Agent) { "2" } else { "1" };
assert_eq!(row[3], batch, "{} is in the wrong batch", app.slug());
}
}