| 1 | //! Module containing different events that can occur |
| 2 | //! during tests execution process. |
| 3 | |
| 4 | use super::test_result::TestResult; |
| 5 | use super::time::TestExecTime; |
| 6 | use super::types::{TestDesc, TestId}; |
| 7 | |
| 8 | #[derive (Debug, Clone)] |
| 9 | pub struct CompletedTest { |
| 10 | pub id: TestId, |
| 11 | pub desc: TestDesc, |
| 12 | pub result: TestResult, |
| 13 | pub exec_time: Option<TestExecTime>, |
| 14 | pub stdout: Vec<u8>, |
| 15 | } |
| 16 | |
| 17 | impl CompletedTest { |
| 18 | pub fn new( |
| 19 | id: TestId, |
| 20 | desc: TestDesc, |
| 21 | result: TestResult, |
| 22 | exec_time: Option<TestExecTime>, |
| 23 | stdout: Vec<u8>, |
| 24 | ) -> Self { |
| 25 | Self { id, desc, result, exec_time, stdout } |
| 26 | } |
| 27 | } |
| 28 | |
| 29 | #[derive (Debug, Clone)] |
| 30 | pub enum TestEvent { |
| 31 | TeFiltered(usize, Option<u64>), |
| 32 | TeWait(TestDesc), |
| 33 | TeResult(CompletedTest), |
| 34 | TeTimeout(TestDesc), |
| 35 | TeFilteredOut(usize), |
| 36 | } |
| 37 | |