19ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch// Copyright 2013 The Chromium Authors. All rights reserved. 29ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch// Use of this source code is governed by a BSD-style license that can be 39ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch// found in the LICENSE file. 49ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch 5a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#ifndef GOOGLE_APIS_DRIVE_DUMMY_AUTH_SERVICE_H_ 6a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#define GOOGLE_APIS_DRIVE_DUMMY_AUTH_SERVICE_H_ 79ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch 89ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch#include "base/compiler_specific.h" 9a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#include "google_apis/drive/auth_service_interface.h" 109ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch 119ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdochnamespace google_apis { 129ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch 139ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch// Dummy implementation of AuthServiceInterface that always return a dummy 149ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch// access token. 159ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdochclass DummyAuthService : public AuthServiceInterface { 169ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch public: 174e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) // The constructor presets non-empty tokens. When a test for checking auth 184e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) // failure case (i.e., empty tokens) is needed, explicitly clear them by the 194e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) // Clear{Access, Refresh}Token methods. 209ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch DummyAuthService(); 219ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch 224e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) void set_access_token(const std::string& token) { access_token_ = token; } 234e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) void set_refresh_token(const std::string& token) { refresh_token_ = token; } 244e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) const std::string& refresh_token() const { return refresh_token_; } 254e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 269ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch // AuthServiceInterface overrides. 279ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch virtual void AddObserver(AuthServiceObserver* observer) OVERRIDE; 289ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch virtual void RemoveObserver(AuthServiceObserver* observer) OVERRIDE; 299ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch virtual void StartAuthentication(const AuthStatusCallback& callback) OVERRIDE; 309ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch virtual bool HasAccessToken() const OVERRIDE; 319ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch virtual bool HasRefreshToken() const OVERRIDE; 329ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch virtual const std::string& access_token() const OVERRIDE; 339ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch virtual void ClearAccessToken() OVERRIDE; 349ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch virtual void ClearRefreshToken() OVERRIDE; 359ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch 369ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch private: 374e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) std::string access_token_; 384e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) std::string refresh_token_; 399ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch}; 409ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch 419ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch} // namespace google_apis 429ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch 43a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#endif // GOOGLE_APIS_DRIVE_DUMMY_AUTH_SERVICE_H_ 44