Home | History | Annotate | Download | only in test
      1 // Copyright (c) 2012 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 <string>
      6 
      7 #include "chrome_frame/test/chrome_frame_test_utils.h"
      8 #include "chrome_frame/test/mock_ie_event_sink_actions.h"
      9 #include "chrome_frame/test/mock_ie_event_sink_test.h"
     10 
     11 using testing::_;
     12 using testing::StrEq;
     13 
     14 namespace chrome_frame_test {
     15 
     16 // Test fixture for compatibility/reliability tests.
     17 class ChromeFrameSitesTest
     18     : public MockIEEventSinkTest,
     19       public testing::TestWithParam<std::wstring> {
     20  public:
     21   ChromeFrameSitesTest() {}
     22 
     23   virtual void SetUp() {
     24     // Permit navigation in both IE and CF.
     25     ie_mock_.ExpectAnyNavigations();
     26   }
     27 };
     28 
     29 INSTANTIATE_TEST_CASE_P(CF, ChromeFrameSitesTest,
     30                         testing::Values(L"http://www.meebo.com/",
     31                                         L"http://www.vimeo.com/",
     32                                         L"http://wordpress.com/",
     33                                         L"https://github.com/"));
     34 
     35 // Test for navigating to a site that has a CF metatag.
     36 TEST_P(ChromeFrameSitesTest, LoadSite) {
     37   // Print name of site for debugging purposes.
     38   std::wcout << L"Navigating to site: " << GetParam() << std::endl;
     39 
     40   // Verify navigation to the url passed in as parameter.
     41   EXPECT_CALL(ie_mock_, OnLoad(IN_CF, StrEq(GetParam())))
     42       .WillOnce(testing::DoAll(
     43           VerifyAddressBarUrl(&ie_mock_),
     44           CloseBrowserMock(&ie_mock_)));
     45 
     46   LaunchIENavigateAndLoop(GetParam(), kChromeFrameLongNavigationTimeout * 2);
     47 }
     48 
     49 }  // namespace chrome_frame_test
     50