run_tests.rs

 1use gh_workflow::{Event, Job, Level, Permissions, PullRequest, Push, UsesJob, Workflow};
 2
 3use crate::tasks::workflows::{
 4    steps::{NamedJob, named},
 5    vars::one_workflow_per_non_main_branch_and_token,
 6};
 7
 8pub(crate) fn run_tests() -> Workflow {
 9    let call_extension_tests = call_extension_tests();
10    named::workflow()
11        .on(Event::default()
12            .pull_request(PullRequest::default().add_branch("**"))
13            .push(Push::default().add_branch("main")))
14        .concurrency(one_workflow_per_non_main_branch_and_token("pr"))
15        .add_job(call_extension_tests.name, call_extension_tests.job)
16}
17
18pub(crate) fn call_extension_tests() -> NamedJob<UsesJob> {
19    let job = Job::default()
20        .permissions(Permissions::default().contents(Level::Read))
21        .uses(
22            "zed-industries",
23            "zed",
24            ".github/workflows/extension_tests.yml",
25            "main",
26        );
27
28    named::job(job)
29}