15d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)// Copyright 2014 The Chromium Authors. All rights reserved. 22a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 32a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// found in the LICENSE file. 42a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 55d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#include "components/policy/core/browser/browser_policy_connector.h" 62a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "testing/gtest/include/gtest/gtest.h" 72a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 82a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)namespace policy { 92a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST(BrowserPolicyConnectorTest, IsNonEnterpriseUser) { 112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) // List of example emails that are not enterprise users. 122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) static const char* kNonEnterpriseUsers[] = { 132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) "fizz@aol.com", 142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) "foo@gmail.com", 152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) "bar@googlemail.com", 162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) "baz@hotmail.it", 172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) "baz@hotmail.co.uk", 182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) "baz@hotmail.com.tw", 192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) "user@msn.com", 202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) "another_user@live.com", 212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) "foo@qq.com", 222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) "i_love@yahoo.com", 232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) "i_love@yahoo.com.tw", 242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) "i_love@yahoo.jp", 252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) "i_love@yahoo.co.uk", 262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) "user@yandex.ru" 272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) }; 282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) // List of example emails that are potential enterprise users. 302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) static const char* kEnterpriseUsers[] = { 312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) "foo@google.com", 322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) "chrome_rules@chromium.org", 332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) "user@hotmail.enterprise.com", 342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) }; 352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) for (unsigned int i = 0; i < arraysize(kNonEnterpriseUsers); ++i) { 372a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) std::string username(kNonEnterpriseUsers[i]); 382a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) EXPECT_TRUE(BrowserPolicyConnector::IsNonEnterpriseUser(username)) << 392a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) "IsNonEnterpriseUser returned false for " << username; 402a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) } 412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) for (unsigned int i = 0; i < arraysize(kEnterpriseUsers); ++i) { 422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) std::string username(kEnterpriseUsers[i]); 432a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) EXPECT_FALSE(BrowserPolicyConnector::IsNonEnterpriseUser(username)) << 442a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) "IsNonEnterpriseUser returned true for " << username; 452a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) } 462a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} 472a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 482a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} // namespace policy 49