Commit 99ee6896 authored by Adam Langley's avatar Adam Langley Committed by Commit Bot

device/fido: rename TransportAvailibilityObserver to just Observer

Seems like we're going to want to make this more generic to cope with
PIN support.

Change-Id: I230f317e364a8072b02ffe577b33232c5b9b9786
Reviewed-on: https://chromium-review.googlesource.com/c/1475008
Auto-Submit: Adam Langley <agl@chromium.org>
Reviewed-by: default avatarMartin Kreichgauer <martinkr@google.com>
Reviewed-by: default avatarAvi Drissman <avi@chromium.org>
Commit-Queue: Avi Drissman <avi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#632810}
parent 325e3a47
...@@ -87,7 +87,7 @@ class ChromeAuthenticatorRequestDelegate ...@@ -87,7 +87,7 @@ class ChromeAuthenticatorRequestDelegate
void DisableUI() override; void DisableUI() override;
bool IsWebAuthnUIEnabled() override; bool IsWebAuthnUIEnabled() override;
// device::FidoRequestHandlerBase::TransportAvailabilityObserver: // device::FidoRequestHandlerBase::Observer:
void OnTransportAvailabilityEnumerated( void OnTransportAvailabilityEnumerated(
device::FidoRequestHandlerBase::TransportAvailabilityInfo data) override; device::FidoRequestHandlerBase::TransportAvailabilityInfo data) override;
bool EmbedderControlsAuthenticatorDispatch( bool EmbedderControlsAuthenticatorDispatch(
......
...@@ -31,7 +31,7 @@ namespace content { ...@@ -31,7 +31,7 @@ namespace content {
// //
// [1]: See https://www.w3.org/TR/webauthn/. // [1]: See https://www.w3.org/TR/webauthn/.
class CONTENT_EXPORT AuthenticatorRequestClientDelegate class CONTENT_EXPORT AuthenticatorRequestClientDelegate
: public device::FidoRequestHandlerBase::TransportAvailabilityObserver { : public device::FidoRequestHandlerBase::Observer {
public: public:
// Failure reasons that might be of interest to the user, so the embedder may // Failure reasons that might be of interest to the user, so the embedder may
// decide to inform the user. // decide to inform the user.
...@@ -109,7 +109,7 @@ class CONTENT_EXPORT AuthenticatorRequestClientDelegate ...@@ -109,7 +109,7 @@ class CONTENT_EXPORT AuthenticatorRequestClientDelegate
virtual bool IsWebAuthnUIEnabled(); virtual bool IsWebAuthnUIEnabled();
// device::FidoRequestHandlerBase::TransportAvailabilityObserver: // device::FidoRequestHandlerBase::Observer:
void OnTransportAvailabilityEnumerated( void OnTransportAvailabilityEnumerated(
device::FidoRequestHandlerBase::TransportAvailabilityInfo data) override; device::FidoRequestHandlerBase::TransportAvailabilityInfo data) override;
// If true, the request handler will defer dispatch of its request onto the // If true, the request handler will defer dispatch of its request onto the
......
...@@ -30,11 +30,10 @@ constexpr char kTestFidoBleAuthenticatorId[] = "ble:test_device_address"; ...@@ -30,11 +30,10 @@ constexpr char kTestFidoBleAuthenticatorId[] = "ble:test_device_address";
constexpr char kTestPinCode[] = "1234"; constexpr char kTestPinCode[] = "1234";
constexpr char kTestBluetoothDisplayName[] = "device_name"; constexpr char kTestBluetoothDisplayName[] = "device_name";
class MockTransportAvailabilityObserver class MockObserver : public FidoRequestHandlerBase::Observer {
: public FidoRequestHandlerBase::TransportAvailabilityObserver {
public: public:
MockTransportAvailabilityObserver() = default; MockObserver() = default;
~MockTransportAvailabilityObserver() override = default; ~MockObserver() override = default;
MOCK_METHOD1(OnTransportAvailabilityEnumerated, MOCK_METHOD1(OnTransportAvailabilityEnumerated,
void(FidoRequestHandlerBase::TransportAvailabilityInfo data)); void(FidoRequestHandlerBase::TransportAvailabilityInfo data));
...@@ -51,13 +50,12 @@ class MockTransportAvailabilityObserver ...@@ -51,13 +50,12 @@ class MockTransportAvailabilityObserver
void(base::StringPiece, bool)); void(base::StringPiece, bool));
private: private:
DISALLOW_COPY_AND_ASSIGN(MockTransportAvailabilityObserver); DISALLOW_COPY_AND_ASSIGN(MockObserver);
}; };
class FakeFidoRequestHandlerBase : public FidoRequestHandlerBase { class FakeFidoRequestHandlerBase : public FidoRequestHandlerBase {
public: public:
explicit FakeFidoRequestHandlerBase( explicit FakeFidoRequestHandlerBase(MockObserver* observer)
MockTransportAvailabilityObserver* observer)
: FidoRequestHandlerBase(nullptr, {}) { : FidoRequestHandlerBase(nullptr, {}) {
set_observer(observer); set_observer(observer);
} }
...@@ -102,7 +100,7 @@ class FidoBleAdapterManagerTest : public ::testing::Test { ...@@ -102,7 +100,7 @@ class FidoBleAdapterManagerTest : public ::testing::Test {
} }
MockBluetoothAdapter* adapter() { return adapter_.get(); } MockBluetoothAdapter* adapter() { return adapter_.get(); }
MockTransportAvailabilityObserver* observer() { return mock_observer_.get(); } MockObserver* observer() { return mock_observer_.get(); }
bool adapter_powered_on_programmatically( bool adapter_powered_on_programmatically(
const BleAdapterManager& adapter_manager) { const BleAdapterManager& adapter_manager) {
return adapter_manager.adapter_powered_on_programmatically_; return adapter_manager.adapter_powered_on_programmatically_;
...@@ -126,8 +124,8 @@ class FidoBleAdapterManagerTest : public ::testing::Test { ...@@ -126,8 +124,8 @@ class FidoBleAdapterManagerTest : public ::testing::Test {
base::test::ScopedTaskEnvironment scoped_task_environment_; base::test::ScopedTaskEnvironment scoped_task_environment_;
scoped_refptr<MockBluetoothAdapter> adapter_ = scoped_refptr<MockBluetoothAdapter> adapter_ =
base::MakeRefCounted<::testing::NiceMock<MockBluetoothAdapter>>(); base::MakeRefCounted<::testing::NiceMock<MockBluetoothAdapter>>();
std::unique_ptr<MockTransportAvailabilityObserver> mock_observer_ = std::unique_ptr<MockObserver> mock_observer_ =
std::make_unique<MockTransportAvailabilityObserver>(); std::make_unique<MockObserver>();
std::unique_ptr<FakeFidoRequestHandlerBase> fake_request_handler_ = std::unique_ptr<FakeFidoRequestHandlerBase> fake_request_handler_ =
std::make_unique<FakeFidoRequestHandlerBase>(mock_observer_.get()); std::make_unique<FakeFidoRequestHandlerBase>(mock_observer_.get());
}; };
......
...@@ -48,10 +48,9 @@ FidoRequestHandlerBase::TransportAvailabilityInfo::operator=( ...@@ -48,10 +48,9 @@ FidoRequestHandlerBase::TransportAvailabilityInfo::operator=(
FidoRequestHandlerBase::TransportAvailabilityInfo:: FidoRequestHandlerBase::TransportAvailabilityInfo::
~TransportAvailabilityInfo() = default; ~TransportAvailabilityInfo() = default;
// FidoRequestHandlerBase::TransportAvailabilityObserver ---------------------- // FidoRequestHandlerBase::Observer ----------------------
FidoRequestHandlerBase::TransportAvailabilityObserver:: FidoRequestHandlerBase::Observer::~Observer() = default;
~TransportAvailabilityObserver() = default;
// FidoRequestHandlerBase ----------------------------------------------------- // FidoRequestHandlerBase -----------------------------------------------------
......
...@@ -106,13 +106,13 @@ class COMPONENT_EXPORT(DEVICE_FIDO) FidoRequestHandlerBase ...@@ -106,13 +106,13 @@ class COMPONENT_EXPORT(DEVICE_FIDO) FidoRequestHandlerBase
// If true, dispatch of the request cannot be controlled by // If true, dispatch of the request cannot be controlled by
// the embedder. The embedder must not display a UI for this // the embedder. The embedder must not display a UI for this
// request and must ignore all subsequent invocations of the // request and must ignore all subsequent invocations of the
// TransportAvailabilityObserver interface methods. // Observer interface methods.
bool disable_embedder_ui = false; bool disable_embedder_ui = false;
}; };
class COMPONENT_EXPORT(DEVICE_FIDO) TransportAvailabilityObserver { class COMPONENT_EXPORT(DEVICE_FIDO) Observer {
public: public:
virtual ~TransportAvailabilityObserver(); virtual ~Observer();
// This method will not be invoked until the observer is set. // This method will not be invoked until the observer is set.
virtual void OnTransportAvailabilityEnumerated( virtual void OnTransportAvailabilityEnumerated(
...@@ -179,7 +179,7 @@ class COMPONENT_EXPORT(DEVICE_FIDO) FidoRequestHandlerBase ...@@ -179,7 +179,7 @@ class COMPONENT_EXPORT(DEVICE_FIDO) FidoRequestHandlerBase
base::WeakPtr<FidoRequestHandlerBase> GetWeakPtr(); base::WeakPtr<FidoRequestHandlerBase> GetWeakPtr();
void set_observer(TransportAvailabilityObserver* observer) { void set_observer(Observer* observer) {
DCHECK(!observer_) << "Only one observer is supported."; DCHECK(!observer_) << "Only one observer is supported.";
observer_ = observer; observer_ = observer;
...@@ -220,7 +220,7 @@ class COMPONENT_EXPORT(DEVICE_FIDO) FidoRequestHandlerBase ...@@ -220,7 +220,7 @@ class COMPONENT_EXPORT(DEVICE_FIDO) FidoRequestHandlerBase
std::vector<std::unique_ptr<FidoDiscoveryBase>>& discoveries() { std::vector<std::unique_ptr<FidoDiscoveryBase>>& discoveries() {
return discoveries_; return discoveries_;
} }
TransportAvailabilityObserver* observer() const { return observer_; } Observer* observer() const { return observer_; }
// FidoDiscoveryBase::Observer // FidoDiscoveryBase::Observer
void AuthenticatorAdded(FidoDiscoveryBase* discovery, void AuthenticatorAdded(FidoDiscoveryBase* discovery,
...@@ -256,7 +256,7 @@ class COMPONENT_EXPORT(DEVICE_FIDO) FidoRequestHandlerBase ...@@ -256,7 +256,7 @@ class COMPONENT_EXPORT(DEVICE_FIDO) FidoRequestHandlerBase
AuthenticatorMap active_authenticators_; AuthenticatorMap active_authenticators_;
std::vector<std::unique_ptr<FidoDiscoveryBase>> discoveries_; std::vector<std::unique_ptr<FidoDiscoveryBase>> discoveries_;
TransportAvailabilityObserver* observer_ = nullptr; Observer* observer_ = nullptr;
TransportAvailabilityInfo transport_availability_info_; TransportAvailabilityInfo transport_availability_info_;
base::RepeatingClosure notify_observer_callback_; base::RepeatingClosure notify_observer_callback_;
std::unique_ptr<BleAdapterManager> bluetooth_adapter_manager_; std::unique_ptr<BleAdapterManager> bluetooth_adapter_manager_;
......
...@@ -65,16 +65,15 @@ class EmptyRequestHandler : public FidoRequestHandler<std::vector<uint8_t>> { ...@@ -65,16 +65,15 @@ class EmptyRequestHandler : public FidoRequestHandler<std::vector<uint8_t>> {
void DispatchRequest(FidoAuthenticator* authenticator) override {} void DispatchRequest(FidoAuthenticator* authenticator) override {}
}; };
class TestTransportAvailabilityObserver class TestObserver : public FidoRequestHandlerBase::Observer {
: public FidoRequestHandlerBase::TransportAvailabilityObserver {
public: public:
using TransportAvailabilityNotificationReceiver = test::TestCallbackReceiver< using TransportAvailabilityNotificationReceiver = test::TestCallbackReceiver<
FidoRequestHandlerBase::TransportAvailabilityInfo>; FidoRequestHandlerBase::TransportAvailabilityInfo>;
using AuthenticatorIdChangeNotificationReceiver = using AuthenticatorIdChangeNotificationReceiver =
test::TestCallbackReceiver<std::string>; test::TestCallbackReceiver<std::string>;
TestTransportAvailabilityObserver() {} TestObserver() {}
~TestTransportAvailabilityObserver() override {} ~TestObserver() override {}
FidoRequestHandlerBase::TransportAvailabilityInfo FidoRequestHandlerBase::TransportAvailabilityInfo
WaitForTransportAvailabilityInfo() { WaitForTransportAvailabilityInfo() {
...@@ -104,7 +103,7 @@ class TestTransportAvailabilityObserver ...@@ -104,7 +103,7 @@ class TestTransportAvailabilityObserver
} }
protected: protected:
// FidoRequestHandlerBase::TransportAvailabilityObserver: // FidoRequestHandlerBase::Observer:
void OnTransportAvailabilityEnumerated( void OnTransportAvailabilityEnumerated(
FidoRequestHandlerBase::TransportAvailabilityInfo data) override { FidoRequestHandlerBase::TransportAvailabilityInfo data) override {
transport_availability_notification_receiver_.callback().Run( transport_availability_notification_receiver_.callback().Run(
...@@ -133,7 +132,7 @@ class TestTransportAvailabilityObserver ...@@ -133,7 +132,7 @@ class TestTransportAvailabilityObserver
AuthenticatorIdChangeNotificationReceiver AuthenticatorIdChangeNotificationReceiver
authenticator_id_change_notification_receiver_; authenticator_id_change_notification_receiver_;
DISALLOW_COPY_AND_ASSIGN(TestTransportAvailabilityObserver); DISALLOW_COPY_AND_ASSIGN(TestObserver);
}; };
// Fake FidoTask implementation that sends an empty byte array to the device // Fake FidoTask implementation that sends an empty byte array to the device
...@@ -530,7 +529,7 @@ TEST_F(FidoRequestHandlerTest, TestSetPlatformAuthenticator) { ...@@ -530,7 +529,7 @@ TEST_F(FidoRequestHandlerTest, TestSetPlatformAuthenticator) {
auto authenticator = auto authenticator =
std::make_unique<FidoDeviceAuthenticator>(std::move(device)); std::make_unique<FidoDeviceAuthenticator>(std::move(device));
TestTransportAvailabilityObserver observer; TestObserver observer;
auto request_handler = std::make_unique<FakeFidoRequestHandler>( auto request_handler = std::make_unique<FakeFidoRequestHandler>(
base::flat_set<FidoTransportProtocol>({FidoTransportProtocol::kInternal}), base::flat_set<FidoTransportProtocol>({FidoTransportProtocol::kInternal}),
callback().callback()); callback().callback());
...@@ -566,7 +565,7 @@ TEST_F(FidoRequestHandlerTest, ...@@ -566,7 +565,7 @@ TEST_F(FidoRequestHandlerTest,
auto authenticator = auto authenticator =
std::make_unique<FidoDeviceAuthenticator>(std::move(device)); std::make_unique<FidoDeviceAuthenticator>(std::move(device));
TestTransportAvailabilityObserver observer; TestObserver observer;
auto request_handler = std::make_unique<FakeFidoRequestHandler>( auto request_handler = std::make_unique<FakeFidoRequestHandler>(
base::flat_set<FidoTransportProtocol>({FidoTransportProtocol::kInternal}), base::flat_set<FidoTransportProtocol>({FidoTransportProtocol::kInternal}),
callback().callback()); callback().callback());
...@@ -584,7 +583,7 @@ TEST_F(FidoRequestHandlerTest, ...@@ -584,7 +583,7 @@ TEST_F(FidoRequestHandlerTest,
} }
TEST_F(FidoRequestHandlerTest, InternalTransportDisallowedIfMarkedUnavailable) { TEST_F(FidoRequestHandlerTest, InternalTransportDisallowedIfMarkedUnavailable) {
TestTransportAvailabilityObserver observer; TestObserver observer;
auto request_handler = std::make_unique<FakeFidoRequestHandler>( auto request_handler = std::make_unique<FakeFidoRequestHandler>(
base::flat_set<FidoTransportProtocol>({FidoTransportProtocol::kInternal}), base::flat_set<FidoTransportProtocol>({FidoTransportProtocol::kInternal}),
callback().callback()); callback().callback());
...@@ -597,7 +596,7 @@ TEST_F(FidoRequestHandlerTest, InternalTransportDisallowedIfMarkedUnavailable) { ...@@ -597,7 +596,7 @@ TEST_F(FidoRequestHandlerTest, InternalTransportDisallowedIfMarkedUnavailable) {
TEST_F(FidoRequestHandlerTest, BleTransportAllowedIfBluetoothAdapterPresent) { TEST_F(FidoRequestHandlerTest, BleTransportAllowedIfBluetoothAdapterPresent) {
EXPECT_CALL(*adapter(), IsPresent()).WillOnce(::testing::Return(true)); EXPECT_CALL(*adapter(), IsPresent()).WillOnce(::testing::Return(true));
TestTransportAvailabilityObserver observer; TestObserver observer;
auto request_handler = CreateFakeHandler(); auto request_handler = CreateFakeHandler();
request_handler->set_observer(&observer); request_handler->set_observer(&observer);
...@@ -610,7 +609,7 @@ TEST_F(FidoRequestHandlerTest, ...@@ -610,7 +609,7 @@ TEST_F(FidoRequestHandlerTest,
BleTransportDisallowedBluetoothAdapterNotPresent) { BleTransportDisallowedBluetoothAdapterNotPresent) {
EXPECT_CALL(*adapter(), IsPresent()).WillOnce(::testing::Return(false)); EXPECT_CALL(*adapter(), IsPresent()).WillOnce(::testing::Return(false));
TestTransportAvailabilityObserver observer; TestObserver observer;
auto request_handler = CreateFakeHandler(); auto request_handler = CreateFakeHandler();
request_handler->set_observer(&observer); request_handler->set_observer(&observer);
...@@ -622,7 +621,7 @@ TEST_F(FidoRequestHandlerTest, ...@@ -622,7 +621,7 @@ TEST_F(FidoRequestHandlerTest,
TransportAvailabilityNotificationOnObserverSetLate) { TransportAvailabilityNotificationOnObserverSetLate) {
EXPECT_CALL(*adapter(), IsPresent()).WillOnce(::testing::Return(true)); EXPECT_CALL(*adapter(), IsPresent()).WillOnce(::testing::Return(true));
TestTransportAvailabilityObserver observer; TestObserver observer;
auto request_handler = CreateFakeHandler(); auto request_handler = CreateFakeHandler();
scoped_task_environment_.FastForwardUntilNoTasksRemain(); scoped_task_environment_.FastForwardUntilNoTasksRemain();
...@@ -634,7 +633,7 @@ TEST_F(FidoRequestHandlerTest, ...@@ -634,7 +633,7 @@ TEST_F(FidoRequestHandlerTest,
TEST_F(FidoRequestHandlerTest, EmbedderNotifiedWhenAuthenticatorIdChanges) { TEST_F(FidoRequestHandlerTest, EmbedderNotifiedWhenAuthenticatorIdChanges) {
static constexpr char kNewAuthenticatorId[] = "new_authenticator_id"; static constexpr char kNewAuthenticatorId[] = "new_authenticator_id";
TestTransportAvailabilityObserver observer; TestObserver observer;
auto request_handler = CreateFakeHandler(); auto request_handler = CreateFakeHandler();
request_handler->set_observer(&observer); request_handler->set_observer(&observer);
ble_discovery()->WaitForCallToStartAndSimulateSuccess(); ble_discovery()->WaitForCallToStartAndSimulateSuccess();
...@@ -653,7 +652,7 @@ TEST_F(FidoRequestHandlerTest, TransportAvailabilityOfWindowsAuthenticator) { ...@@ -653,7 +652,7 @@ TEST_F(FidoRequestHandlerTest, TransportAvailabilityOfWindowsAuthenticator) {
ScopedFakeWinWebAuthnApi scoped_fake_win_webauthn_api; ScopedFakeWinWebAuthnApi scoped_fake_win_webauthn_api;
scoped_fake_win_webauthn_api.set_available(true); scoped_fake_win_webauthn_api.set_available(true);
TestTransportAvailabilityObserver observer; TestObserver observer;
ForgeNextHidDiscovery(); ForgeNextHidDiscovery();
EmptyRequestHandler request_handler( EmptyRequestHandler request_handler(
{FidoTransportProtocol::kUsbHumanInterfaceDevice}); {FidoTransportProtocol::kUsbHumanInterfaceDevice});
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment