2017-08-28 14 views
1

私はSpring Cloud ContractフレームワークをRESTサービス統合テストおよび関連するクライアントアプリケーション契約に使用しています。これはオブジェクトのJSONリクエスト/レスポンスに対して機能しますが、単純な文字列をチェックする機会があります。特に、ブール値(応答本文でtrueまたはfalse)に応答するサービスですか?グルーヴィーな定義のSpring Cloud Contract - 簡単な文字列レスポンスをテストする方法は?

パート:

response { 
    status 200 
    headers { 
     header('Content-Type', 'application/json;charset=UTF-8') 
    } 
    body(
     value(client('true'), server(regex("true|false"))) 
    ) 
} 

生成されたテストの関連部分:

String responseBody = response.getBody().asString(); 
    null; 

は、それはそれは、バグではありませんか?あるいは、私はグルーヴィーな定義で何か良いことをするべきですか?最初の行はチャンスジェネレータが私が望むものを理解するのを与えますが、2行目は完全に外にあります。ヒントありがとう。

P.S.私はJSONレスポンスとしての文字列 "真"の妥当性についてのみ異なる意見があることを知っています(実際には問題ありません):

+0

このJSONは完全に無効なので、これはバグではありません。 content-typeを 'text/plain'のようにsthに変更し、うまく動作するかどうか確認してください。そうでない場合、これは本当にバグです –

+1

"true"は有効なJSONです。 –

+0

これは私がP.S.で言ったことです。多くの意見がありますが、非マップ/非配列値が無効なJSONでなければならないという妥当な理由は見つけられません。 –

答えて

関連する問題