in yaml_test_runner/src/generator.rs [291:319]
fn generate_fixture(test_fn: &Option<TestFn>) -> (Option<Tokens>, Option<Tokens>) {
if let Some(t) = test_fn {
let ident = syn::Ident::from(t.name.as_str());
// TODO: collect up the do calls for now. We do also need to handle skip, etc.
let tokens = t
.steps
.iter()
.filter_map(Step::r#do)
.map(|d| {
let mut tokens = Tokens::new();
ToTokens::to_tokens(d, &mut tokens);
tokens
})
.collect::<Vec<_>>();
(
Some(quote! {
async fn #ident(client: &Elasticsearch) -> anyhow::Result<()> {
#(#tokens)*
Ok(())
}
}),
Some(quote! { #ident(client).await?; }),
)
} else {
(None, None)
}
}