apicize_lib/execution/results/
execution_result_summary.rs1use serde::{Deserialize, Serialize};
2
3use crate::{ApicizeError, ApicizeTestBehavior};
4
5use super::execution_result_success::ExecutionResultSuccess;
6
7#[derive(Clone, Serialize, Deserialize)]
9#[serde(rename_all = "camelCase")]
10pub struct ExecutionResultSummary {
11 pub exec_ctr: usize,
13
14 pub request_or_group_id: String,
16
17 #[serde(skip_serializing_if = "Option::is_none")]
19 pub parent_exec_ctr: Option<usize>,
20
21 #[serde(skip_serializing_if = "Option::is_none")]
23 pub child_exec_ctrs: Option<Vec<usize>>,
24
25 pub level: usize,
27
28 pub name: String,
30
31 #[serde(skip_serializing_if = "Option::is_none")]
33 pub key: Option<String>,
34
35 #[serde(skip_serializing_if = "Option::is_none")]
37 pub tag: Option<String>,
38
39 #[serde(skip_serializing_if = "Option::is_none")]
41 pub method: Option<String>,
42
43 #[serde(skip_serializing_if = "Option::is_none")]
45 pub url: Option<String>,
46
47 pub executed_at: u128,
49
50 pub duration: u128,
52
53 #[serde(skip_serializing_if = "Option::is_none")]
55 pub status: Option<u16>,
56
57 #[serde(skip_serializing_if = "Option::is_none")]
59 pub status_text: Option<String>,
60
61 pub has_response_headers: bool,
63
64 pub response_body_length: Option<usize>,
66
67 pub success: ExecutionResultSuccess,
69
70 #[serde(skip_serializing_if = "Option::is_none")]
72 pub error: Option<ApicizeError>,
73
74 #[serde(skip_serializing_if = "Option::is_none")]
76 pub test_results: Option<Vec<ApicizeTestBehavior>>,
77
78 #[serde(skip_serializing_if = "Option::is_none")]
80 pub run_number: Option<usize>,
81
82 #[serde(skip_serializing_if = "Option::is_none")]
84 pub run_count: Option<usize>,
85
86 #[serde(skip_serializing_if = "Option::is_none")]
88 pub row_number: Option<usize>,
89
90 #[serde(skip_serializing_if = "Option::is_none")]
92 pub row_count: Option<usize>,
93}