2 writes to MediaType
Microsoft.Extensions.AI.Abstractions (2)
..\..\..\..\src\Libraries\Microsoft.Extensions.AI.Abstractions\Contents\DataContent.cs (2)
102MediaType = DataUriParser.ThrowIfInvalidMediaType(mediaType); 126MediaType = DataUriParser.ThrowIfInvalidMediaType(mediaType);
106 references to MediaType
Microsoft.Extensions.AI (7)
..\..\..\..\src\Libraries\Microsoft.Extensions.AI\ChatCompletion\ImageGeneratingChatClient.cs (2)
394if (content is DataContent imageContent && imageContent.MediaType.StartsWith("image/", StringComparison.OrdinalIgnoreCase)) 457if (content is DataContent imageContent && imageContent.MediaType.StartsWith("image/", StringComparison.OrdinalIgnoreCase))
..\..\..\..\src\Libraries\Microsoft.Extensions.AI\Common\OtelMessageSerializer.cs (2)
98MimeType = dc.MediaType, 99Modality = DeriveModalityFromMediaType(dc.MediaType),
..\..\..\..\src\Libraries\Microsoft.Extensions.AI\Realtime\OpenTelemetryRealtimeClientSession.cs (3)
364MimeType = audioAppendMsg.Content.MediaType, 561MimeType = dc.MediaType, 562Modality = OtelMessageSerializer.DeriveModalityFromMediaType(dc.MediaType),
Microsoft.Extensions.AI.Abstractions (15)
..\..\..\..\src\Libraries\Microsoft.Extensions.AI.Abstractions\ChatCompletion\ChatResponseExtensions.cs (3)
323canMerge: static (r1, r2) => r1.MediaType == r2.MediaType && r1.HasTopLevelMediaType("text") && r1.Name == r2.Name, 345return new DataContent(new ReadOnlyMemory<byte>(ms.GetBuffer(), 0, (int)ms.Length), first.MediaType) { Name = first.Name };
..\..\..\..\src\Libraries\Microsoft.Extensions.AI.Abstractions\Contents\DataContent.cs (11)
206/// from the <see cref="Name"/> property, or a random name will be used with an extension based on the <see cref="MediaType"/>, if possible. 230name = $"{Guid.NewGuid():N}{MediaTypeMap.GetExtension(MediaType)}"; 254/// Determines whether the <see cref="MediaType"/>'s top-level type matches the specified <paramref name="topLevelType"/>. 256/// <param name="topLevelType">The type to compare against <see cref="MediaType"/>.</param> 257/// <returns><see langword="true"/> if the type portion of <see cref="MediaType"/> matches the specified value; otherwise, false.</returns> 262/// the specified <paramref name="topLevelType"/> against the type portion of <see cref="MediaType"/>. 264public bool HasTopLevelMediaType(string topLevelType) => DataUriParser.HasTopLevelMediaType(MediaType, topLevelType); 286"data:".Length + MediaType.Length + ";base64,".Length + Base64.GetMaxEncodedToUtf8Length(data.Length)); 288bool wrote = array.AsSpan().TryWrite($"data:{MediaType};base64,", out int prefixLength); 375return $"MediaType = {MediaType}, Text = \"{Encoding.UTF8.GetString(Data.ToArray())}\""; 378if ("application/json".Equals(MediaType, StringComparison.OrdinalIgnoreCase))
..\..\..\..\src\Libraries\Microsoft.Extensions.AI.Abstractions\Files\HostedFileClientExtensions.cs (1)
45return client.UploadAsync(stream, content.MediaType, content.Name, options, cancellationToken);
Microsoft.Extensions.AI.Abstractions.Tests (39)
..\..\..\..\test\Libraries\Microsoft.Extensions.AI.Abstractions.Tests\ChatCompletion\ChatMessageTests.cs (2)
306Assert.Equal("mime-type/2", dataContent.MediaType); 314Assert.Equal("mime-type/3", dataContent.MediaType);
..\..\..\..\test\Libraries\Microsoft.Extensions.AI.Abstractions.Tests\Contents\DataContentTests.cs (23)
72Assert.Equal(mediaType, content.MediaType); 76Assert.Equal(mediaType, content.MediaType); 80Assert.Equal(mediaType, content.MediaType); 84Assert.Equal(mediaType, content.MediaType); 88Assert.Equal(mediaType, content.MediaType); 92Assert.Equal(mediaType, content.MediaType); 103Assert.Equal("image/png", content.MediaType); 108Assert.Equal("image/png", content.MediaType); 123Assert.Equal("text/plain;charset=US-ASCII", content.MediaType); 138Assert.Equal(mediaType, content.MediaType); 180Assert.Equal("application/octet-stream", content.MediaType); 186Assert.Equal("application/octet-stream", content.MediaType); 203Assert.Equal("audio/wav", content.MediaType); 249Assert.Equal(mediaType, c.MediaType); 326Assert.Equal("application/json", content.MediaType); 353Assert.Equal("custom/type", content.MediaType); 380Assert.Equal("application/octet-stream", content.MediaType); 407Assert.Equal("image/png", content.MediaType); 431Assert.Equal("video/mp4", content.MediaType); 447Assert.Equal("application/octet-stream", content.MediaType); 722Assert.Equal("text/html", content.MediaType); 906Assert.Equal("application/octet-stream", content.MediaType); 996Assert.Equal("audio/wav", dataContent.MediaType);
..\..\..\..\test\Libraries\Microsoft.Extensions.AI.Abstractions.Tests\Contents\ImageGenerationToolResultContentTests.cs (1)
86Assert.Equal("image/png", ((DataContent)deserializedSut.Outputs[0]).MediaType);
..\..\..\..\test\Libraries\Microsoft.Extensions.AI.Abstractions.Tests\Files\HostedFileClientExtensionsTests.cs (1)
374Assert.Equal("image/png", result.MediaType);
..\..\..\..\test\Libraries\Microsoft.Extensions.AI.Abstractions.Tests\Files\HostedFileDownloadStreamTests.cs (2)
30Assert.Equal("application/json", content.MediaType); 41Assert.Equal("application/octet-stream", content.MediaType);
..\..\..\..\test\Libraries\Microsoft.Extensions.AI.Abstractions.Tests\Image\ImageGenerationResponseTests.cs (1)
118Assert.Equal("image/jpeg", dataContent.MediaType);
..\..\..\..\test\Libraries\Microsoft.Extensions.AI.Abstractions.Tests\Image\ImageGeneratorExtensionsTests.cs (2)
122Assert.Equal("image/jpeg", dataContent.MediaType); 188Assert.Equal(expectedMediaType, dataContent.MediaType);
..\..\..\..\test\Libraries\Microsoft.Extensions.AI.Abstractions.Tests\SpeechToText\SpeechToTextResponseTests.cs (1)
237Assert.Equal("image/png", Assert.IsType<DataContent>(update.Contents[1]).MediaType);
..\..\..\..\test\Libraries\Microsoft.Extensions.AI.Abstractions.Tests\TextToSpeech\TextToSpeechClientTests.cs (1)
34Assert.Equal("audio/mpeg", ((DataContent)response.Contents[0]).MediaType);
..\..\..\..\test\Libraries\Microsoft.Extensions.AI.Abstractions.Tests\TextToSpeech\TextToSpeechResponseTests.cs (4)
57Assert.Equal("audio/mpeg", dc.MediaType); 163Assert.Equal("audio/mpeg", Assert.IsType<DataContent>(update.Contents[0]).MediaType); 164Assert.Equal("audio/wav", Assert.IsType<DataContent>(update.Contents[1]).MediaType); 209Assert.Equal("audio/mpeg", dataContent.MediaType);
..\..\..\..\test\Libraries\Microsoft.Extensions.AI.Abstractions.Tests\TextToSpeech\TextToSpeechResponseUpdateTests.cs (1)
94Assert.Equal("audio/mpeg", dataContent.MediaType);
Microsoft.Extensions.AI.Evaluation.Safety (1)
..\..\..\..\src\Libraries\Microsoft.Extensions.AI.Evaluation.Safety\AIContentExtensions.cs (1)
15(content is DataContent dataContent && IsSupportedImageFormat(dataContent.MediaType));
Microsoft.Extensions.AI.Integration.Tests (10)
..\..\..\..\test\Libraries\Microsoft.Extensions.AI.Integration.Tests\ImageGeneratingChatClientIntegrationTests.cs (3)
145Assert.Equal("image/png", imageContent.MediaType); 176Assert.Equal("image/png", originalImageContent.MediaType); 226Assert.Equal("image/png", editedImage.MediaType);
..\..\..\..\test\Libraries\Microsoft.Extensions.AI.Integration.Tests\ImageGeneratorIntegrationTests.cs (3)
55Assert.StartsWith("image/", dc.MediaType, StringComparison.Ordinal); 85Assert.StartsWith("image/", dataContent.MediaType, StringComparison.Ordinal); 112Assert.StartsWith("image/", dataContent.MediaType, StringComparison.Ordinal);
..\..\..\..\test\Libraries\Microsoft.Extensions.AI.Integration.Tests\TextToSpeechClientIntegrationTests.cs (4)
44Assert.StartsWith("audio/", dataContent.MediaType, StringComparison.Ordinal); 63Assert.StartsWith("audio/", dataContent.MediaType, StringComparison.Ordinal); 82Assert.Equal("audio/opus", dataContent.MediaType); 120Assert.StartsWith("audio/", dataContent.MediaType, StringComparison.Ordinal);
Microsoft.Extensions.AI.OpenAI (12)
..\..\..\..\src\Libraries\Microsoft.Extensions.AI.OpenAI\OpenAIChatClient.cs (5)
302return ChatMessageContentPart.CreateImagePart(BinaryData.FromBytes(dataContent.Data), dataContent.MediaType, GetImageDetail(content)); 307if (dataContent.MediaType.Equals("audio/mpeg", StringComparison.OrdinalIgnoreCase)) 311else if (dataContent.MediaType.Equals("audio/wav", StringComparison.OrdinalIgnoreCase)) 318case DataContent dataContent when dataContent.MediaType.StartsWith("application/pdf", StringComparison.OrdinalIgnoreCase): 319return ChatMessageContentPart.CreateFilePart(BinaryData.FromBytes(dataContent.Data), dataContent.MediaType, dataContent.Name ?? $"{Guid.NewGuid():N}.pdf");
..\..\..\..\src\Libraries\Microsoft.Extensions.AI.OpenAI\OpenAIImageGenerator.cs (1)
66$"{Guid.NewGuid():N}{MediaTypeMap.GetExtension(dataContent.MediaType) ?? ".png"}"; // Default to PNG if no content type is available.
..\..\..\..\src\Libraries\Microsoft.Extensions.AI.OpenAI\OpenAIRealtimeClientSession.cs (2)
674if (dataContent.MediaType?.StartsWith("audio/", StringComparison.Ordinal) == true) 679else if (dataContent.MediaType?.StartsWith("image/", StringComparison.Ordinal) == true && dataContent.Uri is not null)
..\..\..\..\src\Libraries\Microsoft.Extensions.AI.OpenAI\OpenAIResponsesChatClient.cs (4)
1360(parts ??= []).Add(ResponseContentPart.CreateInputImagePart(BinaryData.FromBytes(dataContent.Data, dataContent.MediaType), GetImageDetail(item))); 1363case DataContent dataContent when dataContent.MediaType.StartsWith("application/pdf", StringComparison.OrdinalIgnoreCase): 1364(parts ??= []).Add(ResponseContentPart.CreateInputFilePart(BinaryData.FromBytes(dataContent.Data, dataContent.MediaType), dataContent.MediaType, dataContent.Name ?? $"{Guid.NewGuid():N}.pdf"));
Microsoft.Extensions.AI.OpenAI.Tests (19)
..\..\..\..\test\Libraries\Microsoft.Extensions.AI.OpenAI.Tests\OpenAIAssistantChatClientIntegrationTests.cs (1)
78Assert.Equal("text/x-python", codeInput.MediaType);
..\..\..\..\test\Libraries\Microsoft.Extensions.AI.OpenAI.Tests\OpenAIHostedFileClientIntegrationTests.cs (1)
213Assert.Equal("application/x-ndjson", dataContent.MediaType);
..\..\..\..\test\Libraries\Microsoft.Extensions.AI.OpenAI.Tests\OpenAIResponseClientIntegrationTests.cs (3)
58Assert.Equal("text/x-python", codeInput.MediaType); 178Assert.StartsWith("image/", imageContent.MediaType, StringComparison.Ordinal); 181string extension = imageContent.MediaType == "image/png" ? ".png" : ".webp";
..\..\..\..\test\Libraries\Microsoft.Extensions.AI.OpenAI.Tests\OpenAIResponseClientTests.cs (6)
3399Assert.Equal("text/x-python", codeInput.MediaType); 3619Assert.Equal("text/x-python", codeInput.MediaType); 3745Assert.Equal("text/x-python", codeInput.MediaType); 6296Assert.Equal("image/png", imageContent.MediaType); 6393Assert.Equal("image/png", imageData.MediaType); 6640return o is DataContent dataContent && dataContent.MediaType == "image/webp";
..\..\..\..\test\Libraries\Microsoft.Extensions.AI.OpenAI.Tests\OpenAITextToSpeechClientIntegrationTests.cs (1)
43Assert.StartsWith("audio/", dataContent.MediaType);
..\..\..\..\test\Libraries\Microsoft.Extensions.AI.OpenAI.Tests\OpenAITextToSpeechClientTests.cs (7)
88Assert.Equal("audio/mpeg", content.MediaType); 117Assert.Equal("audio/mpeg", content.MediaType); 179Assert.Equal(expectedMediaType, content.MediaType); 215Assert.Equal("audio/opus", content.MediaType); 273Assert.Equal("audio/mpeg", content.MediaType); 323Assert.Equal("audio/mpeg", data0.MediaType); 330Assert.Equal("audio/mpeg", data1.MediaType);
Microsoft.Extensions.AI.Stabilization.Tests (1)
..\..\..\..\..\..\..\..\6ebae5205c7d4116\ImageGenerationToolResultContentTests.cs (1)
86Assert.Equal("image/png", ((DataContent)deserializedSut.Outputs[0]).MediaType);
Microsoft.Extensions.DataIngestion.Tests (2)
..\..\..\..\test\Libraries\Microsoft.Extensions.DataIngestion.Tests\Processors\AlternativeTextEnricherTests.cs (2)
55Assert.Equal("image/png", dataContent.MediaType); 142Assert.Equal("image/png", dataContent.MediaType);