1. ホーム
  2. vb.net

[解決済み] NUnit TestCaseのパラメータとして二重引用符をエスケープするにはどうすればよいですか?

2022-02-11 21:37:26

質問

VB.netで書いたNUnitのテストに、以下のTestCaseを書いてみました。

<TestCase("FirstNode", "<node id=\"FirstNode\">")>
Public Sub GetNode_GivenSomeNodeId_ReturnCorrectNode(ByVal nodeId as String, 
                                            ByVal expectedXml as String)

    (Call the method under test and request the xmlNode with the provided id...)

    Assert.AreEqual(expectedXml, returnedXml)
End Sub

しかし、テストケースの第2パラメータとして渡されたxml-nodeは、明らかにダブルクォートをエスケープする正しい方法ではないので、有効ではありません。テスト対象のメソッドが期待されるXML-nodeを返すことを確認するために回避策を見つけることができると思いますが、気になります。

このような、ダブルクォートを含む文字列をNUnitのテストのパラメータとして渡す、何かうまい方法はないでしょうか?

解決方法は?

VBでダブルクオートをエスケープするには、ダブルクオートを2重にするのが正しい方法です。

<TestCase("FirstNode", "<node id=""FirstNode"">")>