From: Ben Pfaff Date: Thu, 10 Apr 2025 15:18:35 +0000 (-0700) Subject: 1d test X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0a077594a0c9b8b59c16207e94bc5c01a86fb26d;p=pspp 1d test --- diff --git a/rust/pspp/src/output/pivot/test.rs b/rust/pspp/src/output/pivot/test.rs index 35d1481701..5858b4f8c0 100644 --- a/rust/pspp/src/output/pivot/test.rs +++ b/rust/pspp/src/output/pivot/test.rs @@ -22,27 +22,39 @@ fn color() { assert_eq!("transparent".parse(), Ok(Color::new(0, 0, 0).with_alpha(0))); } -#[test] -fn pivot_table_1d() { - let mut group = GroupBuilder::new(Value::new_text("smaller")); +fn d1(title: &str, axis: Axis3) -> PivotTable { + let mut group = GroupBuilder::new(Value::new_text("a")).with_label_shown(); for name in ["a1", "a2", "a3"] { group.push(Value::new_text(name)); } - let mut bigger_group = GroupBuilder::new(Value::new_text("bigger")); - bigger_group.push(group); - for name in ["b1", "b2", "b3"] { - bigger_group.push(Value::new_text(name)); - } - let dimension = DimensionBuilder::new(Axis3::X, bigger_group); - let mut pt = PivotTableBuilder::new(Value::new_text("Columns"), &[dimension]); - for i in 0..5 { + let dimension = DimensionBuilder::new(axis, group); + let mut pt = PivotTableBuilder::new(Value::new_text(title), &[dimension]); + for i in 0..3 { pt.insert(&[i], Value::new_integer(Some(i as f64))); } - let mut driver = TextDriver::new(File::create("/dev/stdout").unwrap()); - let mut pt = pt.build(); - driver.write(&Arc::new(Item::new(Details::Table(Box::new(pt.clone()))))); - pt.transpose(); - driver.write(&Arc::new(Item::new(Details::Table(Box::new(pt))))); + pt.with_look(test_look()).build() +} + +#[test] +fn d1_c() { + assert_eq!( + d1("Columns", Axis3::X).to_string(), + "\ +Columns +╭────────╮ +│ a │ +├──┬──┬──┤ +│a1│a2│a3│ +├──┼──┼──┤ +│ 0│ 1│ 2│ +╰──┴──┴──╯ +" + ); +} + +#[test] +fn d1_r() { + print!("{}", d1("Rows", Axis3::Y)); } fn test_look() -> Arc {