Home | History | Annotate | Download | only in media
      1 // Copyright 2013 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 CONTENT_BROWSER_MEDIA_MEDIA_BROWSERTEST_H_
      6 #define CONTENT_BROWSER_MEDIA_MEDIA_BROWSERTEST_H_
      7 
      8 #include <utility>
      9 #include <vector>
     10 
     11 #include "content/test/content_browser_test.h"
     12 
     13 namespace content {
     14 
     15 class TitleWatcher;
     16 
     17 // Class used to automate running media related browser tests. The functions
     18 // assume that media files are located under files/media/ folder known to
     19 // the test http server.
     20 class MediaBrowserTest : public ContentBrowserTest {
     21  public:
     22   typedef std::pair<const char*, const char*> StringPair;
     23 
     24   // Common test results.
     25   static const char kEnded[];
     26   static const char kError[];
     27   static const char kFailed[];
     28 
     29   virtual void SetUp() OVERRIDE;
     30 
     31   // Runs a html page with a list of URL query parameters.
     32   // If http is true, the test starts a local http test server to load the test
     33   // page, otherwise a local file URL is loaded inside the content shell.
     34   // It uses RunTest() to check for expected test output.
     35   void RunMediaTestPage(const char* html_page,
     36                         std::vector<StringPair>* query_params,
     37                         const char* expected, bool http);
     38 
     39   // Opens a URL and waits for the document title to match either one of the
     40   // default strings or the expected string.
     41   void RunTest(const GURL& gurl, const char* expected);
     42 
     43   virtual void AddWaitForTitles(content::TitleWatcher* title_watcher);
     44 };
     45 
     46 } // namespace content
     47 
     48 #endif  // CONTENT_BROWSER_MEDIA_MEDIA_BROWSERTEST_H_
     49