Avoid automatic open of generated docx in unit tests
This commit is contained in:
@@ -34,7 +34,7 @@ impl Export for MonthlySchedule {
|
|||||||
) -> anyhow::Result<()> {
|
) -> anyhow::Result<()> {
|
||||||
match file_type {
|
match file_type {
|
||||||
FileType::Txt => self.export_as_txt(config, tracker)?,
|
FileType::Txt => self.export_as_txt(config, tracker)?,
|
||||||
FileType::Docx => self.export_as_doc(config)?,
|
FileType::Docx => self.export_as_docx(config)?,
|
||||||
};
|
};
|
||||||
|
|
||||||
Ok(())
|
Ok(())
|
||||||
@@ -51,18 +51,13 @@ impl MonthlySchedule {
|
|||||||
let mut writer = std::io::BufWriter::new(file);
|
let mut writer = std::io::BufWriter::new(file);
|
||||||
|
|
||||||
writer.write_all(self.pretty_print(config).as_bytes())?;
|
writer.write_all(self.pretty_print(config).as_bytes())?;
|
||||||
|
|
||||||
writer.write_all(self.report(config, tracker).as_bytes())?;
|
writer.write_all(self.report(config, tracker).as_bytes())?;
|
||||||
|
|
||||||
writer.flush()?;
|
writer.flush()?;
|
||||||
|
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn export_as_doc(&self, config: &UserConfig) -> anyhow::Result<()> {
|
pub fn generate_docx(&self, config: &UserConfig) -> Docx {
|
||||||
let path = std::path::Path::new("rota.docx");
|
|
||||||
let file = std::fs::File::create(path)?;
|
|
||||||
|
|
||||||
let header = Table::new(vec![
|
let header = Table::new(vec![
|
||||||
TableRow::new(vec![TableCell::new().add_paragraph(
|
TableRow::new(vec![TableCell::new().add_paragraph(
|
||||||
Paragraph::new()
|
Paragraph::new()
|
||||||
@@ -159,6 +154,13 @@ impl MonthlySchedule {
|
|||||||
}
|
}
|
||||||
|
|
||||||
doc = doc.add_table(residents_table);
|
doc = doc.add_table(residents_table);
|
||||||
|
doc
|
||||||
|
}
|
||||||
|
|
||||||
|
pub fn export_as_docx(&self, config: &UserConfig) -> anyhow::Result<()> {
|
||||||
|
let path = std::path::Path::new("rota.docx");
|
||||||
|
let file = std::fs::File::create(path)?;
|
||||||
|
let doc = self.generate_docx(config);
|
||||||
|
|
||||||
doc.build().pack(file)?;
|
doc.build().pack(file)?;
|
||||||
|
|
||||||
@@ -229,14 +231,14 @@ mod tests {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#[rstest]
|
#[rstest]
|
||||||
pub fn test_export_as_doc(
|
pub fn test_generate_docx(
|
||||||
mut schedule: MonthlySchedule,
|
mut schedule: MonthlySchedule,
|
||||||
mut tracker: WorkloadTracker,
|
mut tracker: WorkloadTracker,
|
||||||
scheduler: Scheduler,
|
scheduler: Scheduler,
|
||||||
) -> anyhow::Result<()> {
|
) -> anyhow::Result<()> {
|
||||||
assert!(scheduler.run(&mut schedule, &mut tracker)?);
|
assert!(scheduler.run(&mut schedule, &mut tracker)?);
|
||||||
|
|
||||||
schedule.export(FileType::Docx, &scheduler.config, &tracker)?;
|
schedule.generate_docx(&scheduler.config);
|
||||||
|
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user