From 1f952b8e03e5b7f8685cc3e0e4ce708a6ded6057 Mon Sep 17 00:00:00 2001 From: Nils Pukropp Date: Mon, 30 Mar 2026 00:44:16 +0200 Subject: [PATCH] added testfiles --- rustitch/Cargo.toml | 3 + rustitch/tests/fixtures/JLS_Gnome Barfs.PES | Bin 0 -> 67383 bytes rustitch/tests/fixtures/UFront.PES | Bin 0 -> 70405 bytes rustitch/tests/fixtures/UrsulaOne.PES | Bin 0 -> 48758 bytes rustitch/tests/pes_files.rs | 199 ++++++++++++++++++++ 5 files changed, 202 insertions(+) create mode 100644 rustitch/tests/fixtures/JLS_Gnome Barfs.PES create mode 100644 rustitch/tests/fixtures/UFront.PES create mode 100644 rustitch/tests/fixtures/UrsulaOne.PES create mode 100644 rustitch/tests/pes_files.rs diff --git a/rustitch/Cargo.toml b/rustitch/Cargo.toml index dac3b48..550bdab 100644 --- a/rustitch/Cargo.toml +++ b/rustitch/Cargo.toml @@ -7,3 +7,6 @@ edition = "2021" thiserror = "2" tiny-skia = "0.11" png = "0.17" + +[dev-dependencies] +png = "0.17" diff --git a/rustitch/tests/fixtures/JLS_Gnome Barfs.PES b/rustitch/tests/fixtures/JLS_Gnome Barfs.PES new file mode 100644 index 0000000000000000000000000000000000000000..406786a80f11c686fd8969ff96b321403084c59a GIT binary patch literal 67383 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%0A_*Uo_Uju39TY#?y{xR_Pp!vr+E1RzZz8?5; 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 K{=%o2g#I5E(OzBv literal 0 HcmV?d00001 diff --git a/rustitch/tests/fixtures/UrsulaOne.PES b/rustitch/tests/fixtures/UrsulaOne.PES new file mode 100644 index 0000000000000000000000000000000000000000..3a976417b92ae7a5a9d83f3e0fc32af351b59f14 GIT binary patch literal 48758 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 0, + "expected at least one color" + ); + assert_eq!( + design.pec_header.color_indices.len(), + design.pec_header.color_count as usize + ); +} + +#[test] +fn ursula_one_has_colors() { + let design = pes::parse(URSULA_ONE).unwrap(); + assert!(design.pec_header.color_count > 0); + // All color indices should be valid palette entries (0..65) + for &idx in &design.pec_header.color_indices { + assert!( + (idx as usize) < pes::PEC_PALETTE.len(), + "color index {idx} out of palette range" + ); + } +} + +// -- Stitch commands --------------------------------------------------------- + +#[test] +fn gnome_barfs_commands_end_properly() { + let design = pes::parse(GNOME_BARFS).unwrap(); + let last = design.commands.last().unwrap(); + assert!( + matches!(last, StitchCommand::End), + "expected End command as last, got {last:?}" + ); +} + +#[test] +fn ursula_one_commands_end_properly() { + let design = pes::parse(URSULA_ONE).unwrap(); + let last = design.commands.last().unwrap(); + assert!( + matches!(last, StitchCommand::End), + "expected End command as last, got {last:?}" + ); +} + +#[test] +fn ufront_has_stitches() { + let design = pes::parse(UFRONT).unwrap(); + let stitch_count = design + .commands + .iter() + .filter(|c| matches!(c, StitchCommand::Stitch { .. })) + .count(); + assert!( + stitch_count > 100, + "expected many stitches, got {stitch_count}" + ); +} + +#[test] +fn gnome_barfs_has_color_changes() { + let design = pes::parse(GNOME_BARFS).unwrap(); + let changes = design + .commands + .iter() + .filter(|c| matches!(c, StitchCommand::ColorChange)) + .count(); + // Multi-color design should have at least one color change + assert!(changes > 0, "expected color changes, got none"); +} + +// -- Resolve to segments ----------------------------------------------------- + +#[test] +fn resolve_gnome_barfs() { + let design = pes::parse(GNOME_BARFS).unwrap(); + let resolved = pes::resolve(&design).unwrap(); + + assert!(!resolved.segments.is_empty()); + assert!(!resolved.colors.is_empty()); + + // Bounding box should be non-degenerate + assert!(resolved.bounds.max_x > resolved.bounds.min_x); + assert!(resolved.bounds.max_y > resolved.bounds.min_y); +} + +#[test] +fn resolve_ursula_one() { + let design = pes::parse(URSULA_ONE).unwrap(); + let resolved = pes::resolve(&design).unwrap(); + + assert!(!resolved.segments.is_empty()); + assert!(resolved.bounds.max_x > resolved.bounds.min_x); + assert!(resolved.bounds.max_y > resolved.bounds.min_y); +} + +#[test] +fn resolve_ufront() { + let design = pes::parse(UFRONT).unwrap(); + let resolved = pes::resolve(&design).unwrap(); + + assert!(!resolved.segments.is_empty()); + + // All segment color indices should be within the resolved color list + let max_ci = resolved + .segments + .iter() + .map(|s| s.color_index) + .max() + .unwrap(); + assert!( + max_ci < resolved.colors.len(), + "segment references color {max_ci} but only {} colors resolved", + resolved.colors.len() + ); +} + +// -- Full thumbnail pipeline ------------------------------------------------- + +#[test] +fn thumbnail_gnome_barfs_128() { + let png = rustitch::thumbnail(GNOME_BARFS, 128).unwrap(); + assert_png_dimensions(&png, 128, 128); +} + +#[test] +fn thumbnail_ursula_one_256() { + let png = rustitch::thumbnail(URSULA_ONE, 256).unwrap(); + assert_png_dimensions(&png, 256, 256); +} + +#[test] +fn thumbnail_ufront_64() { + let png = rustitch::thumbnail(UFRONT, 64).unwrap(); + assert_png_dimensions(&png, 64, 64); +} + +#[test] +fn thumbnail_gnome_barfs_not_blank() { + let png = rustitch::thumbnail(GNOME_BARFS, 128).unwrap(); + let pixels = decode_png_pixels(&png); + // At least some pixels should have non-zero alpha (not fully transparent) + let opaque_count = pixels.chunks_exact(4).filter(|px| px[3] > 0).count(); + assert!( + opaque_count > 100, + "thumbnail looks blank, only {opaque_count} non-transparent pixels" + ); +} + +// -- Helpers ----------------------------------------------------------------- + +fn assert_png_dimensions(png_data: &[u8], expected_w: u32, expected_h: u32) { + let decoder = png::Decoder::new(png_data); + let reader = decoder.read_info().unwrap(); + let info = reader.info(); + assert_eq!(info.width, expected_w, "unexpected PNG width"); + assert_eq!(info.height, expected_h, "unexpected PNG height"); + assert_eq!(info.color_type, png::ColorType::Rgba); + assert_eq!(info.bit_depth, png::BitDepth::Eight); +} + +fn decode_png_pixels(png_data: &[u8]) -> Vec { + let decoder = png::Decoder::new(png_data); + let mut reader = decoder.read_info().unwrap(); + let mut buf = vec![0u8; reader.output_buffer_size()]; + reader.next_frame(&mut buf).unwrap(); + buf +}