| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/web_applications/web_app.h" | 5 #include "chrome/browser/web_applications/web_app.h" |
| 6 | 6 |
| 7 #include "base/file_path.h" | 7 #include "base/file_path.h" |
| 8 #include "base/string_util.h" | 8 #include "base/string_util.h" |
| 9 #include "base/utf_string_conversions.h" | 9 #include "base/utf_string_conversions.h" |
| 10 #include "chrome/browser/ui/tab_contents/test_tab_contents_wrapper.h" | 10 #include "chrome/browser/ui/tab_contents/test_tab_contents_wrapper.h" |
| 11 #include "chrome/browser/ui/web_applications/web_app_ui.h" | 11 #include "chrome/browser/ui/web_applications/web_app_ui.h" |
| 12 #include "chrome/common/extensions/extension_messages.h" | 12 #include "chrome/common/extensions/extension_messages.h" |
| 13 #include "chrome/test/base/testing_profile.h" | 13 #include "chrome/test/base/testing_profile.h" |
| 14 #include "content/browser/browser_thread.h" | 14 #include "content/browser/browser_thread.h" |
| 15 #include "testing/gtest/include/gtest/gtest.h" | 15 #include "testing/gtest/include/gtest/gtest.h" |
| 16 | 16 |
| 17 class WebApplicationTest : public TabContentsWrapperTestHarness { | 17 class WebApplicationTest : public TabContentsWrapperTestHarness { |
| 18 public: | 18 public: |
| 19 WebApplicationTest() | 19 WebApplicationTest() |
| 20 : TabContentsWrapperTestHarness(), | 20 : TabContentsWrapperTestHarness(), |
| 21 ui_thread_(BrowserThread::UI, &message_loop_) { | 21 ui_thread_(BrowserThread::UI, &message_loop_) { |
| 22 } | 22 } |
| 23 | 23 |
| 24 private: | 24 private: |
| 25 // Supply our own profile so we use the correct profile data. The test harness | |
| 26 // is not supposed to overwrite a profile if it's already created. | |
| 27 virtual void SetUp() { | |
| 28 profile_.reset(new TestingProfile()); | |
| 29 | |
| 30 TabContentsWrapperTestHarness::SetUp(); | |
| 31 } | |
| 32 | |
| 33 virtual void TearDown() { | |
| 34 TabContentsWrapperTestHarness::TearDown(); | |
| 35 | |
| 36 profile_.reset(NULL); | |
| 37 } | |
| 38 | |
| 39 BrowserThread ui_thread_; | 25 BrowserThread ui_thread_; |
| 40 }; | 26 }; |
| 41 | 27 |
| 42 TEST_F(WebApplicationTest, GetShortcutInfoForTab) { | 28 TEST_F(WebApplicationTest, GetShortcutInfoForTab) { |
| 43 const string16 title = ASCIIToUTF16("TEST_TITLE"); | 29 const string16 title = ASCIIToUTF16("TEST_TITLE"); |
| 44 const string16 description = ASCIIToUTF16("TEST_DESCRIPTION"); | 30 const string16 description = ASCIIToUTF16("TEST_DESCRIPTION"); |
| 45 const GURL url("http://www.foo.com/bar"); | 31 const GURL url("http://www.foo.com/bar"); |
| 46 WebApplicationInfo web_app_info; | 32 WebApplicationInfo web_app_info; |
| 47 web_app_info.title = title; | 33 web_app_info.title = title; |
| 48 web_app_info.description = description; | 34 web_app_info.description = description; |
| 49 web_app_info.app_url = url; | 35 web_app_info.app_url = url; |
| 50 | 36 |
| 51 rvh()->TestOnMessageReceived( | 37 rvh()->TestOnMessageReceived( |
| 52 ExtensionHostMsg_DidGetApplicationInfo(0, 0, web_app_info)); | 38 ExtensionHostMsg_DidGetApplicationInfo(0, 0, web_app_info)); |
| 53 ShellIntegration::ShortcutInfo info; | 39 ShellIntegration::ShortcutInfo info; |
| 54 web_app::GetShortcutInfoForTab(contents_wrapper(), &info); | 40 web_app::GetShortcutInfoForTab(contents_wrapper(), &info); |
| 55 | 41 |
| 56 EXPECT_EQ(title, info.title); | 42 EXPECT_EQ(title, info.title); |
| 57 EXPECT_EQ(description, info.description); | 43 EXPECT_EQ(description, info.description); |
| 58 EXPECT_EQ(url, info.url); | 44 EXPECT_EQ(url, info.url); |
| 59 } | 45 } |
| 60 | 46 |
| 61 TEST_F(WebApplicationTest, GetDataDir) { | 47 TEST_F(WebApplicationTest, GetDataDir) { |
| 62 FilePath test_path(FILE_PATH_LITERAL("/path/to/test")); | 48 FilePath test_path(FILE_PATH_LITERAL("/path/to/test")); |
| 63 FilePath result = web_app::GetDataDir(test_path); | 49 FilePath result = web_app::GetDataDir(test_path); |
| 64 test_path = test_path.AppendASCII("Web Applications"); | 50 test_path = test_path.AppendASCII("Web Applications"); |
| 65 EXPECT_EQ(test_path.value(), result.value()); | 51 EXPECT_EQ(test_path.value(), result.value()); |
| 66 } | 52 } |
| OLD | NEW |