()
| 698 | |
| 699 | #[test] |
| 700 | fn test_new_session() { |
| 701 | let s = make_session(); |
| 702 | assert_eq!(s.session_id, "sess-abc-123"); |
| 703 | assert_eq!(s.agent_name, "claude-code"); |
| 704 | assert_eq!(s.agent_display_name, "Claude Code"); |
| 705 | // View name is haikunator-style: adjective-noun-hex |
| 706 | let parts: Vec<&str> = s.view_name.split('-').collect(); |
| 707 | assert_eq!( |
| 708 | parts.len(), |
| 709 | 3, |
| 710 | "view name '{}' should be adj-noun-hex", |
| 711 | s.view_name |
| 712 | ); |
| 713 | assert_eq!(parts[2].len(), 4); |
| 714 | assert_eq!(s.phase, Phase::Idle); |
| 715 | assert_eq!(s.turn_count, 0); |
| 716 | assert!(s.last_interaction.is_some()); |
| 717 | assert!(s.ended_at.is_none()); |
| 718 | assert!(s.transcript_path.is_none()); |
| 719 | assert!(s.first_prompt.is_none()); |
| 720 | assert!(s.files_touched.is_empty()); |
| 721 | assert!(s.current_turn_started_at.is_none()); |
| 722 | } |
| 723 | |
| 724 | #[test] |
| 725 | fn test_make_view_name() { |
nothing calls this directly
no test coverage detected