use super::builder::*;
pub fn basic_types() -> Vec<u8> {
let rows = r#"<row r="1">
<c r="A1" t="str"><v>日本語Text</v></c>
<c r="B1"><v>42</v></c>
<c r="C1"><v>19.99</v></c>
<c r="D1" s="1"><v>45000</v></c>
<c r="E1" t="b"><v>1</v></c>
<c r="F1" t="b"><v>0</v></c>
<c r="G1" t="e"><v>#N/A</v></c>
</row>"#;
build_zip(&[
(
"xl/_rels/workbook.xml.rels",
rels_xml(&[
("rId1", "worksheet", "worksheets/sheet1.xml"),
("rId2", "styles", "styles.xml"),
])
.as_bytes(),
),
(
"xl/workbook.xml",
workbook_xml(&[("Sheet1", "rId1", None)]).as_bytes(),
),
("xl/styles.xml", DATE_STYLES_XML),
(
"xl/worksheets/sheet1.xml",
worksheet_xml(rows, "").as_bytes(),
),
])
}
pub fn shared_strings() -> Vec<u8> {
let rows = r#"<row r="1">
<c r="A1" t="s"><v>0</v></c>
<c r="B1" t="s"><v>1</v></c>
<c r="C1" t="s"><v>0</v></c>
</row>"#;
build_zip(&[
(
"xl/_rels/workbook.xml.rels",
rels_xml(&[
("rId1", "worksheet", "worksheets/sheet1.xml"),
("rId2", "styles", "styles.xml"),
("rId3", "sharedStrings", "sharedStrings.xml"),
])
.as_bytes(),
),
(
"xl/workbook.xml",
workbook_xml(&[("Sheet1", "rId1", None)]).as_bytes(),
),
("xl/styles.xml", DEFAULT_STYLES_XML),
(
"xl/sharedStrings.xml",
shared_strings_xml(&["Apple", "Banana"]).as_bytes(),
),
(
"xl/worksheets/sheet1.xml",
worksheet_xml(rows, "").as_bytes(),
),
])
}
pub fn inline_strings() -> Vec<u8> {
let rows = r#"<row r="1">
<c r="A1" t="inlineStr"><is><t>Inline One</t></is></c>
<c r="B1" t="inlineStr"><is><t>Inline Two</t></is></c>
</row>"#;
build_zip(&[
(
"xl/_rels/workbook.xml.rels",
rels_xml(&[
("rId1", "worksheet", "worksheets/sheet1.xml"),
("rId2", "styles", "styles.xml"),
])
.as_bytes(),
),
(
"xl/workbook.xml",
workbook_xml(&[("Sheet1", "rId1", None)]).as_bytes(),
),
("xl/styles.xml", DEFAULT_STYLES_XML),
(
"xl/worksheets/sheet1.xml",
worksheet_xml(rows, "").as_bytes(),
),
])
}