#![cfg(not(target_arch = "wasm32"))]
mod common;
use anytomd::{ConversionOptions, convert_file};
use common::normalize;
#[test]
fn test_xls_convert_file_sample() {
let result = convert_file("tests/fixtures/sample.xls", &ConversionOptions::default()).unwrap();
assert!(result.markdown.contains("## Sheet1"));
assert!(result.markdown.contains("| Alpha | Beta | Gamma | Delta |"));
assert!(result.markdown.contains("| 89 | 82 | 100 | 12 |"));
assert!(
result
.markdown
.contains("6ff4173b-42a5-4784-9b19-f49caff4d93d")
);
assert!(
result
.markdown
.contains("## 09060124-b5e7-4717-9d07-3c046eb")
);
assert!(result.markdown.contains("| ColA | ColB | ColC | ColD |"));
assert!(
result
.markdown
.contains("affc7dad-52dc-4b98-9b5d-51e65d8a8ad0")
);
}
#[test]
fn test_xls_golden_sample() {
let result = convert_file("tests/fixtures/sample.xls", &ConversionOptions::default()).unwrap();
let expected = include_str!("fixtures/expected/sample.xls.md");
assert_eq!(normalize(&result.markdown), normalize(expected));
}
#[test]
fn test_xls_convert_bytes_direct() {
let data = std::fs::read("tests/fixtures/sample.xls").unwrap();
let result = anytomd::convert_bytes(&data, "xls", &ConversionOptions::default()).unwrap();
assert!(result.markdown.contains("## Sheet1"));
assert!(result.markdown.contains("| Alpha | Beta | Gamma | Delta |"));
assert!(result.markdown.contains("| ColA | ColB | ColC | ColD |"));
}
#[test]
fn test_xls_unicode_cjk_content() {
let result = convert_file(
"tests/fixtures/sample_unicode.xls",
&ConversionOptions::default(),
)
.unwrap();
assert!(result.markdown.contains("홍길동"));
assert!(result.markdown.contains("김다영"));
assert!(result.markdown.contains("田中太郎"));
assert!(result.markdown.contains("서울"));
assert!(result.markdown.contains("東京"));
assert!(result.markdown.contains("北京"));
assert!(result.markdown.contains("| Name | Age | City |"));
}
#[test]
fn test_xls_emoji_content() {
let result = convert_file(
"tests/fixtures/sample_unicode.xls",
&ConversionOptions::default(),
)
.unwrap();
assert!(result.markdown.contains("🚀 Rocket Launch"));
assert!(result.markdown.contains("🎉 Party Pack"));
assert!(result.markdown.contains("📚 Book Set"));
assert!(result.markdown.contains("Special offer ✨"));
assert!(result.markdown.contains("한국어 포함 🇰🇷"));
assert!(result.markdown.contains("| 🎉 Party Pack | 24.5 | |"));
}
#[test]
fn test_xls_golden_unicode() {
let result = convert_file(
"tests/fixtures/sample_unicode.xls",
&ConversionOptions::default(),
)
.unwrap();
let expected = include_str!("fixtures/expected/sample_unicode.xls.md");
assert_eq!(normalize(&result.markdown), normalize(expected));
}
#[test]
fn test_xls_convert_bytes_unicode() {
let data = std::fs::read("tests/fixtures/sample_unicode.xls").unwrap();
let result = anytomd::convert_bytes(&data, "xls", &ConversionOptions::default()).unwrap();
assert!(result.markdown.contains("## Sheet1"));
assert!(result.markdown.contains("홍길동"));
assert!(result.markdown.contains("## Sheet2"));
assert!(result.markdown.contains("🚀 Rocket Launch"));
}