diff options
author | haruki@chromium.org <haruki@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-10 07:53:45 +0000 |
---|---|---|
committer | haruki@chromium.org <haruki@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-10 07:53:45 +0000 |
commit | 8aabea71d282178ff7c1477edc6eec9805b25c53 (patch) | |
tree | 2032e8c72b5790fffa2963fa8bc741c0025cf4f1 /chromeos/dbus | |
parent | c1c2a9ce468e448dfe6f6d1b54064f6cc93765ea (diff) | |
download | chromium_src-8aabea71d282178ff7c1477edc6eec9805b25c53.zip chromium_src-8aabea71d282178ff7c1477edc6eec9805b25c53.tar.gz chromium_src-8aabea71d282178ff7c1477edc6eec9805b25c53.tar.bz2 |
Use MockDBusThreadManagerWithoutGMock for DeviceLocalAccountTest
Moving necessary fake behaviors to FakeCryptohomeClient.
BUG=239333
TEST=trybots
R=satorux@chromium.org
Review URL: https://codereview.chromium.org/15014016
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@199421 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chromeos/dbus')
-rw-r--r-- | chromeos/dbus/fake_cryptohome_client.cc | 29 | ||||
-rw-r--r-- | chromeos/dbus/fake_cryptohome_client.h | 4 |
2 files changed, 33 insertions, 0 deletions
diff --git a/chromeos/dbus/fake_cryptohome_client.cc b/chromeos/dbus/fake_cryptohome_client.cc index 9c2383c..59262b0 100644 --- a/chromeos/dbus/fake_cryptohome_client.cc +++ b/chromeos/dbus/fake_cryptohome_client.cc @@ -6,6 +6,7 @@ #include "base/bind.h" #include "base/message_loop.h" +#include "third_party/cros_system_api/dbus/service_constants.h" namespace chromeos { @@ -84,6 +85,16 @@ bool FakeCryptohomeClient::InstallAttributesGet(const std::string& name, void FakeCryptohomeClient::AsyncMount(const std::string& username, const std::string& key, int flags, const AsyncMethodCallback& callback) { + DCHECK(!callback.is_null()); + DCHECK(!handler_.is_null()); + + MessageLoop::current()->PostTask(FROM_HERE, + base::Bind(callback, 1 /* async_id */)); + MessageLoop::current()->PostTask(FROM_HERE, + base::Bind(handler_, + 1, // async_id + true, // return_status + cryptohome::MOUNT_ERROR_NONE)); } void FakeCryptohomeClient::AsyncMountGuest( @@ -123,6 +134,8 @@ bool FakeCryptohomeClient::InstallAttributesFinalize(bool* successful) { void FakeCryptohomeClient::SetAsyncCallStatusHandlers( const AsyncCallStatusHandler& handler, const AsyncCallStatusWithDataHandler& data_handler) { + handler_ = handler; + data_handler_ = data_handler; } bool FakeCryptohomeClient::CallTpmIsEnabledAndBlock(bool* enabled) { @@ -186,6 +199,8 @@ void FakeCryptohomeClient::AsyncTpmAttestationCreateEnrollRequest( } void FakeCryptohomeClient::ResetAsyncCallStatusHandlers() { + handler_.Reset(); + data_handler_.Reset(); } void FakeCryptohomeClient::TpmAttestationDoesKeyExist( @@ -212,6 +227,20 @@ void FakeCryptohomeClient::TpmAttestationSetKeyPayload( void FakeCryptohomeClient::GetSanitizedUsername( const std::string& username, const StringDBusMethodCallback& callback) { + DCHECK(!callback.is_null()); + DCHECK(!handler_.is_null()); + + MessageLoop::current()->PostTask( + FROM_HERE, + base::Bind(callback, + chromeos::DBUS_METHOD_CALL_SUCCESS, + username)); + MessageLoop::current()->PostTask( + FROM_HERE, + base::Bind(data_handler_, + 1, // async_id + true, // return_status + username)); } void FakeCryptohomeClient::TpmAttestationSignEnterpriseChallenge( diff --git a/chromeos/dbus/fake_cryptohome_client.h b/chromeos/dbus/fake_cryptohome_client.h index 1fed647..62cdb8b 100644 --- a/chromeos/dbus/fake_cryptohome_client.h +++ b/chromeos/dbus/fake_cryptohome_client.h @@ -135,7 +135,11 @@ class FakeCryptohomeClient : public CryptohomeClient { } private: + AsyncCallStatusHandler handler_; + AsyncCallStatusWithDataHandler data_handler_; + bool unmount_result_; + DISALLOW_COPY_AND_ASSIGN(FakeCryptohomeClient); }; |