Fix tests on windows (#1222)

This commit is contained in:
Eric Biedert 2023-05-23 12:36:54 +02:00 committed by GitHub
parent 2cbeeae5da
commit ff903674f9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 15 additions and 6 deletions

View File

@ -124,6 +124,7 @@ struct Metadata {
struct Handler<'a> {
resolver: &'a dyn Resolver,
lang: Option<String>,
code: String,
outline: Vec<OutlineItem>,
id_base: String,
ids: &'a Arena<String>,
@ -134,6 +135,7 @@ impl<'a> Handler<'a> {
Self {
resolver,
lang: None,
code: String::new(),
outline: vec![],
id_base,
ids,
@ -141,7 +143,6 @@ impl<'a> Handler<'a> {
}
fn handle(&mut self, event: &mut md::Event<'a>) -> bool {
let lang = self.lang.take();
match event {
// Rewrite Markdown images.
md::Event::Start(md::Tag::Image(_, path, _)) => {
@ -207,17 +208,21 @@ impl<'a> Handler<'a> {
// Code blocks.
md::Event::Start(md::Tag::CodeBlock(md::CodeBlockKind::Fenced(lang))) => {
self.lang = Some(lang.as_ref().into());
self.code = String::new();
return false;
}
md::Event::End(md::Tag::CodeBlock(md::CodeBlockKind::Fenced(_))) => {
return false;
let Some(lang) = self.lang.take() else { return false };
let html = code_block(self.resolver, &lang, &self.code);
*event = md::Event::Html(html.raw.into());
}
// Example with preview.
md::Event::Text(text) => {
let Some(lang) = lang.as_deref() else { return true };
let html = code_block(self.resolver, lang, text);
*event = md::Event::Html(html.raw.into());
if self.lang.is_some() {
self.code.push_str(text);
return false;
}
}
_ => {}

View File

@ -378,7 +378,11 @@ fn test(
let mut compare_ever = false;
let mut rng = LinearShift::new();
let parts: Vec<_> = text.split("\n---").collect();
let parts: Vec<_> = text
.split("\n---")
.map(|s| s.strip_suffix('\r').unwrap_or(s))
.collect();
for (i, &part) in parts.iter().enumerate() {
if let Some(x) = args.subtest {
let x = usize::try_from(