()
| 467 | |
| 468 | #[test] |
| 469 | fn test_parse_session_start_camel_case() { |
| 470 | let hook = make_hook(); |
| 471 | let input = br#"{ |
| 472 | "hookEventName": "session_start", |
| 473 | "sessionId": "abc-123", |
| 474 | "cwd": "/Users/me/project", |
| 475 | "workspaceRoot": "/Users/me/project", |
| 476 | "timestamp": "2026-04-14T12:00:00Z", |
| 477 | "permissionMode": "default" |
| 478 | }"#; |
| 479 | let event = hook.parse_event(HookType::SessionStart, input).unwrap(); |
| 480 | assert_eq!(event.session_id, "abc-123"); |
| 481 | assert_eq!(event.event_type, HookType::SessionStart); |
| 482 | let raw = event.raw_json.as_ref().unwrap(); |
| 483 | assert_eq!(raw.get("provider").and_then(Value::as_str), Some("xai")); |
| 484 | } |
| 485 | |
| 486 | #[test] |
| 487 | fn test_parse_session_start_snake_case_alias() { |
nothing calls this directly
no test coverage detected