diff options
Diffstat (limited to 'chromium/device/fido/mock_fido_device.cc')
-rw-r--r-- | chromium/device/fido/mock_fido_device.cc | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/chromium/device/fido/mock_fido_device.cc b/chromium/device/fido/mock_fido_device.cc index f74015a7600..d5562e29b37 100644 --- a/chromium/device/fido/mock_fido_device.cc +++ b/chromium/device/fido/mock_fido_device.cc @@ -86,12 +86,12 @@ std::vector<uint8_t> MockFidoDevice::EncodeCBORRequest( return request_bytes; } -// Matcher to compare the fist byte of the incoming requests. +// Matcher to compare the first byte of the incoming requests. MATCHER_P(IsCtap2Command, expected_command, "") { return !arg.empty() && arg[0] == base::strict_cast<uint8_t>(expected_command); } -MockFidoDevice::MockFidoDevice() {} +MockFidoDevice::MockFidoDevice() = default; MockFidoDevice::MockFidoDevice( ProtocolVersion protocol_version, base::Optional<AuthenticatorGetInfoResponse> device_info) @@ -138,14 +138,17 @@ void MockFidoDevice::StubGetId() { void MockFidoDevice::ExpectCtap2CommandAndRespondWith( CtapRequestCommand command, base::Optional<base::span<const uint8_t>> response, - base::TimeDelta delay) { + base::TimeDelta delay, + testing::Matcher<base::span<const uint8_t>> request_matcher) { auto data = fido_parsing_utils::MaterializeOrNull(response); auto send_response = [ data(std::move(data)), delay ](DeviceCallback & cb) { base::ThreadTaskRunnerHandle::Get()->PostDelayedTask( FROM_HERE, base::BindOnce(std::move(cb), std::move(data)), delay); }; - EXPECT_CALL(*this, DeviceTransactPtr(IsCtap2Command(command), ::testing::_)) + EXPECT_CALL(*this, + DeviceTransactPtr(AllOf(IsCtap2Command(command), request_matcher), + ::testing::_)) .WillOnce(::testing::DoAll( ::testing::WithArg<1>(::testing::Invoke(send_response)), ::testing::Return(0))); |