Resolve the executors to operate on from the requested modes. An empty list of modes means "every executor".
(modes: &[RunnerMode])
| 44 | /// |
| 45 | /// An empty list of modes means "every executor". |
| 46 | fn get_executors_from_modes(modes: &[RunnerMode]) -> Vec<Box<dyn Executor>> { |
| 47 | if modes.is_empty() { |
| 48 | get_all_executors() |
| 49 | } else { |
| 50 | modes |
| 51 | .iter() |
| 52 | .map(|mode| get_executor_from_mode(mode, None)) |
| 53 | .collect() |
| 54 | } |
| 55 | } |
| 56 | |
| 57 | async fn setup(modes: &[RunnerMode], setup_cache_dir: Option<&Path>) -> Result<()> { |
| 58 | let system_info = SystemInfo::new()?; |
no test coverage detected