私には方法があります:
require 'openssl'
def extract_creds(data)
pfx = OpenSSL::PKCS12.new(data)
{ :certificate => pfx.certificate.to_pem, :key => pfx.key.to_pem }
rescue
# handle error
end
そして私はそれのためのrspecの例を書きたいです。pfxオブジェクトを適切にモックするにはどうすればよいですか?
通常、次の場合はモックを使用する必要があります。
この場合、なぜこの動作をテストしたいのか、結果がどうなると期待するのか、なぜそれが得られないと思うのかは明確ではありません。ほとんどの場合、十分にテストされた外部ライブラリをテストすることは正しいことではありません。
したがって、実際にテストしたいものに応じて、以下を確認することをお勧めします。
ただし、どちらの場合も、ライブラリをモックすることには、実際の証明書をフィクスチャデータとして含めることと比較して、実際のメリットはないようです。実際にコードを実行するには、フィクスチャはモックよりも優れています。