graphile_worker_lifecycle_hooks/
result.rs1#[derive(Debug, Clone, Default, PartialEq, Eq)]
2pub enum HookResult {
3 #[default]
4 Continue,
5 Skip,
6 Fail(String),
7}
8
9#[derive(Debug, Clone)]
10pub enum JobScheduleResult {
11 Continue(serde_json::Value),
12 Skip,
13 Fail(String),
14}
15
16impl Default for JobScheduleResult {
17 fn default() -> Self {
18 JobScheduleResult::Continue(serde_json::Value::Null)
19 }
20}
21
22#[cfg(test)]
23mod tests {
24 use super::*;
25
26 #[test]
27 fn test_hook_result_default() {
28 let result = HookResult::default();
29 assert_eq!(result, HookResult::Continue);
30 }
31
32 #[test]
33 fn test_job_schedule_result_default() {
34 let result = JobScheduleResult::default();
35 match result {
36 JobScheduleResult::Continue(v) => assert_eq!(v, serde_json::Value::Null),
37 _ => panic!("Expected Continue variant"),
38 }
39 }
40}