ElyDoc, ElyTable, ElyShow (LibreOfficeKit), ElyPDF (MuPDF), ElyTree (Git), ElyMark (Milkdown and CodeMirror in CEF). ElyMail and ElyAgent follow.
25 lines
837 B
Rust
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());
|
|
}
|
|
}
|