]> git.lizzy.rs Git - rust.git/blobdiff - src/libtest/event.rs
Rollup merge of #66789 - eddyb:mir-source-scope-local-data, r=oli-obk
[rust.git] / src / libtest / event.rs
index b84551826c691d6204fccf5f5144fbf603896d7a..eefbd2d6a813a5804ddd0d6926058f1cc26d683b 100644 (file)
@@ -5,11 +5,37 @@
 use super::test_result::TestResult;
 use super::time::TestExecTime;
 
-#[derive(Clone)]
+#[derive(Debug, Clone)]
+pub struct CompletedTest {
+    pub desc: TestDesc,
+    pub result: TestResult,
+    pub exec_time: Option<TestExecTime>,
+    pub stdout: Vec<u8>,
+}
+
+impl CompletedTest {
+    pub fn new(
+        desc: TestDesc,
+        result: TestResult,
+        exec_time: Option<TestExecTime>,
+        stdout: Vec<u8>
+    ) -> Self {
+        Self {
+            desc,
+            result,
+            exec_time,
+            stdout,
+        }
+    }
+}
+
+unsafe impl Send for CompletedTest {}
+
+#[derive(Debug, Clone)]
 pub enum TestEvent {
     TeFiltered(Vec<TestDesc>),
     TeWait(TestDesc),
-    TeResult(TestDesc, TestResult, Option<TestExecTime>, Vec<u8>),
+    TeResult(CompletedTest),
     TeTimeout(TestDesc),
     TeFilteredOut(usize),
 }