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); + } + } +}