From e8bf560787e9849a6cc58b1e367ca4f9dc116e35 Mon Sep 17 00:00:00 2001 From: Armaan Mcleod Date: Mon, 17 Mar 2025 20:53:01 +1100 Subject: [PATCH] Add XUnit test for `HandleDoubleAndSingleQuote` in CompletionHelpers class (#25181) --- test/xUnit/csharp/test_CompletionHelpers.cs | 32 +++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 test/xUnit/csharp/test_CompletionHelpers.cs diff --git a/test/xUnit/csharp/test_CompletionHelpers.cs b/test/xUnit/csharp/test_CompletionHelpers.cs new file mode 100644 index 0000000000..540927f6b7 --- /dev/null +++ b/test/xUnit/csharp/test_CompletionHelpers.cs @@ -0,0 +1,32 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +using System.Management.Automation; +using Xunit; + +namespace PSTests.Parallel +{ + public class CompletionHelpersTests + { + [Theory] + [InlineData("", "", "")] + [InlineData("\"", "", "\"")] + [InlineData("'", "", "'")] + [InlineData("\"word\"", "word", "\"")] + [InlineData("'word'", "word", "'")] + [InlineData("\"word", "word", "\"")] + [InlineData("'word", "word", "'")] + [InlineData("word\"", "word\"", "")] + [InlineData("word'", "word'", "")] + [InlineData("\"word's\"", "word's", "\"")] + [InlineData("'word\"", "'word\"", "")] + [InlineData("\"word'", "\"word'", "")] + [InlineData("'word\"s'", "word\"s", "'")] + public void TestHandleDoubleAndSingleQuote(string wordToComplete, string expectedWordToComplete, string expectedQuote) + { + string quote = CompletionHelpers.HandleDoubleAndSingleQuote(ref wordToComplete); + Assert.Equal(expectedQuote, quote); + Assert.Equal(expectedWordToComplete, wordToComplete); + } + } +}