From 4ba315dfb4388dcd49e882085b58e3ac6627abb6 Mon Sep 17 00:00:00 2001 From: "DESKTOP-B8H91M6\\shino" Date: Tue, 13 Oct 2026 17:12:01 +0100 Subject: [PATCH] .Net: Add TextPlugin unit tests for culture and Echo --- .../Plugins.UnitTests/Core/TextPluginTests.cs | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/dotnet/src/Plugins/Plugins.UnitTests/Core/TextPluginTests.cs b/dotnet/src/Plugins/Plugins.UnitTests/Core/TextPluginTests.cs index e162750e2cf8..980d9ffea814 100644 --- a/dotnet/src/Plugins/Plugins.UnitTests/Core/TextPluginTests.cs +++ b/dotnet/src/Plugins/Plugins.UnitTests/Core/TextPluginTests.cs @@ -1,5 +1,6 @@ // Copyright (c) Microsoft. All rights reserved. +using System.Globalization; using Microsoft.SemanticKernel; using Microsoft.SemanticKernel.Plugins.Core; using Xunit; @@ -127,4 +128,46 @@ public void ItCanConcat(string? textToConcat, string text2ToConcat) // Assert Assert.Equal(expected, result); } + + [Fact] + public void ItCanUppercaseWithCulture() + { + // Arrange + var plugin = new TextPlugin(); + + // Act + var result = plugin.Uppercase("i", new CultureInfo("tr-TR")); + + // Assert + Assert.Equal("İ", result); + } + + [Fact] + public void ItCanLowercaseWithCulture() + { + // Arrange + var plugin = new TextPlugin(); + + // Act + var result = plugin.Lowercase("I", new CultureInfo("tr-TR")); + + // Assert + Assert.Equal("ı", result); + } + + [Theory] + [InlineData("hello", "hello")] + [InlineData("", "")] + [InlineData(" ", " ")] + public void ItCanEcho(string input, string expected) + { + // Arrange + var plugin = new TextPlugin(); + + // Act + var result = plugin.Echo(input); + + // Assert + Assert.Equal(expected, result); + } }