Scala の Wiremock 2.1.6 を使用しようとしています。ただし、マッピングビルダーの型が変更されたため、scalac は型チェックできなくなりました。
ドキュメントの最初のスタブの例:
stubFor(get(urlEqualTo("/some/thing"))
.willReturn(aResponse()
.withHeader("Content-Type", "text/plain")
.withBody("Hello world!")));
コンパイル時に次のエラーが発生します。
type mismatch;
found : ?0(in value <local TestSpec>) where type ?0(in value <local TestSpec>) <: AnyRef
required: com.github.tomakehurst.wiremock.client.RemoteMappingBuilder[_ <: AnyRef, _ <: com.github.tomakehurst.wiremock.client.ScenarioMappingBuilder]
get(urlEqualTo("some/thing")).willReturn(
メソッドwillReturn
はRemoteMappingBuilder
インターフェースで定義されています
public interface RemoteMappingBuilder<M extends RemoteMappingBuilder, S extends ScenarioMappingBuilder> {
...
M willReturn(ResponseDefinitionBuilder responseDefBuilder);
}
RemoteMappingBuilder
Scala は、型パラメータなしでジェネリック インターフェイスが使用されていることに満足していないように思えますM extends RemoteMappingBuilder
。
これを回避する方法について何か提案はありますか?