/
githubmirror
/
roslyn
Обзор
Документация
Войти
/
githubmirror
/
roslyn
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
src/EditorFeatures/CSharpTest/StringCopyPaste/PasteKnownSourceIntoMultiLineRawInterpolatedStringTests.cs
2 846 строк
54 KB
Cyrus Najmabadi
Cleanup test methods
24 июл 2025, 11:15
24 июл 2025, 11:15
9b3e554
Код
Авторство
О чём код?
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. using Roslyn.Test.Utilities; namespace Microsoft.CodeAnalysis.Editor.CSharp.UnitTests.StringCopyPaste; public sealed class PasteKnownSourceIntoMultiLineRawInterpolatedStringTests : StringCopyPasteCommandHandlerKnownSourceTests { #region Normal Copy/Paste tests // Tests where we actually set up a document to copy code from. [WpfFact] public void TestPasteSimpleNormalLiteralContent() => TestCopyPaste( """var v = "{|Copy:goo|}";""", """" var dest = $""" [||] """; """", """" var dest = $""" goo[||] """; """", """" var dest = $""" [||] """; """"); [WpfFact] public void TestPasteOpenBraceNormalLiteralContent() => TestCopyPaste( """var v = "{|Copy:{|}";""", """" var dest = $""" [||] """; """", """" var dest = $$""" {[||] """; """", """" var dest = $""" {[||] """; """"); [WpfFact] public void TestPasteOpenCloseBraceNormalLiteralContent() => TestCopyPaste( """var v = "{|Copy:{}|}";""", """" var dest = $""" [||] """; """", """" var dest = $$""" {}[||] """; """", """" var dest = $""" {}[||] """; """"); [WpfFact] public void TestPasteLooksLikeInterpolationNormalLiteralContent() => TestCopyPaste( """var v = "{|Copy:{0}|}";""", """" var dest = $""" [||] """; """", """" var dest = $$""" {0}[||] """; """", """" var dest = $""" {0}[||] """; """"); [WpfFact] public void TestPasteSimpleSubstringNormalLiteralContent() => TestCopyPaste( """var v = "g{|Copy:o|}o";""", """" var dest = $""" [||] """; """", """" var dest = $""" o[||] """; """", """" var dest = $""" [||] """; """"); [WpfFact] public void TestPastePartiallySelectedEscapeNormalLiteralContent() => TestCopyPaste( """var v = "\{|Copy:n|}";""", """" var dest = $""" [||] """; """", """" var dest = $""" n[||] """; """", """" var dest = $""" [||] """; """"); [WpfFact] public void TestPasteFullySelectedEscapeNormalLiteralContent() => TestCopyPaste( @"var v = ""{|Copy:\n|}"";", """" var dest = $""" [||] """; """", "var dest =\r\n $\"\"\"\r\n \n [||]\r\n \"\"\";", """" var dest = $""" \n[||] """; """"); [WpfFact] public void TestPastePartiallySelectedQuoteNormalLiteralContent() => TestCopyPaste( """var v = "\{|Copy:"|}";""", """" var dest = $""" [||] """; """", """" var dest = $""" "[||] """; """", """" var dest = $""" [||] """; """"); [WpfFact] public void TestPasteFullySelectedQuoteNormalLiteralContent() => TestCopyPaste( """var v = "{|Copy:\"|}";""", """" var dest = $""" [||] """; """", """" var dest = $""" "[||] """; """", """" var dest = $""" \"[||] """; """"); [WpfFact] public void TestPasteSimpleVerbatimLiteralContent() => TestCopyPaste( """var v = @"{|Copy:goo|}";""", """" var dest = $""" [||] """; """", """" var dest = $""" goo[||] """; """", """" var dest = $""" [||] """; """"); [WpfFact] public void TestPasteSimpleSubstringVerbatimLiteralContent() => TestCopyPaste( """var v = @"g{|Copy:o|}o";""", """" var dest = $""" [||] """; """", """" var dest = $""" o[||] """; """", """" var dest = $""" [||] """; """"); [WpfFact] public void TestPasteSelectedVerbatimNewLineLiteralContent() => TestCopyPaste( """ var v = @"{|Copy: |}"; """, """" var dest = $""" [||] """; """", """" var dest = $""" [||] """; """", """" var dest = $""" [||] """; """"); [WpfFact] public void TestPasteFullySelectedEscapeVerbatimLiteralContent() => TestCopyPaste( """var v = @"{|Copy:""|}";""", """" var dest = $""" [||] """; """", """" var dest = $""" "[||] """; """", """" var dest = $""" ""[||] """; """"); [WpfFact] public void TestPasteSimpleRawSingleLineLiteralContent() => TestCopyPaste( """"var v = """{|Copy:goo|}""";"""", """" var dest = $""" [||] """; """", """" var dest = $""" goo[||] """; """", """" var dest = $""" [||] """; """"); [WpfFact] public void TestPasteQuotesRawSingleLineLiteralContent() => TestCopyPaste( """"var v = """{|Copy: "" |}""";"""", """" var dest = $""" [||] """; """", """" var dest = $""" "" [||] """; """", """" var dest = $""" [||] """; """"); [WpfFact] public void TestPasteSimpleRawMultiLineLiteralContent1() => TestCopyPaste( """" var v = """ {|Copy:goo|} """; """", """" var dest = $""" [||] """; """", """" var dest = $""" goo[||] """; """", """" var dest = $""" [||] """; """"); [WpfFact] public void TestPasteSimpleRawMultiLineLiteralContent2() => TestCopyPaste( """" var v = """ {|Copy:goo bar|} """; """", """" var dest = $""" [||] """; """", """" var dest = $""" goo bar[||] """; """", """" var dest = $""" [||] """; """"); [WpfFact] public void TestPasteSimpleRawMultiLineLiteralContent3() => TestCopyPaste( """" var v = """ {|Copy: goo bar|} """; """", """" var dest = $""" [||] """; """", """" var dest = $""" goo bar[||] """; """", """" var dest = $""" goo bar[||] """; """"); [WpfFact] public void TestPasteInterpolationWithFormatClauseFromInterpolatedStringLiteralContent1() => TestCopyPaste( """var v = $"{|Copy:{0:X}|}";""", """" var dest = $""" [||] """; """", """" var dest = $""" {0:X}[||] """; """", """" var dest = $""" [||] """; """"); [WpfFact] public void TestPasteInterpolationWithFormatClauseFromInterpolatedStringLiteralContent2() => TestCopyPaste( """var v = $"{|Copy:{0:\"X\"}|}";""", """" var dest = $""" [||] """; """", """" var dest = $""" {0:"X"}[||] """; """", """" var dest = $""" {0:\"X\"}[||] """; """"); [WpfFact] public void TestPasteInterpolationWithFormatClauseFromVerbatimInterpolatedStringLiteralContent1() => TestCopyPaste( """var v = $@"{|Copy:{0:X}|}";""", """" var dest = $""" [||] """; """", """" var dest = $""" {0:X}[||] """; """", """" var dest = $""" [||] """; """"); [WpfFact] public void TestPasteInterpolationWithFormatClauseFromVerbatimInterpolatedStringLiteralContent2() => TestCopyPaste( """var v = $@"{|Copy:{0:""X""}|}";""", """" var dest = $""" [||] """; """", """" var dest = $""" {0:"X"}[||] """; """", """" var dest = $""" {0:""X""}[||] """; """"); [WpfFact] public void TestPasteInterpolationIntoSelection1() => TestCopyPaste( """var v = $@"{|Copy:{0}|}";""", """" var dest = $"""[||]{|Selection:|} """; """", """" var dest = $""" {0}[||] """; """", """" var dest = $"""{0}[||] """; """"); [WpfFact] public void TestPasteInterpolationIntoSelection2() => TestCopyPaste( """var v = $@"{|Copy:{0}|}";""", """" var dest = $"""[||]{|Selection: |} """; """", """" var dest = $""" {0}[||] """; """", """" var dest = $"""{0}[||] """; """"); [WpfFact] public void TestPasteInterpolationIntoSelection3() => TestCopyPaste( """var v = $@"{|Copy:{0}|}";""", """" var dest = $"""[||]{|Selection: |} """; """", """" var dest = $""" {0}[||] """; """", """" var dest = $"""{0}[||] """; """"); [WpfFact] public void TestPasteInterpolationIntoSelection4() => TestCopyPaste( """var v = $@"{|Copy:{0}|}";""", """" var dest = $"""[||]{|Selection: |} """; """", """" var dest = $""" {0}[||] """; """", """" var dest = $"""{0}[||] """; """"); [WpfFact] public void TestPasteInterpolationIntoSelection5() => TestCopyPaste( """var v = $@"{|Copy:{0}|}";""", """" var dest = $"""[||]{|Selection: |} """; """", """" var dest = $""" {0} [||] """; """", """" var dest = $"""{0}[||] """; """"); [WpfFact] public void TestPasteInterpolationIntoSelection6() => TestCopyPaste( """var v = $@"{|Copy:{0}|}";""", """" var dest = $"""[||]{|Selection: |} """; """", """" var dest = $""" {0} [||] """; """", """" var dest = $"""{0}[||] """; """"); [WpfFact] public void TestPasteInterpolationIntoSelection7() => TestCopyPaste( """var v = $@"{|Copy:{0}|}";""", """" var dest = $"""[||]{|Selection: |}"""; """", """" var dest = $""" {0} [||]"""; """", """" var dest = $"""{0}[||]"""; """"); [WpfFact] public void TestPasteInterpolationIntoSelection8() => TestCopyPaste( """var v = $@"{|Copy:{0}|}";""", """" var dest = $""" [||]{|Selection:|} """; """", """" var dest = $""" {0}[||] """; """", """" var dest = $""" {0}[||] """; """"); [WpfFact] public void TestPasteInterpolationIntoSelection9() => TestCopyPaste( """var v = $@"{|Copy:{0}|}";""", """" var dest = $""" [||]{|Selection: |} """; """", """" var dest = $""" {0}[||] """; """", """" var dest = $""" {0}[||] """; """"); [WpfFact] public void TestPasteInterpolationIntoSelection10() => TestCopyPaste( """var v = $@"{|Copy:{0}|}";""", """" var dest = $""" [||]{|Selection: |} """; """", """" var dest = $""" {0}[||] """; """", """" var dest = $""" {0}[||] """; """"); [WpfFact] public void TestPasteInterpolationIntoSelection11() => TestCopyPaste( """var v = $@"{|Copy:{0}|}";""", """" var dest = $""" [||]{|Selection: |} """; """", """" var dest = $""" {0} [||] """; """", """" var dest = $""" {0}[||] """; """"); [WpfFact] public void TestPasteInterpolationIntoSelection12() => TestCopyPaste( """var v = $@"{|Copy:{0}|}";""", """" var dest = $""" [||]{|Selection: |} """; """", """" var dest = $""" {0} [||] """; """", """" var dest = $""" {0}[||] """; """"); [WpfFact] public void TestPasteInterpolationIntoSelection13() => TestCopyPaste( """var v = $@"{|Copy:{0}|}";""", """" var dest = $""" [||]{|Selection: |}"""; """", """" var dest = $""" {0} [||]"""; """", """" var dest = $""" {0}[||]"""; """"); #endregion #region Known Source tests 'PasteUnknownSourceIntoSingleLineInterpolatedRawStringTests' // Tests where we place things directly on the clipboard (avoiding the need to do the actual copy). // This allows a port of the tests in PasteUnknownSourceIntoSingleLineInterpolatedRawStringTests.cs [WpfFact] public void TestPasteBracesWithExistingInterpolation1() => TestPasteKnownSource( pasteText: """{{{""", """" var dest = $""" [||]{0} """; """", """" var dest = $$$$""" {{{[||]{{{{0}}}} """; """", """" var dest = $""" {{{[||]{0} """; """"); [WpfFact] public void TestPasteBracesWithExistingInterpolation2() => TestPasteKnownSource( pasteText: """{{{""", """" var dest = $""" {0}[||] """; """", """" var dest = $$$$""" {{{{0}}}}{{{[||] """; """", """" var dest = $""" {0}{{{[||] """; """"); [WpfFact] public void TestPasteBracesWithExistingInterpolation3() => TestPasteKnownSource( pasteText: """{{{""", """" var dest = $""" {0}[||]{1} """; """", """" var dest = $$$$""" {{{{0}}}}{{{[||]{{{{1}}}} """; """", """" var dest = $""" {0}{{{[||]{1} """; """"); [WpfFact] public void TestPasteBracesWithExistingInterpolation4() => TestPasteKnownSource( pasteText: """{{{""", """" var dest = $""" {0}[||]{|Selection:{1}|}{2} """; """", """" var dest = $$$$""" {{{{0}}}}{{{[||]{{{{2}}}} """; """", """" var dest = $""" {0}{{{[||]{2} """; """"); [WpfFact] public void TestNewLineIntoSingleLineRawString1_A() => TestPasteKnownSource( pasteText: "\n", """" var x = $""" [||] """ """", "var x = $\"\"\"\r\n \n [||]\r\n \"\"\"", afterUndo: "var x = $\"\"\"\r\n \n[||]\r\n \"\"\""); [WpfFact] public void TestNewLineIntoSingleLineRawString2_A() => TestPasteKnownSource( pasteText: """ """, """" var x = $""" [||] """ """", """" var x = $""" [||] """ """", afterUndo: """" var x = $""" [||] """ """"); [WpfFact] public void TestSpacesIntoSingleLineRawString1_A() => TestPasteKnownSource( pasteText: """ """, """" var x = $""" [||] """ """", """" var x = $""" [||] """ """", afterUndo: """" var x = $""" [||] """ """"); [WpfFact] public void TestSpacesIntoSingleLineRawString2() => TestPasteKnownSource( pasteText: """ """, """" var x = $""" [||] """ """", """" var x = $""" [||] """ """", afterUndo: """" var x = $""" [||] """ """"); [WpfFact] public void TestSingleQuoteIntoSingleLineRawString_A() => TestPasteKnownSource( pasteText: """'""", """" var x = $""" [||] """ """", """" var x = $""" '[||] """ """", afterUndo: """" var x = $""" [||] """ """"); [WpfFact] public void TestDoubleQuoteIntoSingleLineRawString_A() => TestPasteKnownSource( pasteText: """ " """, """" var x = $"""[||] """ """", """" var x = $""" "[||] """ """", afterUndo: """"" var x = $""""[||] """ """""); [WpfFact] public void TestTripleQuoteIntoSingleLineRawString1_A() => TestPasteKnownSource( pasteText: """" """ """", """" var x = $"""[||] """ """", """"" var x = $"""" """[||] """" """"", afterUndo: """"""" var x = $""""""[||] """ """""""); [WpfFact] public void TestTripleQuoteIntoSingleLineRawString3() => TestPasteKnownSource( pasteText: """" """ """", """" var x = $""" "[||] """ """", """""" var x = $""""" """"[||] """"" """""", afterUndo: """"" var x = $""" """"[||] """ """""); [WpfFact] public void TestTripleQuoteIntoSingleLineRawString4() => TestPasteKnownSource( pasteText: """" """ """", """" var x = $""" "[||]" """ """", """"""" var x = $"""""" """"[||]" """""" """"""", afterUndo: """"" var x = $""" """"[||]" """ """""); [WpfFact] public void TestTripleQuoteIntoSingleLineRawString5() => TestPasteKnownSource( pasteText: """" """ """", """" var x = $""" [||]" """ """", """""" var x = $""""" """[||]" """"" """""", afterUndo: """" var x = $""" """[||]" """ """"); [WpfFact] public void TestQuadrupleQuoteIntoSingleLineRawString() => TestPasteKnownSource( pasteText: """"" """" """"", """" var x = $""" [||] """ """", """""" var x = $""""" """"[||] """"" """""", afterUndo: """"" var x = $""" """"[||] """ """""); [WpfFact] public void TestOpenCurlyIntoSingleLineRawString_A() => TestPasteKnownSource( pasteText: """{""", """" var x = $""" [||] """ """", """" var x = $$""" {[||] """ """", afterUndo: """" var x = $""" {[||] """ """"); [WpfFact] public void TestOpenQuoteAndTripleOpenBraceIntoSingleLineRawString1() => TestPasteKnownSource( pasteText: """ "{{{ """, """" var x = $""" [||] """ """", """" var x = $$$$""" "{{{[||] """ """", afterUndo: """" var x = $""" "{{{[||] """ """"); [WpfFact] public void TestTripleOpenQuoteAndTripleOpenBraceIntoSingleLineRawString1() => TestPasteKnownSource( pasteText: """" """{{{ """", """" var x = $""" [||] """ """", """"" var x = $$$$"""" """{{{[||] """" """"", afterUndo: """" var x = $""" """{{{[||] """ """"); [WpfFact] public void TestTripleOpenQuoteAndTripleOpenBraceIntoSingleLineRawString2() => TestPasteKnownSource( pasteText: """" """{{{"""", """" var x = $""" [||] """ """", """"" var x = $$$$"""" """{{{[||] """" """"", afterUndo: """" var x = $""" """{{{[||] """ """"); [WpfFact] public void TestTripleOpenBraceIntoSingleLineRawString1_A() => TestPasteKnownSource( pasteText: """{{{""", """" var x = $""" [||] """ """", """" var x = $$$$""" {{{[||] """ """", afterUndo: """" var x = $""" {{{[||] """ """"); [WpfFact] public void TestTripleOpenBraceIntoSingleLineRawString3() => TestPasteKnownSource( pasteText: """{{{""", """" var x = $""" "[||] """ """", """" var x = $$$$""" "{{{[||] """ """", afterUndo: """" var x = $""" "{{{[||] """ """"); [WpfFact] public void TestTripleOpenBraceIntoSingleLineRawString4() => TestPasteKnownSource( pasteText: """{{{""", """" var x = $""" "[||]" """ """", """" var x = $$$$""" "{{{[||]" """ """", afterUndo: """" var x = $""" "{{{[||]" """ """"); [WpfFact] public void TestTripleOpenBraceIntoSingleLineRawString5() => TestPasteKnownSource( pasteText: """{{{""", """" var x = $""" [||]" """ """", """" var x = $$$$""" {{{[||]" """ """", afterUndo: """" var x = $""" {{{[||]" """ """"); [WpfFact] public void TestInterpolationIntoSingleLineRawString1() => TestPasteKnownSource( pasteText: """{0}""", """" var x = $""" [||] """ """", """" var x = $$""" {0}[||] """ """", afterUndo: """" var x = $""" {0}[||] """ """"); [WpfFact] public void TestOpenCloseBraceIntoSingleLineRawString1() => TestPasteKnownSource( pasteText: """{}""", """" var x = $""" [||] """ """", """" var x = $$""" {}[||] """ """", afterUndo: """" var x = $""" {}[||] """ """"); [WpfFact] public void TestOpenCloseBraceIntoSingleLineRawString2() => TestPasteKnownSource( pasteText: """{}""", """" var x = $$""" [||] """ """", """" var x = $$""" {}[||] """ """", afterUndo: """" var x = $$""" [||] """ """"); [WpfFact] public void TestOpenCloseBraceIntoSingleLineRawString3() => TestPasteKnownSource( pasteText: """{{}""", """" var x = $$""" [||] """ """", """" var x = $$$""" {{}[||] """ """", afterUndo: """" var x = $$""" {{}[||] """ """"); [WpfFact] public void TestOpenCloseBraceIntoSingleLineRawString4() => TestPasteKnownSource( pasteText: """{}}""", """" var x = $$""" [||] """ """", """" var x = $$$""" {}}[||] """ """", afterUndo: """" var x = $$""" {}}[||] """ """"); [WpfFact] public void TestOpenCloseBraceIntoSingleLineRawString5() => TestPasteKnownSource( pasteText: """{{}}""", """" var x = $$""" [||] """ """", """" var x = $$$""" {{}}[||] """ """", afterUndo: """" var x = $$""" {{}}[||] """ """"); [WpfFact] public void TestComplexStringIntoSingleLineRawString() => TestPasteKnownSource( pasteText: """ "" """, """" var x = $""" [||] """ """", """" var x = $""" "" [||] """ """", afterUndo: """" var x = $""" [||] """ """"); [WpfFact] public void TestNormalTextIntoSingleLineRawString_A() => TestPasteKnownSource( pasteText: """abc""", """" var x = $""" [||] """ """", """" var x = $""" abc[||] """ """", afterUndo: """" var x = $""" [||] """ """"); [WpfFact] public void TestNormalTextIntoSingleLineRawStringSingleLine1_A() => TestPasteKnownSource( pasteText: """ abc def """, """" var x = $""" [||] """ """", """" var x = $""" abc def[||] """ """", afterUndo: """" var x = $""" abc def[||] """ """"); [WpfFact] public void TestNormalTextIntoSingleLineRawStringSingleLine4() => TestPasteKnownSource( pasteText: """ abc def """, """" var x = $""" goo[||] """ """", """" var x = $""" gooabc def[||] """ """", afterUndo: """" var x = $""" gooabc def[||] """ """"); [WpfFact] public void TestNormalTextIntoSingleLineRawStringSingleLine5() => TestPasteKnownSource( pasteText: """ abc def """, """" var x = $""" goo[||]bar """ """", """" var x = $""" gooabc def[||]bar """ """", afterUndo: """" var x = $""" gooabc def[||]bar """ """"); [WpfFact] public void TestNormalTextIntoSingleLineRawStringSingleLine6() => TestPasteKnownSource( pasteText: """ abc def """, """" var x = $""" goo[||]bar """ """", """" var x = $""" gooabc def [||]bar """ """", afterUndo: """" var x = $""" gooabc def [||]bar """ """"); [WpfFact] public void TestNormalTextIntoSingleLineRawStringSingleLine7_A() => TestPasteKnownSource( pasteText: """ abc def ghi """, """" var x = $""" [||] """ """", """" var x = $""" abc def ghi[||] """ """", afterUndo: """" var x = $""" abc def ghi[||] """ """"); [WpfFact] public void TestNormalTextIntoSingleLineRawStringSingleLine7_B() => TestPasteKnownSource( pasteText: """ abc def ghi """, """" var x = $""" [||] """ """", """" var x = $""" abc def ghi[||] """ """", afterUndo: """" var x = $""" abc def ghi[||] """ """"); [WpfFact] public void TestNormalTextIntoSingleLineRawStringSingleLine8_A() => TestPasteKnownSource( pasteText: """ abc def ghi """, """" var x = $""" [||] """ """", """" var x = $""" abc def ghi[||] """ """", afterUndo: """" var x = $""" abc def ghi[||] """ """"); [WpfFact] public void TestNormalTextIntoSingleLineRawStringSingleLine9_A() => TestPasteKnownSource( pasteText: """ abc def ghi """, """" var x = $""" [||] """ """", """" var x = $""" abc def ghi[||] """ """", afterUndo: """" var x = $""" abc def ghi[||] """ """"); [WpfFact] public void TestNormalTextIntoSingleLineRawStringSingleLine10_A() => TestPasteKnownSource( pasteText: """ abc def ghi """, """" var x = $""" [||] """ """", """" var x = $""" abc def ghi[||] """ """", afterUndo: """" var x = $""" abc def ghi[||] """ """"); [WpfFact] public void TestNormalTextIntoSingleLineRawStringSingleLine11_A() => TestPasteKnownSource( pasteText: """ abc def """, """" var x = $""" [||]{|Selection: |} """ """", """" var x = $""" abc def[||] """ """", afterUndo: """" var x = $""" abc def[||] """ """"); [WpfFact] public void TestNormalTextIntoSingleLineRawStringSingleLine12_A() => TestPasteKnownSource( pasteText: """ abc def """, """" var x = $""" [||]{|Selection: |} """ """", """" var x = $""" abc def [||] """ """", afterUndo: """" var x = $""" abc def [||] """ """"); [WpfFact] public void TestNormalTextIntoSingleLineRawStringSingleLine13_A() => TestPasteKnownSource( pasteText: """ abc def """, """" var x = $""" [||]{|Selection: |} """ """", """" var x = $""" abc def[||] """ """", afterUndo: """" var x = $""" abc def[||] """ """"); [WpfFact] public void TestNormalTextIntoSingleLineRawStringHeader1_A() => TestPasteKnownSource( pasteText: """ "bar """, """" var x = $""" [||]goo """ """", """" var x = $""" "bar[||]goo """ """", afterUndo: """" var x = $""" [||]goo """ """"); [WpfFact] public void TestQuotesIntoHeader1() => TestPasteKnownSource( pasteText: """ "" """, """" var x = $""" [||]{|Selection: |} """ """", """" var x = $""" ""[||] """ """", afterUndo: """" var x = $""" [||] """ """"); [WpfFact] public void TestQuotesIntoHeader2() => TestPasteKnownSource( pasteText: """" """ """", """" var x = $""" [||]{|Selection: |} """ """", """"" var x = $"""" """[||] """" """"", afterUndo: """" var x = $""" """[||] """ """"); #endregion #region Known Source tests 'PasteUnknownSourceIntoMultiLineInterpolatedRawStringTests' [WpfFact] public void TestNewLineIntoMultiLineRawString1() => TestPasteKnownSource( pasteText: "\n", """" var x = $""" [||] """ """", "var x = $\"\"\"\r\n \n [||]\r\n \"\"\"", afterUndo: "var x = $\"\"\"\r\n \n[||]\r\n \"\"\""); [WpfFact] public void TestNewLineIntoMultiLineRawString2() => TestPasteKnownSource( pasteText: """ """, """" var x = $""" [||] """ """", """" var x = $""" [||] """ """", afterUndo: """" var x = $""" [||] """ """"); [WpfFact] public void TestSpacesIntoMultiLineRawString1() => TestPasteKnownSource( pasteText: """ """, """" var x = $""" [||] """ """", """" var x = $""" [||] """ """", afterUndo: """" var x = $""" [||] """ """"); [WpfFact] public void TestSpacesIntoMultiLineRawString2() => TestPasteKnownSource( pasteText: """ """, """" var x = $""" [||] """ """", """" var x = $""" [||] """ """", afterUndo: """" var x = $""" [||] """ """"); [WpfFact] public void TestSingleQuoteIntoMultiLineRawString() => TestPasteKnownSource( pasteText: """'""", """" var x = $""" [||] """ """", """" var x = $""" '[||] """ """", afterUndo: """" var x = $""" [||] """ """"); [WpfFact] public void TestDoubleQuoteIntoMultiLineRawString() => TestPasteKnownSource( pasteText: """ " """, """" var x = $""" [||] """ """", """" var x = $""" "[||] """ """", afterUndo: """" var x = $""" [||] """ """"); [WpfFact] public void TestTripleQuoteIntoMultiLineRawString1() => TestPasteKnownSource( pasteText: """" """ """", """" var x = $""" [||] """ """", """"" var x = $"""" """[||] """" """"", afterUndo: """" var x = $""" """[||] """ """"); [WpfFact] public void TestTripleQuoteIntoMultiLineRawString2() => TestPasteKnownSource( pasteText: """" """ """", """" var x = $""" [||] """ """", """"" var x = $"""" """[||] """" """"", afterUndo: """" var x = $""" """[||] """ """"); [WpfFact] public void TestTripleQuoteIntoMultiLineRawString3() => TestPasteKnownSource( pasteText: """" """ """", """" var x = $""" "[||] """ """", """""" var x = $""""" """"[||] """"" """""", afterUndo: """"" var x = $""" """"[||] """ """""); [WpfFact] public void TestTripleQuoteIntoMultiLineRawString4() => TestPasteKnownSource( pasteText: """" """ """", """" var x = $""" "[||]" """ """", """"""" var x = $"""""" """"[||]" """""" """"""", afterUndo: """"" var x = $""" """"[||]" """ """""); [WpfFact] public void TestTripleQuoteIntoMultiLineRawString5() => TestPasteKnownSource( pasteText: """" """ """", """" var x = $""" [||]" """ """", """""" var x = $""""" """[||]" """"" """""", afterUndo: """" var x = $""" """[||]" """ """"); [WpfFact] public void TestQuadrupleQuoteIntoMultiLineRawString() => TestPasteKnownSource( pasteText: """"" """" """"", """" var x = $""" [||] """ """", """""" var x = $""""" """"[||] """"" """""", afterUndo: """"" var x = $""" """"[||] """ """""); [WpfFact] public void TestOpenBraceIntoMultiLineRawString() => TestPasteKnownSource( pasteText: """{""", """" var x = $""" [||] """ """", """" var x = $$""" {[||] """ """", afterUndo: """" var x = $""" {[||] """ """"); [WpfFact] public void TestTripleOpenBraceIntoMultiLineRawString() => TestPasteKnownSource( pasteText: """{{{""", """" var x = $""" [||] """ """", """" var x = $$$$""" {{{[||] """ """", afterUndo: """" var x = $""" {{{[||] """ """"); [WpfFact] public void TestTripleOpenBraceIntoMultiLineRawString2() => TestPasteKnownSource( pasteText: """{{{""", """" var x = $$""" [||] """ """", """" var x = $$$$""" {{{[||] """ """", afterUndo: """" var x = $$""" {{{[||] """ """"); [WpfFact] public void TestOpenBraceIntoMultiLineRawString2() => TestPasteKnownSource( pasteText: """{""", """" var x = $$$""" {[||]{ """ """", """" var x = $$$$""" {{[||]{ """ """", afterUndo: """" var x = $$$""" {{[||]{ """ """"); [WpfFact] public void TestInterpolationIntoMultiLineRawString3() => TestPasteKnownSource( pasteText: """{0}""", """" var x = $""" [||] """ """", """" var x = $$""" {0}[||] """ """", afterUndo: """" var x = $""" {0}[||] """ """"); [WpfFact] public void TestOpenCloseIntoMultiLineRawString4() => TestPasteKnownSource( pasteText: """{}""", """" var x = $""" [||] """ """", """" var x = $$""" {}[||] """ """", afterUndo: """" var x = $""" {}[||] """ """"); [WpfFact] public void TestOpenCloseBraceIntoMultiLineRawString5() => TestPasteKnownSource( pasteText: """{{}""", """" var x = $$""" [||] """ """", """" var x = $$$""" {{}[||] """ """", afterUndo: """" var x = $$""" {{}[||] """ """"); [WpfFact] public void TestOpenCloseBraceIntoMultiLineRawString() => TestPasteKnownSource( pasteText: """{}}""", """" var x = $""" [||] """ """", """" var x = $$$""" {}}[||] """ """", afterUndo: """" var x = $""" {}}[||] """ """"); [WpfFact] public void TestOpenCloseBraceIntoMultiLineRawString2() => TestPasteKnownSource( pasteText: """{{}}""", """" var x = $""" [||] """ """", """" var x = $$$""" {{}}[||] """ """", afterUndo: """" var x = $""" {{}}[||] """ """"); [WpfFact] public void TestTripleQuoteTripleOpenBraceIntoMultiLineRawString() => TestPasteKnownSource( pasteText: """" """{{{ """", """" var x = $""" [||] """ """", """"" var x = $$$$"""" """{{{[||] """" """"", afterUndo: """" var x = $""" """{{{[||] """ """"); [WpfFact] public void TestComplexStringIntoMultiLineRawString() => TestPasteKnownSource( pasteText: """ "" """, """" var x = $""" [||] """ """", """" var x = $""" "" [||] """ """", afterUndo: """" var x = $""" [||] """ """"); [WpfFact] public void TestNormalTextIntoMultiLineRawString() => TestPasteKnownSource( pasteText: """abc""", """" var x = $""" [||] """ """", """" var x = $""" abc[||] """ """", afterUndo: """" var x = $""" [||] """ """"); [WpfFact] public void TestNormalTextIntoMultiLineRawStringMultiLine1() => TestPasteKnownSource( pasteText: """ abc def """, """" var x = $""" [||] """ """", """" var x = $""" abc def[||] """ """", afterUndo: """" var x = $""" abc def[||] """ """"); [WpfFact] public void TestNormalTextIntoMultiLineRawStringMultiLine2() => TestPasteKnownSource( pasteText: """ abc def """, """" var x = $""" [||] """ """", """" var x = $""" abc def[||] """ """", afterUndo: """" var x = $""" abc def[||] """ """"); [WpfFact] public void TestNormalTextIntoMultiLineRawStringMultiLine3() => TestPasteKnownSource( pasteText: """ abc def """, """" var x = $"""[||] """ """", """" var x = $""" abc def[||] """ """", afterUndo: """" var x = $"""abc def[||] """ """"); [WpfFact] public void TestNormalTextIntoMultiLineRawStringMultiLine4() => TestPasteKnownSource( pasteText: """ abc def """, """" var x = $""" goo[||] """ """", """" var x = $""" gooabc def[||] """ """", afterUndo: """" var x = $""" gooabc def[||] """ """"); [WpfFact] public void TestNormalTextIntoMultiLineRawStringMultiLine5() => TestPasteKnownSource( pasteText: """ abc def """, """" var x = $""" goo[||]bar """ """", """" var x = $""" gooabc def[||]bar """ """", afterUndo: """" var x = $""" gooabc def[||]bar """ """"); [WpfFact] public void TestNormalTextIntoMultiLineRawStringMultiLine6() => TestPasteKnownSource( pasteText: """ abc def """, """" var x = $""" goo[||]bar """ """", """" var x = $""" gooabc def [||]bar """ """", afterUndo: """" var x = $""" gooabc def [||]bar """ """"); [WpfFact] public void TestNormalTextIntoMultiLineRawStringMultiLine7() => TestPasteKnownSource( pasteText: """ abc def ghi """, """" var x = $""" [||] """ """", """" var x = $""" abc def ghi[||] """ """", afterUndo: """" var x = $""" abc def ghi[||] """ """"); [WpfFact] public void TestNormalTextIntoMultiLineRawStringMultiLine8() => TestPasteKnownSource( pasteText: """ abc def ghi """, """" var x = $""" [||] """ """", """" var x = $""" abc def ghi[||] """ """", afterUndo: """" var x = $""" abc def ghi[||] """ """"); [WpfFact] public void TestNormalTextIntoMultiLineRawStringMultiLine9() => TestPasteKnownSource( pasteText: """ abc def ghi """, """" var x = $""" [||] """ """", """" var x = $""" abc def ghi[||] """ """", afterUndo: """" var x = $""" abc def ghi[||] """ """"); [WpfFact] public void TestNormalTextIntoMultiLineRawStringMultiLine10() => TestPasteKnownSource( pasteText: """ abc def ghi """, """" var x = $""" [||] """ """", """" var x = $""" abc def ghi[||] """ """", afterUndo: """" var x = $""" abc def ghi[||] """ """"); [WpfFact] public void TestNormalTextIntoMultiLineRawStringMultiLine11() => TestPasteKnownSource( pasteText: """ abc def """, """" var x = $"""[||]{|Selection: |}""" """", """" var x = $""" abc def [||]""" """", afterUndo: """" var x = $"""abc def[||]""" """"); [WpfFact] public void TestNormalTextIntoMultiLineRawStringMultiLine12() => TestPasteKnownSource( pasteText: """ abc def """, """" var x = $"""[||]{|Selection: |}""" """", """" var x = $""" abc def [||]""" """", afterUndo: """" var x = $"""abc def [||]""" """"); [WpfFact] public void TestNormalTextIntoMultiLineRawStringMultiLine13() => TestPasteKnownSource( pasteText: """ abc def """, """" var x = $"""[||]{|Selection: |} """ """", """" var x = $""" abc def [||] """ """", afterUndo: """" var x = $"""abc def[||] """ """"); [WpfFact] public void TestNormalTextIntoMultiLineRawStringHeader1() => TestPasteKnownSource( pasteText: """bar""", """" var x = $"""[||] goo """ """", """" var x = $""" bar[||] goo """ """", afterUndo: """" var x = $"""bar[||] goo """ """"); [WpfFact] public void TestQuotesIntoHeader1_A() => TestPasteKnownSource( pasteText: """ "" """, """" var x = $"""[||]{|Selection: |}""" """", """" var x = $""" "" [||]""" """", afterUndo: """""" var x = $"""""[||]""" """"""); [WpfFact] public void TestQuotesIntoHeader2_B() => TestPasteKnownSource( pasteText: """" """ """", """" var x = $"""[||]{|Selection: |}""" """", """"" var x = $"""" """ [||]"""" """"", afterUndo: """"""" var x = $""""""[||]""" """""""); #endregion }