use tokio::runtime;
use gha_runner::*;
const CARGO_TEST_FAILURE_EXIT_CODE: i32 = 101;
#[test]
fn basic() {
env_logger::init();
let images: DockerImageMapping = DockerImageMapping {
ubuntu_18_04: "ghcr.io/catthehacker/ubuntu:act-18.04".into(),
ubuntu_20_04: "ghcr.io/catthehacker/ubuntu:act-20.04".into(),
};
let runtime = runtime::Builder::new_current_thread()
.enable_all()
.build()
.unwrap();
runtime.block_on(async move {
match run_workflow_with_local_backend(
"Pernosco",
"github-actions-test",
"6475d0f048a72996e3bd559cdd3763f53fe3d072",
".github/workflows/build.yml",
"Build+test (stable, ubuntu-18.04)",
&images,
LocalDockerOptions::default(),
)
.await
{
WorkflowResult::AllStepsPassed => panic!("Expected test failure"),
WorkflowResult::StepFailed {
step_name,
exit_code,
} => {
assert_eq!(
step_name,
Some("cargo test (debug; default features)".to_string())
);
assert_eq!(exit_code, CARGO_TEST_FAILURE_EXIT_CODE);
}
}
});
}