Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / content / test / webrtc_content_browsertest_base.h
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 "content/public/test/content_browser_test.h"
6
7 namespace base {
8 class CommandLine;
9 }
10
11 namespace content {
12
13 // Contains stuff WebRTC browsertests have in common.
14 class WebRtcContentBrowserTest: public ContentBrowserTest {
15  public:
16   void SetUpCommandLine(base::CommandLine* command_line) override;
17   void SetUp() override;
18   void TearDown() override;
19
20  protected:
21   // Executes |javascript|. The script is required to use
22   // window.domAutomationController.send to send a string value back to here.
23   std::string ExecuteJavascriptAndReturnResult(
24       const std::string& javascript);
25
26   // Waits for the javascript to return OK via the automation controller.
27   // If the javascript returns != OK or times out, we fail the test.
28   void ExecuteJavascriptAndWaitForOk(const std::string& javascript);
29
30   void DisableOpusIfOnAndroid();
31
32   // Generates javascript code for a getUserMedia call.
33   std::string GenerateGetUserMediaCall(const char* function_name,
34                                        int min_width,
35                                        int max_width,
36                                        int min_height,
37                                        int max_height,
38                                        int min_frame_rate,
39                                        int max_frame_rate) const;
40
41   bool OnWinXp() const;
42 };
43
44 }  // namespace content