次の文字列をハムクレストマッチャーのいずれかと一致させる方法はありますか?
"{\"messageType\":\"identify\",\"_id\":\"7de9a446-2ced-4bda-af35-81e95ad2dc32\",\"address\":\"192.168.0.0\",\"port\":7070}"
この文字列はメソッドに渡されます。私はそれに合わせてJMockの期待を使用します。
問題:「72e3a446-2fed-4bda-ac35-34e95ab3dc32」の部分はランダムに生成されたUUIDであり、テストされたメソッド内で生成されます。次のようなものに一致するハムクレストストリングマッチャーはありますか
new StringCompositeMatcher("{\"messageType\":\"identify\",\"_id\":\"", with(any(String.class)), "\"address\":\"192.168.0.0\",\"port\":7070}" )
"{\"messageType\":\"identify\",\"_id\":\"
期待される文字列が、その後に任意の文字列があることで始まり、で終わることと一致する必要があります。",\"address\":\"192.168.0.0\",\"port\":7070}"
編集:解決策
with(allOf(new StringStartsWith("{\"messageType\":\"identify\",\"_id\":\""), new StringEndsWith("\",\"address\":\"192.168.0.0\",\"port\":7070}")))