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#include "extensions/shell/common/shell_content_client.h"
6
7#include <string>
8
9#include "base/strings/string_util.h"
10#include "testing/gtest/include/gtest/gtest.h"
11
12typedef testing::Test ShellContentClientTest;
13
14namespace extensions {
15
16// Tests that the app_shell user agent looks like a Chrome user agent.
17TEST_F(ShellContentClientTest, UserAgentFormat) {
18  ShellContentClient client;
19  std::string user_agent = client.GetUserAgent();
20
21  // Must start with the usual Mozilla-compatibility string.
22  EXPECT_TRUE(StartsWithASCII(user_agent, "Mozilla/5.0", false)) << user_agent;
23
24  // Must contain a substring like "Chrome/1.2.3.4".
25  EXPECT_TRUE(MatchPattern(user_agent, "*Chrome/*.*.*.*")) << user_agent;
26}
27
28}  // namespace extensions
29