モッキング フレームワークHippomocksでは、渡された引数を期待値内でチェックすることができます。例えば:
void Class::Method(int arg1);
...
m_mockRepository_p->ExpectCall(someObject_p, Class::Method).With(1);
渡された引数の一部のみをチェックする可能性はありますか? ???の代わりに何を書けばいいですか?次のコードで?
void Class::Method(int arg1, char* buffer_p);
...
m_mockRepository_p->ExpectCall(someObject_p, Class::Method).With(1,???);
参考までに: 使用例は、 someObjet_p が内部的にバッファを作成してその中のデータを読み取り、それを Class::Method に渡すことです。第一に、someObject_p がどのバッファにデータを入れたいかは気にしません。第二に、someObject_p の内部にアクセスして With() に渡す必要がありません。これは非常に合理的です。
注:ExpectCallを利用しているため、質問にC++のタグを付けましたが、フラット関数のExpectCallFuncにも同じことが当てはまると思います。
2 番目の注意: Hippomocks は、"Match()"、"getArgs()"、"assignArgs()"、および "matchesArgs()" という名前の期待値のメソッドを提供しますが、それに関するドキュメントは見つかりませんでしたし、意図されているかどうかもわかりません(私のユースケースでは)使用するかどうか。