1use gh_workflow::{Event, Job, 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().uses(
20 "zed-industries",
21 "zed",
22 ".github/workflows/extension_tests.yml",
23 "main",
24 );
25
26 named::job(job)
27}