use proptest::prelude::*;
use sheeter_engine::{convert, Format};
proptest! {
#![proptest_config(ProptestConfig::with_cases(64))]
#[test]
fn csv_json_csv_lossless(rows in prop::collection::vec("[a-zA-Z0-9 ]{1,20}", 1..20)) {
let csv = format!("col\n{}\n", rows.join("\n"));
let json = convert(Format::Csv, Format::Json, &csv).unwrap();
let back = convert(Format::Json, Format::Csv, &json).unwrap();
prop_assert_eq!(back, csv);
}
#[test]
fn tsv_json_tsv_lossless(rows in prop::collection::vec("[a-zA-Z0-9 ]{1,20}", 1..20)) {
let tsv = format!("col\n{}\n", rows.join("\n"));
let json = convert(Format::Tsv, Format::Json, &tsv).unwrap();
let back = convert(Format::Json, Format::Tsv, &json).unwrap();
prop_assert_eq!(back, tsv);
}
}