1// Copyright 2014 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef CHROME_BROWSER_UI_ASH_STUB_USER_ACCOUNTS_DELEGATE_H_
6#define CHROME_BROWSER_UI_ASH_STUB_USER_ACCOUNTS_DELEGATE_H_
7
8#include "ash/system/user/user_accounts_delegate.h"
9#include "base/compiler_specific.h"
10#include "base/macros.h"
11
12class StubUserAccountsDelegate : public ash::tray::UserAccountsDelegate {
13 public:
14  explicit StubUserAccountsDelegate(const std::string& owner_id);
15  virtual ~StubUserAccountsDelegate();
16
17  void AddAccount(const std::string& account);
18
19  // Overridden from ash::tray::UserAccountsDelegate:
20  virtual std::string GetPrimaryAccountId() OVERRIDE;
21  virtual std::vector<std::string> GetSecondaryAccountIds() OVERRIDE;
22  virtual std::string GetAccountDisplayName(const std::string& account_id)
23      OVERRIDE;
24  virtual void DeleteAccount(const std::string& account_id) OVERRIDE;
25  virtual void LaunchAddAccountDialog() OVERRIDE;
26
27 private:
28  std::string primary_account_;
29  std::vector<std::string> secondary_accounts_;
30
31  DISALLOW_COPY_AND_ASSIGN(StubUserAccountsDelegate);
32};
33
34#endif  // CHROME_BROWSER_UI_ASH_STUB_USER_ACCOUNTS_DELEGATE_H_
35