Public Access
Add meeting inactivity safeguards
PR and Push Build/Test / build-and-test (push) Failing after 14m53s
PR and Push Build/Test / build-and-test (push) Failing after 14m53s
This commit is contained in:
@@ -68,6 +68,70 @@ public sealed class MeetingSummaryToolTests
|
||||
Assert.Contains("# Summary\n\n- Done.", summary);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task WriteSummaryRenamesMeetingWhenTitleIsProvided()
|
||||
{
|
||||
var root = Path.Combine(Path.GetTempPath(), "meeting-assistant-tests", Guid.NewGuid().ToString("N"));
|
||||
var artifacts = new MeetingSessionArtifacts(
|
||||
MeetingNotePath: Path.Combine(root, "Meetings", "Notes", "meeting.md"),
|
||||
TranscriptPath: Path.Combine(root, "Meetings", "Transcripts", "transcript.md"),
|
||||
AssistantContextPath: Path.Combine(root, "Meetings", "Assistant Context", "context.md"),
|
||||
SummaryPath: Path.Combine(root, "Meetings", "Summaries", "summary.md"));
|
||||
Directory.CreateDirectory(Path.GetDirectoryName(artifacts.MeetingNotePath)!);
|
||||
await File.WriteAllTextAsync(
|
||||
artifacts.MeetingNotePath,
|
||||
"""
|
||||
---
|
||||
title: Meeting 2026-06-03 07:26
|
||||
start_time: "2026-06-03T07:26:00.0000000+02:00"
|
||||
attendees: []
|
||||
projects: []
|
||||
---
|
||||
|
||||
User note.
|
||||
""");
|
||||
var tools = new MeetingSummaryTools(artifacts);
|
||||
|
||||
await tools.WriteSummary("# Summary", "Renamed summary", "Notification Safeguard Test");
|
||||
|
||||
var meetingNote = await File.ReadAllTextAsync(artifacts.MeetingNotePath);
|
||||
var summary = await File.ReadAllTextAsync(artifacts.SummaryPath);
|
||||
Assert.Contains("title: Notification Safeguard Test", meetingNote);
|
||||
Assert.Contains("title: Notification Safeguard Test", summary);
|
||||
Assert.Contains("User note.", meetingNote);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task WriteSummaryKeepsMeetingTitleWhenTitleIsOmittedOrBlank()
|
||||
{
|
||||
var root = Path.Combine(Path.GetTempPath(), "meeting-assistant-tests", Guid.NewGuid().ToString("N"));
|
||||
var artifacts = new MeetingSessionArtifacts(
|
||||
MeetingNotePath: Path.Combine(root, "Meetings", "Notes", "meeting.md"),
|
||||
TranscriptPath: Path.Combine(root, "Meetings", "Transcripts", "transcript.md"),
|
||||
AssistantContextPath: Path.Combine(root, "Meetings", "Assistant Context", "context.md"),
|
||||
SummaryPath: Path.Combine(root, "Meetings", "Summaries", "summary.md"));
|
||||
Directory.CreateDirectory(Path.GetDirectoryName(artifacts.MeetingNotePath)!);
|
||||
await File.WriteAllTextAsync(
|
||||
artifacts.MeetingNotePath,
|
||||
"""
|
||||
---
|
||||
title: Architecture Review
|
||||
attendees: []
|
||||
projects: []
|
||||
---
|
||||
""");
|
||||
var tools = new MeetingSummaryTools(artifacts);
|
||||
|
||||
await tools.WriteSummary("# Summary", "Original title summary");
|
||||
await tools.WriteSummary("# Summary", "Blank title summary", " ");
|
||||
|
||||
var meetingNote = await File.ReadAllTextAsync(artifacts.MeetingNotePath);
|
||||
var summary = await File.ReadAllTextAsync(artifacts.SummaryPath);
|
||||
Assert.Contains("title: Architecture Review", meetingNote);
|
||||
Assert.Contains("title: Architecture Review", summary);
|
||||
Assert.DoesNotContain("Meeting Summary", summary);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task WriteSummaryPreservesExistingSummaryAttendees()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user