1 write to MessagePart
Aspire.Dashboard (1)
Model\GenAI\GenAIItemPartViewModel.cs (1)
57MessagePart = part,
49 references to MessagePart
Aspire.Dashboard (15)
Components\Dialogs\GenAIVisualizerDialog.razor.cs (2)
171if (part.MessagePart is ToolCallRequestPart { } p && p.Id == id) 293switch (itemPart.MessagePart)
Model\GenAI\GenAIItemViewModel.cs (3)
40if (ItemParts.Any(p => p.MessagePart?.Type is MessagePart.ToolCallType or MessagePart.ServerToolCallType)) 49if (ItemParts.Any(p => p.MessagePart?.Type is MessagePart.ToolCallType or MessagePart.ServerToolCallType)) 53if (ItemParts.Any(p => p.MessagePart?.Type is MessagePart.ToolCallResponseType or MessagePart.ServerToolCallResponseType))
Model\GenAI\GenAIVisualizerDialogViewModel.cs (10)
205if (partViewModel.MessagePart is TextPart textPart) 212else if (partViewModel.MessagePart is ToolCallRequestPart toolCallRequestPart) 219else if (partViewModel.MessagePart is ToolCallResponsePart toolCallResponsePart) 226else if (partViewModel.MessagePart is GenericPart) 230else if (partViewModel.MessagePart is BlobPart blobPart) 237else if (partViewModel.MessagePart is UriPart uriPart) 244else if (partViewModel.MessagePart is FilePart filePart) 251else if (partViewModel.MessagePart is ReasoningPart reasoningPart) 258else if (partViewModel.MessagePart is ServerToolCallPart) 262else if (partViewModel.MessagePart is ServerToolCallResponsePart serverToolCallResponsePart)
Aspire.Dashboard.Tests (34)
Model\GenAIVisualizerDialogViewModelTests.cs (34)
197p => Assert.Equal("System!", Assert.IsType<TextPart>(p.MessagePart).Content)); 204p => Assert.Equal("User!", Assert.IsType<TextPart>(p.MessagePart).Content)); 211p => Assert.Equal("Assistant!", Assert.IsType<TextPart>(p.MessagePart).Content)); 357p => Assert.Equal("System!", Assert.IsType<TextPart>(p.MessagePart).Content)); 364p => Assert.Equal("User!", Assert.IsType<TextPart>(p.MessagePart).Content)); 371p => Assert.Equal("Assistant!", Assert.IsType<TextPart>(p.MessagePart).Content)); 564p => Assert.Equal("System!", Assert.IsType<TextPart>(p.MessagePart).Content)); 571p => Assert.Equal("User!", Assert.IsType<TextPart>(p.MessagePart).Content)); 580var toolCallRequestPart = Assert.IsType<ToolCallRequestPart>(p.MessagePart); 590p => Assert.Equal(@"[""Jack"",""Jane""]", Assert.IsType<ToolCallResponsePart>(p.MessagePart).Response!.ToJsonString())); 597p => Assert.Equal("Output!", Assert.IsType<TextPart>(p.MessagePart).Content)); 760p => Assert.Equal("", Assert.IsType<TextPart>(p.MessagePart).Content)); 767p => Assert.Equal("", Assert.IsType<TextPart>(p.MessagePart).Content)); 776var toolCallRequestPart = Assert.IsType<ToolCallRequestPart>(p.MessagePart); 786p => Assert.Null(Assert.IsType<ToolCallResponsePart>(p.MessagePart).Response)); 793p => Assert.Equal("", Assert.IsType<TextPart>(p.MessagePart).Content)); 897p => Assert.Equal("You are a helpful assistant.", Assert.IsType<TextPart>(p.MessagePart).Content)); 904p => Assert.Equal("Hello, how are you?", Assert.IsType<TextPart>(p.MessagePart).Content)); 911p => Assert.Equal("I'm doing well, thank you!", Assert.IsType<TextPart>(p.MessagePart).Content)); 973p => Assert.Equal("You are a coding assistant.", Assert.IsType<TextPart>(p.MessagePart).Content)); 980p => Assert.Equal("Write a hello world program.", Assert.IsType<TextPart>(p.MessagePart).Content)); 987p => Assert.Equal("Here's a simple hello world program...", Assert.IsType<TextPart>(p.MessagePart).Content)); 1057p => Assert.Equal("You are a helpful assistant.", Assert.IsType<TextPart>(p.MessagePart).Content)); 1064p => Assert.Equal("What is 2+2?", Assert.IsType<TextPart>(p.MessagePart).Content)); 1071p => Assert.Equal("Follow up question.", Assert.IsType<TextPart>(p.MessagePart).Content)); 1078p => Assert.Equal("The answer is 4.", Assert.IsType<TextPart>(p.MessagePart).Content)); 1085p => Assert.Equal("Follow up answer.", Assert.IsType<TextPart>(p.MessagePart).Content)); 1362p => Assert.Equal("You are a helpful assistant.", Assert.IsType<TextPart>(p.MessagePart).Content)); 1368p => Assert.Equal("Hello!", Assert.IsType<TextPart>(p.MessagePart).Content)); 1374p => Assert.Equal("Hi there!", Assert.IsType<TextPart>(p.MessagePart).Content)); 2202p => Assert.Equal("First message", Assert.IsType<TextPart>(p.MessagePart).Content)); 2208p => Assert.Equal("Second message", Assert.IsType<TextPart>(p.MessagePart).Content)); 2274p => Assert.Equal("First instruction", Assert.IsType<TextPart>(p.MessagePart).Content), 2343p => Assert.Equal("Complete output", Assert.IsType<TextPart>(p.MessagePart).Content));