use redskull_lib::recipe::*;
use redskull_lib::renderer::{MetaYamlRenderer, Renderer};
#[allow(dead_code)]
pub fn minimal_recipe(name: &str, version: &str) -> Recipe {
Recipe {
preamble: Preamble { name: name.to_string(), version: version.to_string() },
package: Package {},
source: Source {
url: format!("https://github.com/test/{name}/archive/v{version}.tar.gz"),
filename: format!("{name}-{version}.tar.gz"),
sha256: "deadbeef".repeat(8),
},
build: Build {
name: name.to_string(),
with_run_exports: true,
max_pin: "x.x".to_string(),
script: None,
},
requirements: Requirements { build: vec![], host: vec![], run: vec![] },
test: Test { commands: vec![] },
about: About {
home: None,
license: None,
license_family: None,
license_file: vec![],
summary: None,
dev_url: None,
doc_url: None,
},
extra: Extra {
additional_platforms: vec![],
recipe_maintainers: vec![],
identifiers: vec![],
skip_platforms: vec![],
},
}
}
#[allow(dead_code)]
pub fn render(recipe: &Recipe) -> String {
MetaYamlRenderer.render(recipe)
}
#[allow(dead_code)]
pub fn assert_contains(output: &str, needle: &str, msg: &str) {
assert!(output.contains(needle), "{msg}\nExpected to find: {needle}\nIn:\n{output}");
}
#[allow(dead_code)]
pub fn assert_not_contains(output: &str, needle: &str, msg: &str) {
assert!(!output.contains(needle), "{msg}\nExpected NOT to find: {needle}\nIn:\n{output}");
}