15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved.
25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file.
45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "chrome/test/ppapi/ppapi_test.h"
65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "base/test/test_timeouts.h"
85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "build/build_config.h"
95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "chrome/browser/content_settings/host_content_settings_map.h"
105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "chrome/browser/profiles/profile.h"
115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "chrome/browser/ui/browser.h"
125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "chrome/browser/ui/browser_navigator.h"
132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/ui/tabs/tab_strip_model.h"
145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "chrome/test/base/javascript_test_observer.h"
155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "chrome/test/base/ui_test_utils.h"
165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "content/public/browser/web_contents.h"
175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "content/public/common/url_constants.h"
185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "content/public/test/test_renderer_host.h"
195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)using content::RenderViewHost;
215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// This macro finesses macro expansion to do what we want.
235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define STRIP_PREFIXES(test_name) StripPrefixes(#test_name)
242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Turn the given token into a string. This allows us to use precompiler stuff
252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// to turn names into DISABLED_Foo, but still pass a string to RunTest.
262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define STRINGIFY(test_name) #test_name
272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define LIST_TEST(test_name) STRINGIFY(test_name) ","
285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use these macros to run the tests for a specific interface.
305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Most interfaces should be tested with both macros.
315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define TEST_PPAPI_IN_PROCESS(test_name) \
325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    IN_PROC_BROWSER_TEST_F(PPAPITest, test_name) { \
335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      RunTest(STRIP_PREFIXES(test_name)); \
345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    }
355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define TEST_PPAPI_OUT_OF_PROCESS(test_name) \
365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, test_name) { \
375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      RunTest(STRIP_PREFIXES(test_name)); \
385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    }
395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Similar macros that test over HTTP.
415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define TEST_PPAPI_IN_PROCESS_VIA_HTTP(test_name) \
425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    IN_PROC_BROWSER_TEST_F(PPAPITest, test_name) { \
435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    }
455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(test_name) \
465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, test_name) { \
475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    }
495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Similar macros that test with an SSL server.
515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define TEST_PPAPI_IN_PROCESS_WITH_SSL_SERVER(test_name) \
525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    IN_PROC_BROWSER_TEST_F(PPAPITest, test_name) { \
535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    }
555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define TEST_PPAPI_OUT_OF_PROCESS_WITH_SSL_SERVER(test_name) \
565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, test_name) { \
575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    }
595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
602a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#if defined(DISABLE_NACL)
612a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define TEST_PPAPI_NACL(test_name)
622a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define TEST_PPAPI_NACL_DISALLOWED_SOCKETS(test_name)
632a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define TEST_PPAPI_NACL_WITH_SSL_SERVER(test_name)
642a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
652a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#elif defined(ARCH_CPU_ARM_FAMILY)
662a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// NaCl glibc tests are not included in ARM as there is no glibc support
672a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// on ARM today.
682a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define TEST_PPAPI_NACL(test_name) \
692a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, test_name) { \
702a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
712a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    } \
722a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, test_name) { \
732a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    }
755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
762a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define TEST_PPAPI_NACL_DISALLOWED_SOCKETS(test_name) \
772a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    IN_PROC_BROWSER_TEST_F(PPAPINaClTestDisallowedSockets, test_name) { \
782a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    }
802a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
812a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define TEST_PPAPI_NACL_WITH_SSL_SERVER(test_name) \
822a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, test_name) { \
832a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
842a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    } \
852a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, test_name) { \
862a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    }
885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#else
905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// NaCl based PPAPI tests
922a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define TEST_PPAPI_NACL(test_name) \
935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, test_name) { \
945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    } \
965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, test_name) { \
975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
982a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    } \
992a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, test_name) { \
1002a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
1015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    }
1025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// NaCl based PPAPI tests with disallowed socket API
1042a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define TEST_PPAPI_NACL_DISALLOWED_SOCKETS(test_name) \
1055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    IN_PROC_BROWSER_TEST_F(PPAPINaClTestDisallowedSockets, test_name) { \
1065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      RunTestViaHTTP(STRIP_PREFIXES(test_name)); \
1075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    }
1085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// NaCl based PPAPI tests with SSL server
1105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define TEST_PPAPI_NACL_WITH_SSL_SERVER(test_name) \
1115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, test_name) { \
1125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
1135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    } \
1145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, test_name) { \
1155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
1165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    } \
1172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, test_name) { \
1182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      RunTestWithSSLServer(STRIP_PREFIXES(test_name)); \
1195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    }
1205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif
1222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
1232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
1242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// NaCl glibc tests are not included in ARM as there is no glibc support
1252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// on ARM today.
1262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#if defined(ARCH_CPU_ARM_FAMILY)
1272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define MAYBE_GLIBC(test_name) DISABLED_##test_name
1282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#else
1292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define MAYBE_GLIBC(test_name) test_name
1305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
1315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//
1345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Interface tests.
1355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//
1365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Disable tests under ASAN.  http://crbug.com/104832.
1385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// This is a bit heavy handed, but the majority of these tests fail under ASAN.
1395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// See bug for history.
1405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if !defined(ADDRESS_SANITIZER)
1415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS(Broker)
1435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Flaky, http://crbug.com/111355
1445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(DISABLED_Broker)
1455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPIBrokerInfoBarTest, Accept) {
1475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  // Accepting the infobar should grant permission to access the PPAPI broker.
1485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  InfoBarObserver observer;
1495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  observer.ExpectInfoBarAndAccept(true);
1505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1512a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  // PPB_Broker_Trusted::IsAllowed should return false before the infobar is
1522a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  // popped and true after the infobar is popped.
1532a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTest("Broker_IsAllowedPermissionDenied");
1542a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTest("Broker_ConnectPermissionGranted");
1552a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTest("Broker_IsAllowedPermissionGranted");
1565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  // It should also set a content settings exception for the site.
1582a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  GURL url = GetTestFileUrl("Broker_ConnectPermissionGranted");
1595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  HostContentSettingsMap* content_settings =
1605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      browser()->profile()->GetHostContentSettingsMap();
1615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  EXPECT_EQ(CONTENT_SETTING_ALLOW,
1625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            content_settings->GetContentSetting(
1635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                url, url, CONTENT_SETTINGS_TYPE_PPAPI_BROKER, std::string()));
1645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
1655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPIBrokerInfoBarTest, Deny) {
1675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  // Canceling the infobar should deny permission to access the PPAPI broker.
1685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  InfoBarObserver observer;
1695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  observer.ExpectInfoBarAndAccept(false);
1705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1712a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  // PPB_Broker_Trusted::IsAllowed should return false before and after the
1722a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  // infobar is popped.
1732a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTest("Broker_IsAllowedPermissionDenied");
1742a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTest("Broker_ConnectPermissionDenied");
1752a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTest("Broker_IsAllowedPermissionDenied");
1765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  // It should also set a content settings exception for the site.
1782a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  GURL url = GetTestFileUrl("Broker_ConnectPermissionDenied");
1795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  HostContentSettingsMap* content_settings =
1805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      browser()->profile()->GetHostContentSettingsMap();
1815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  EXPECT_EQ(CONTENT_SETTING_BLOCK,
1825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            content_settings->GetContentSetting(
1835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                url, url, CONTENT_SETTINGS_TYPE_PPAPI_BROKER, std::string()));
1845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
1855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPIBrokerInfoBarTest, Blocked) {
1875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  // Block access to the PPAPI broker.
1885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  browser()->profile()->GetHostContentSettingsMap()->SetDefaultContentSetting(
1895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      CONTENT_SETTINGS_TYPE_PPAPI_BROKER, CONTENT_SETTING_BLOCK);
1905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  // We shouldn't see an infobar.
1925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  InfoBarObserver observer;
1935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  RunTest("Broker_ConnectPermissionDenied");
1952a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTest("Broker_IsAllowedPermissionDenied");
1965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
1975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPIBrokerInfoBarTest, Allowed) {
1995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  // Always allow access to the PPAPI broker.
2005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  browser()->profile()->GetHostContentSettingsMap()->SetDefaultContentSetting(
2015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      CONTENT_SETTINGS_TYPE_PPAPI_BROKER, CONTENT_SETTING_ALLOW);
2025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
2035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  // We shouldn't see an infobar.
2045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  InfoBarObserver observer;
2055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
2065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  RunTest("Broker_ConnectPermissionGranted");
2072a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTest("Broker_IsAllowedPermissionGranted");
2085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
2095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
2102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_IN_PROCESS(Console)
2112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(Console)
2122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(Console)
2132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
2145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS(Core)
2155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(Core)
2162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(Core)
2175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
218eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochTEST_PPAPI_IN_PROCESS(TraceEvent)
219eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochTEST_PPAPI_OUT_OF_PROCESS(TraceEvent)
220eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochTEST_PPAPI_NACL(TraceEvent)
221eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
2227d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)TEST_PPAPI_IN_PROCESS(InputEvent)
2237d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(InputEvent)
2247d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)TEST_PPAPI_NACL(InputEvent)
2255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
2265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Flaky on Linux and Windows. http://crbug.com/135403
2275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(OS_LINUX) || defined(OS_WIN)
2285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define MAYBE_ImeInputEvent DISABLED_ImeInputEvent
2295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#else
2305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define MAYBE_ImeInputEvent ImeInputEvent
2315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
2325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
2335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS(MAYBE_ImeInputEvent)
2345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(MAYBE_ImeInputEvent)
2357d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)TEST_PPAPI_NACL(MAYBE_ImeInputEvent)
2365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
237ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch// "Instance" tests are really InstancePrivate tests. InstancePrivate is not
238ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch// supported in NaCl, so these tests are only run trusted.
239ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch// Also note that these tests are run separately on purpose (versus collapsed
240ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch// in to one IN_PROC_BROWSER_TEST_F macro), because some of them have leaks
241ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch// on purpose that will look like failures to tests that are run later.
2425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS(Instance_ExecuteScript);
2435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(Instance_ExecuteScript)
2445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
2455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// We run and reload the RecursiveObjects test to ensure that the InstanceObject
2465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// (and others) are properly cleaned up after the first run.
2475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPITest, Instance_RecursiveObjects) {
2485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  RunTestAndReload("Instance_RecursiveObjects");
2495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
2505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// TODO(dmichael): Make it work out-of-process (or at least see whether we
2515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//                 care).
2525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,
2535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                       DISABLED_Instance_RecursiveObjects) {
2545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  RunTestAndReload("Instance_RecursiveObjects");
2555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
2565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS(Instance_LeakedObjectDestructors);
2575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(Instance_LeakedObjectDestructors);
258ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
259ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben MurdochIN_PROC_BROWSER_TEST_F(PPAPITest,
260ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch                       Instance_ExecuteScriptAtInstanceShutdown) {
261ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  // In other tests, we use one call to RunTest so that the tests can all run
262ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  // in one plugin instance. This saves time on loading the plugin (especially
263ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  // for NaCl). Here, we actually want to destroy the Instance, to test whether
264ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  // the destructor can run ExecuteScript successfully. That's why we have two
265ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  // separate calls to RunTest; the second one forces a navigation which
266ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  // destroys the instance from the prior RunTest.
267ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  // See test_instance_deprecated.cc for more information.
268ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  RunTest("Instance_SetupExecuteScriptAtInstanceShutdown");
269ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  RunTest("Instance_ExecuteScriptAtInstanceShutdown");
270ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch}
271ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben MurdochIN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest,
272ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch                       Instance_ExecuteScriptAtInstanceShutdown) {
273ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  // (See the comment for the in-process version of this test above)
274ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  RunTest("Instance_SetupExecuteScriptAtInstanceShutdown");
275ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  RunTest("Instance_ExecuteScriptAtInstanceShutdown");
276ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch}
2775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
2785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS(Graphics2D)
2795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(Graphics2D)
2805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Graphics2D_Dev isn't supported in NaCl, only test the other interfaces
2815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// TODO(jhorwich) Enable when Graphics2D_Dev interfaces are proxied in NaCl.
2822a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(Graphics2D_InvalidResource)
2832a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(Graphics2D_InvalidSize)
2842a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(Graphics2D_Humongous)
2852a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(Graphics2D_InitToZero)
2862a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(Graphics2D_Describe)
2872a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(Graphics2D_Paint)
2882a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(Graphics2D_Scroll)
2892a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(Graphics2D_Replace)
2902a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(Graphics2D_Flush)
2912a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(Graphics2D_FlushOffscreenUpdate)
2922a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(Graphics2D_BindNull)
2932a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
2942a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#if defined(OS_WIN) && !defined(USE_AURA)
2952a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// These tests fail with the test compositor which is what's used by default for
2962a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// browser tests on Windows Aura. Renable when the software compositor is
2972a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// available.
29890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// In-process and NaCl tests are having flaky failures on Win: crbug.com/242252
29990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)TEST_PPAPI_IN_PROCESS(DISABLED_Graphics3D)
3005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(Graphics3D)
30190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)TEST_PPAPI_NACL(DISABLED_Graphics3D)
3022a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif
3035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
3045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS(ImageData)
3055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(ImageData)
3062a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(ImageData)
3075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
3085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS(BrowserFont)
3095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(BrowserFont)
3105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
3115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS(Buffer)
3125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(Buffer)
3135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
3147d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// TCPSocket tests.
3157d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, TCPSocket) {
3167d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  RunTestViaHTTP(
3177d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(TCPSocket_Connect)
3187d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(TCPSocket_ReadWrite)
3197d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(TCPSocket_SetOption)
3207d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  );
3217d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)}
3227d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, TCPSocket) {
3237d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  RunTestViaHTTP(
3247d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(TCPSocket_Connect)
3257d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(TCPSocket_ReadWrite)
3267d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(TCPSocket_SetOption)
3277d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  );
3287d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)}
3297d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(TCPSocket)) {
3307d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  RunTestViaHTTP(
3317d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(TCPSocket_Connect)
3327d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(TCPSocket_ReadWrite)
3337d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(TCPSocket_SetOption)
3347d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  );
3357d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)}
3367d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, TCPSocket) {
3377d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  RunTestViaHTTP(
3387d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(TCPSocket_Connect)
3397d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(TCPSocket_ReadWrite)
3407d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(TCPSocket_SetOption)
3417d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  );
3427d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)}
3437d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)
3442a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS_WITH_SSL_SERVER(TCPSocketPrivate)
3452a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_IN_PROCESS_WITH_SSL_SERVER(TCPSocketPrivate)
3462a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL_WITH_SSL_SERVER(TCPSocketPrivate)
3475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
3485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS_WITH_SSL_SERVER(TCPSocketPrivateTrusted)
3495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS_WITH_SSL_SERVER(TCPSocketPrivateTrusted)
3505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
3517d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// UDPSocket tests.
3527d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// UDPSocket_Broadcast is disabled for OSX because it requires root permissions
3537d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// on OSX 10.7+.
3547d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, UDPSocket) {
3557d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  RunTestViaHTTP(
3567d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(UDPSocket_ReadWrite)
3577d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(UDPSocket_SetOption)
3587d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)#if !defined(OS_MACOSX)
3597d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(UDPSocket_Broadcast)
3607d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)#endif
3617d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  );
3627d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)}
3637d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, UDPSocket) {
3647d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  RunTestViaHTTP(
3657d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(UDPSocket_ReadWrite)
3667d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(UDPSocket_SetOption)
3677d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)#if !defined(OS_MACOSX)
3687d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(UDPSocket_Broadcast)
3697d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)#endif
3707d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  );
3717d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)}
3727d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(UDPSocket)) {
3737d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  RunTestViaHTTP(
3747d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(UDPSocket_ReadWrite)
3757d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(UDPSocket_SetOption)
3767d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)#if !defined(OS_MACOSX)
3777d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(UDPSocket_Broadcast)
3787d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)#endif
3797d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  );
3807d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)}
3817d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, UDPSocket) {
3827d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  RunTestViaHTTP(
3837d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(UDPSocket_ReadWrite)
3847d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(UDPSocket_SetOption)
3857d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)#if !defined(OS_MACOSX)
3867d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(UDPSocket_Broadcast)
3877d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)#endif
3887d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  );
3897d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)}
3907d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)
3915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// UDPSocketPrivate tests.
3925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// UDPSocketPrivate_Broadcast is disabled for OSX because it requires
3935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// root permissions on OSX 10.7+.
3945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(UDPSocketPrivate_Connect)
3955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(UDPSocketPrivate_ConnectFailure)
3965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if !defined(OS_MACOSX)
3975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(UDPSocketPrivate_Broadcast)
3985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif  // !defined(OS_MACOSX)
3995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(UDPSocketPrivate_SetSocketFeatureErrors)
4002a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(UDPSocketPrivate_Connect)
4012a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(UDPSocketPrivate_ConnectFailure)
4025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if !defined(OS_MACOSX)
4032a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(UDPSocketPrivate_Broadcast)
4045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif  // !defined(OS_MACOSX)
4052a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(UDPSocketPrivate_SetSocketFeatureErrors)
4065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4072a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL_DISALLOWED_SOCKETS(HostResolverPrivateDisallowed)
4082a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL_DISALLOWED_SOCKETS(TCPServerSocketPrivateDisallowed)
4092a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL_DISALLOWED_SOCKETS(TCPSocketPrivateDisallowed)
4102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL_DISALLOWED_SOCKETS(UDPSocketPrivateDisallowed)
4115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(TCPServerSocketPrivate)
4132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(TCPServerSocketPrivate)
4145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4157d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// HostResolver tests.
4167d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, HostResolver) {
4177d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  RunTestViaHTTP(
4187d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(HostResolver_Empty)
4197d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(HostResolver_Resolve)
4207d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(HostResolver_ResolveIPv4)
4217d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  );
4227d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)}
4237d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, HostResolver) {
4247d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  RunTestViaHTTP(
4257d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(HostResolver_Empty)
4267d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(HostResolver_Resolve)
4277d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(HostResolver_ResolveIPv4)
4287d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  );
4297d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)}
4307d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(HostResolver)) {
4317d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  RunTestViaHTTP(
4327d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(HostResolver_Empty)
4337d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(HostResolver_Resolve)
4347d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(HostResolver_ResolveIPv4)
4357d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  );
4367d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)}
4377d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, HostResolver) {
4387d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  RunTestViaHTTP(
4397d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(HostResolver_Empty)
4407d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(HostResolver_Resolve)
4417d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      LIST_TEST(HostResolver_ResolveIPv4)
4427d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  );
4437d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)}
4447d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)
4455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(HostResolverPrivate_Resolve)
4465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(HostResolverPrivate_ResolveIPv4)
4472a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(HostResolverPrivate_Resolve)
4482a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(HostResolverPrivate_ResolveIPv4)
4495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// URLLoader tests.
4512a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPITest, URLLoader) {
4522a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
4532a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BasicGET)
4542a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BasicPOST)
4552a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BasicFilePOST)
4562a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BasicFileRangePOST)
4572a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_CompoundBodyPOST)
4582a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_EmptyDataPOST)
4592a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BinaryDataPOST)
4602a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_CustomRequestHeader)
4612a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_FailsBogusContentLength)
4622a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_StreamToFile)
4632a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntrustedSameOriginRestriction)
4642a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_TrustedSameOriginRestriction)
4652a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntrustedCrossOriginRequest)
4662a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_TrustedCrossOriginRequest)
4672a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntrustedJavascriptURLRestriction)
4682a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      // TODO(bbudge) Fix Javascript URLs for trusted loaders.
4692a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      // http://crbug.com/103062
4702a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(DISABLED_URLLoader_TrustedJavascriptURLRestriction)
4712a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntrustedHttpRequests)
4722a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_TrustedHttpRequests)
4732a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_FollowURLRedirect)
4742a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_AuditURLRedirect)
4752a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_AbortCalls)
4762a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntendedLoad)
4772a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_PrefetchBufferThreshold)
4782a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
4792a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
4802a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, URLLoader) {
4812a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
4822a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BasicGET)
4832a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BasicPOST)
4842a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BasicFilePOST)
4852a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BasicFileRangePOST)
4862a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_CompoundBodyPOST)
4872a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_EmptyDataPOST)
4882a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BinaryDataPOST)
4892a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_CustomRequestHeader)
4902a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_FailsBogusContentLength)
4912a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_StreamToFile)
4922a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntrustedSameOriginRestriction)
4932a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_TrustedSameOriginRestriction)
4942a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntrustedCrossOriginRequest)
4952a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_TrustedCrossOriginRequest)
4962a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntrustedJavascriptURLRestriction)
4972a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      // TODO(bbudge) Fix Javascript URLs for trusted loaders.
4982a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      // http://crbug.com/103062
4992a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(DISABLED_URLLoader_TrustedJavascriptURLRestriction)
5002a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntrustedHttpRequests)
5012a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_TrustedHttpRequests)
5022a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_FollowURLRedirect)
5032a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_AuditURLRedirect)
5042a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_AbortCalls)
5052a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntendedLoad)
5062a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_PrefetchBufferThreshold)
5072a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
5082a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
5092a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, URLLoader) {
5102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
5112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BasicGET)
5122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BasicPOST)
5132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BasicFilePOST)
5142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BasicFileRangePOST)
5152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_CompoundBodyPOST)
5162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_EmptyDataPOST)
5172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BinaryDataPOST)
5182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_CustomRequestHeader)
5192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_FailsBogusContentLength)
5202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_StreamToFile)
5212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntrustedSameOriginRestriction)
5222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      // We don't support Trusted APIs in NaCl.
5232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(DISABLED_URLLoader_TrustedSameOriginRestriction)
5242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntrustedCrossOriginRequest)
5252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(DISABLED_URLLoader_TrustedCrossOriginRequest)
5262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntrustedJavascriptURLRestriction)
5272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      // TODO(bbudge) Fix Javascript URLs for trusted loaders.
5282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      // http://crbug.com/103062
5292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(DISABLED_URLLoader_TrustedJavascriptURLRestriction)
5302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntrustedHttpRequests)
5312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(DISABLED_URLLoader_TrustedHttpRequests)
5322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_FollowURLRedirect)
5332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_AuditURLRedirect)
5342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_AbortCalls)
5352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntendedLoad)
5362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_PrefetchBufferThreshold)
5372a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
5382a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
539c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(URLLoader)) {
5402a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
5412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BasicGET)
5422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BasicPOST)
5432a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BasicFilePOST)
5442a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BasicFileRangePOST)
5452a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_CompoundBodyPOST)
5462a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_EmptyDataPOST)
5472a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BinaryDataPOST)
5482a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_CustomRequestHeader)
5492a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_FailsBogusContentLength)
5502a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_StreamToFile)
5512a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntrustedSameOriginRestriction)
5522a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      // We don't support Trusted APIs in NaCl.
5532a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(DISABLED_URLLoader_TrustedSameOriginRestriction)
5542a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntrustedCrossOriginRequest)
5552a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(DISABLED_URLLoader_TrustedCrossOriginRequest)
5562a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntrustedJavascriptURLRestriction)
5572a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      // TODO(bbudge) Fix Javascript URLs for trusted loaders.
5582a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      // http://crbug.com/103062
5592a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(DISABLED_URLLoader_TrustedJavascriptURLRestriction)
5602a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntrustedHttpRequests)
5612a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(DISABLED_URLLoader_TrustedHttpRequests)
5622a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_FollowURLRedirect)
5632a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_AuditURLRedirect)
5642a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_AbortCalls)
5652a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntendedLoad)
5662a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_PrefetchBufferThreshold)
5672a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
5682a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
5692a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, URLLoader) {
5702a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
5712a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BasicGET)
5722a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BasicPOST)
5732a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BasicFilePOST)
5742a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BasicFileRangePOST)
5752a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_CompoundBodyPOST)
5762a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_EmptyDataPOST)
5772a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_BinaryDataPOST)
5782a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_CustomRequestHeader)
5792a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_FailsBogusContentLength)
5802a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_StreamToFile)
5812a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntrustedSameOriginRestriction)
5822a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      // We don't support Trusted APIs in NaCl.
5832a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(DISABLED_URLLoader_TrustedSameOriginRestriction)
5842a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntrustedCrossOriginRequest)
5852a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(DISABLED_URLLoader_TrustedCrossOriginRequest)
5862a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntrustedJavascriptURLRestriction)
5872a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      // TODO(bbudge) Fix Javascript URLs for trusted loaders.
5882a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      // http://crbug.com/103062
5892a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(DISABLED_URLLoader_TrustedJavascriptURLRestriction)
5902a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntrustedHttpRequests)
5912a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(DISABLED_URLLoader_TrustedHttpRequests)
5922a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_FollowURLRedirect)
5932a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_AuditURLRedirect)
5942a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_AbortCalls)
5952a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_UntendedLoad)
5962a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(URLLoader_PrefetchBufferThreshold)
5972a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
5982a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
5995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// URLRequestInfo tests.
6015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLRequest_CreateAndIsURLRequestInfo)
6025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLRequest_CreateAndIsURLRequestInfo)
6035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Timing out on Windows. http://crbug.com/129571
6055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(OS_WIN)
6065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define MAYBE_URLRequest_CreateAndIsURLRequestInfo \
6072a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  DISABLED_URLRequest_CreateAndIsURLRequestInfo
6085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#else
6095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define MAYBE_URLRequest_CreateAndIsURLRequestInfo \
6105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    URLRequest_CreateAndIsURLRequestInfo
6115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
6122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(MAYBE_URLRequest_CreateAndIsURLRequestInfo)
6135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLRequest_SetProperty)
6155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLRequest_SetProperty)
6162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// http://crbug.com/167150
6172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(DISABLED_URLRequest_SetProperty)
6185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLRequest_AppendDataToBody)
6195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLRequest_AppendDataToBody)
6202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(URLRequest_AppendDataToBody)
6217dbb3d5cf0c15f500944d211057644d6a2f37371Ben MurdochTEST_PPAPI_IN_PROCESS_VIA_HTTP(URLRequest_AppendFileToBody)
6227dbb3d5cf0c15f500944d211057644d6a2f37371Ben MurdochTEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLRequest_AppendFileToBody)
6237dbb3d5cf0c15f500944d211057644d6a2f37371Ben MurdochTEST_PPAPI_NACL(URLRequest_AppendFileToBody)
6245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS_VIA_HTTP(URLRequest_Stress)
6255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(URLRequest_Stress)
6262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(URLRequest_Stress)
6275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS(PaintAggregator)
6295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(PaintAggregator)
6302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(PaintAggregator)
6315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// TODO(danakj): http://crbug.com/115286
6335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS(DISABLED_Scrollbar)
6345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// http://crbug.com/89961
6355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, DISABLED_Scrollbar) {
6365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  RunTest("Scrollbar");
6375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
6385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// TODO(danakj): http://crbug.com/115286
6392a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(DISABLED_Scrollbar)
6405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS(URLUtil)
6425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(URLUtil)
6435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS(CharSet)
6455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(CharSet)
6465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS(Crypto)
6485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(Crypto)
6495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS(Var)
6515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(Var)
6522a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(Var)
6535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Flaky on mac, http://crbug.com/121107
6555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(OS_MACOSX)
6565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define MAYBE_VarDeprecated DISABLED_VarDeprecated
6575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#else
6585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define MAYBE_VarDeprecated VarDeprecated
6595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
6605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS(VarDeprecated)
6625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(MAYBE_VarDeprecated)
6635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Windows defines 'PostMessage', so we have to undef it.
6655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifdef PostMessage
6665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#undef PostMessage
6675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
6682a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// PostMessage tests.
6692a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPITest, PostMessage) {
6702a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
6712a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_SendInInit)
6722a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_SendingData)
6732a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_SendingArrayBuffer)
67490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      LIST_TEST(DISABLED_PostMessage_SendingArray)
67590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      LIST_TEST(DISABLED_PostMessage_SendingDictionary)
67690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      LIST_TEST(DISABLED_PostMessage_SendingComplexVar)
6772a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_MessageEvent)
6782a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_NoHandler)
6792a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_ExtraParam)
6802a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
6812a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
682bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch
683bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch// Flaky: crbug.com/269530
684bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch#if defined(OS_WIN)
685bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch#define MAYBE_PostMessage DISABLED_PostMessage
686bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch#else
687bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch#define MAYBE_PostMessage PostMessage
688bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch#endif
689bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben MurdochIN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, MAYBE_PostMessage) {
6902a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
6912a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_SendInInit)
6922a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_SendingData)
6932a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_SendingArrayBuffer)
69490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      LIST_TEST(PostMessage_SendingArray)
69590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      LIST_TEST(PostMessage_SendingDictionary)
69690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      LIST_TEST(PostMessage_SendingComplexVar)
6972a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_MessageEvent)
6982a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_NoHandler)
6992a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_ExtraParam)
7002a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_NonMainThread)
7012a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
7022a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
7032a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, PostMessage) {
7042a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
7052a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_SendInInit)
7062a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_SendingData)
7072a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_SendingArrayBuffer)
70890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      LIST_TEST(PostMessage_SendingArray)
70990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      LIST_TEST(PostMessage_SendingDictionary)
71090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      LIST_TEST(PostMessage_SendingComplexVar)
7112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_MessageEvent)
7122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_NoHandler)
7132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_ExtraParam)
7142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_NonMainThread)
7152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
7162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
7172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(PostMessage)) {
7182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
7192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_SendInInit)
7202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_SendingData)
7212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_SendingArrayBuffer)
72290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      LIST_TEST(PostMessage_SendingArray)
72390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      LIST_TEST(PostMessage_SendingDictionary)
72490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      LIST_TEST(PostMessage_SendingComplexVar)
7252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_MessageEvent)
7262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_NoHandler)
7272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_ExtraParam)
7282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_NonMainThread)
7292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
7302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
7312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, PostMessage) {
7322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
7332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_SendInInit)
7342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_SendingData)
7352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_SendingArrayBuffer)
73690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      LIST_TEST(PostMessage_SendingArray)
73790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      LIST_TEST(PostMessage_SendingDictionary)
73890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      LIST_TEST(PostMessage_SendingComplexVar)
7392a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_MessageEvent)
7402a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_NoHandler)
7412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_ExtraParam)
7422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(PostMessage_NonMainThread)
7432a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
7442a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
7455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
7465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS(Memory)
7475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(Memory)
7482a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(Memory)
7495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
7505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS(VideoDecoder)
7515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(VideoDecoder)
7525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
7532a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// FileIO tests.
7542a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPITest, FileIO) {
7552a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
7562a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_Open)
7572a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_OpenDirectory)
7582a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_AbortCalls)
7592a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_ParallelReads)
7602a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_ParallelWrites)
7612a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_NotAllowMixedReadWrite)
7622a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_ReadWriteSetLength)
7632a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_ReadToArrayWriteSetLength)
7642a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_TouchQuery)
7652a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_WillWriteWillSetLength)
766c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      LIST_TEST(FileIO_RequestOSFileHandle)
767868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      LIST_TEST(FileIO_RequestOSFileHandleWithOpenExclusive)
768a93a17c8d99d686bd4a1511e5504e5e6cc9fcadfTorne (Richard Coles)      LIST_TEST(FileIO_Mmap)
7692a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
7702a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
7712a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, FileIO) {
7722a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
7732a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_Open)
7742a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_AbortCalls)
7752a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_ParallelReads)
7762a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_ParallelWrites)
7772a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_NotAllowMixedReadWrite)
7782a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_ReadWriteSetLength)
7792a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_ReadToArrayWriteSetLength)
7802a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_TouchQuery)
7812a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_WillWriteWillSetLength)
782c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      LIST_TEST(FileIO_RequestOSFileHandle)
783868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      LIST_TEST(FileIO_RequestOSFileHandleWithOpenExclusive)
784a93a17c8d99d686bd4a1511e5504e5e6cc9fcadfTorne (Richard Coles)      LIST_TEST(FileIO_Mmap)
7852a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
7862a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
7872a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, FileIO) {
7882a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
7892a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_Open)
7902a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_AbortCalls)
7912a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_ParallelReads)
7922a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_ParallelWrites)
7932a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_NotAllowMixedReadWrite)
7942a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_ReadWriteSetLength)
7952a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_ReadToArrayWriteSetLength)
7962a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_TouchQuery)
7972a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      // The following test requires PPB_FileIO_Trusted, not available in NaCl.
7982a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(DISABLED_FileIO_WillWriteWillSetLength)
799c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      LIST_TEST(FileIO_RequestOSFileHandle)
800868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      LIST_TEST(FileIO_RequestOSFileHandleWithOpenExclusive)
801a93a17c8d99d686bd4a1511e5504e5e6cc9fcadfTorne (Richard Coles)      LIST_TEST(FileIO_Mmap)
8022a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
8032a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
8042a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(FileIO)) {
8052a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
8062a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_Open)
8072a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_AbortCalls)
8082a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_ParallelReads)
8092a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_ParallelWrites)
8102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_NotAllowMixedReadWrite)
8112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_ReadWriteSetLength)
8122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_ReadToArrayWriteSetLength)
8132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_TouchQuery)
8142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      // The following test requires PPB_FileIO_Trusted, not available in NaCl.
8152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(DISABLED_FileIO_WillWriteWillSetLength)
816c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      LIST_TEST(FileIO_RequestOSFileHandle)
817868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      LIST_TEST(FileIO_RequestOSFileHandleWithOpenExclusive)
818a93a17c8d99d686bd4a1511e5504e5e6cc9fcadfTorne (Richard Coles)      LIST_TEST(FileIO_Mmap)
8192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
8202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
8212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, FileIO) {
8222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
8232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_Open)
8242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_AbortCalls)
8252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_ParallelReads)
8262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_ParallelWrites)
8272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_NotAllowMixedReadWrite)
8282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_ReadWriteSetLength)
8292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_ReadToArrayWriteSetLength)
8302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(FileIO_TouchQuery)
8312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      // The following test requires PPB_FileIO_Trusted, not available in NaCl.
8322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(DISABLED_FileIO_WillWriteWillSetLength)
833c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      LIST_TEST(FileIO_RequestOSFileHandle)
834868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      LIST_TEST(FileIO_RequestOSFileHandleWithOpenExclusive)
835a93a17c8d99d686bd4a1511e5504e5e6cc9fcadfTorne (Richard Coles)      LIST_TEST(FileIO_Mmap)
8362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
8372a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
8385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
839eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIN_PROC_BROWSER_TEST_F(PPAPITest, FileRef) {
840eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch  RunTestViaHTTP(
841eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      LIST_TEST(FileRef_Create)
842eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      LIST_TEST(FileRef_GetFileSystemType)
843eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      LIST_TEST(FileRef_GetName)
844eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      LIST_TEST(FileRef_GetPath)
845eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      LIST_TEST(FileRef_GetParent)
846eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      LIST_TEST(FileRef_MakeDirectory)
847eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      LIST_TEST(FileRef_QueryAndTouchFile)
848eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      LIST_TEST(FileRef_DeleteFileAndDirectory)
849eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      LIST_TEST(FileRef_RenameFileAndDirectory)
850eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      // TODO(teravest): Add in-process support.
851eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      // LIST_TEST(FileRef_Query)
852eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      LIST_TEST(FileRef_FileNameEscaping)
853eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      // TODO(teravest): Add in-process support.
854eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      // LIST_TEST(FileRef_ReadDirectoryEntries)
855eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch  );
856eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch}
85790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// OutOfProcessPPAPITest.FileRef times out fairly often.
85890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// http://crbug.com/241646
859eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, FileRef) {
860eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch  RunTestViaHTTP(
861eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      LIST_TEST(FileRef_Create)
862eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      LIST_TEST(FileRef_GetFileSystemType)
863eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      LIST_TEST(FileRef_GetName)
864eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      LIST_TEST(FileRef_GetPath)
865eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      LIST_TEST(FileRef_GetParent)
866eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      LIST_TEST(FileRef_MakeDirectory)
867eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      LIST_TEST(FileRef_QueryAndTouchFile)
868eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      LIST_TEST(FileRef_DeleteFileAndDirectory)
869eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      LIST_TEST(FileRef_RenameFileAndDirectory)
870eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      LIST_TEST(FileRef_Query)
871eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      LIST_TEST(FileRef_FileNameEscaping)
872eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      LIST_TEST(DISABLED_FileRef_ReadDirectoryEntries)
873eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch  );
874eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch}
875b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, FileRef) {
876b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)  RunTestViaHTTP(
877b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_Create)
878b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_GetFileSystemType)
879b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_GetName)
880b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_GetPath)
881b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_GetParent)
882b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_MakeDirectory)
883b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_QueryAndTouchFile)
884b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_DeleteFileAndDirectory)
885b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_RenameFileAndDirectory)
886b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_Query)
887b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_FileNameEscaping)
888b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(DISABLED_FileRef_ReadDirectoryEntries)
889b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)  );
890b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)}
89190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(FileRef)) {
892b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)  RunTestViaHTTP(
893b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_Create)
894b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_GetFileSystemType)
895b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_GetName)
896b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_GetPath)
897b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_GetParent)
898b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_MakeDirectory)
899b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_QueryAndTouchFile)
900b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_DeleteFileAndDirectory)
901b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_RenameFileAndDirectory)
902b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_Query)
903b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_FileNameEscaping)
904b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(DISABLED_FileRef_ReadDirectoryEntries)
905b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)  );
906b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)}
907b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, FileRef) {
908b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)  RunTestViaHTTP(
909b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_Create)
910b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_GetFileSystemType)
911b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_GetName)
912b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_GetPath)
913b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_GetParent)
914b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_MakeDirectory)
915b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_QueryAndTouchFile)
916b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_DeleteFileAndDirectory)
917b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_RenameFileAndDirectory)
918b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_Query)
919b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(FileRef_FileNameEscaping)
920b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      LIST_TEST(DISABLED_FileRef_ReadDirectoryEntries)
921b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)  );
922b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)}
9235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
9245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS_VIA_HTTP(FileSystem)
9255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(FileSystem)
9265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
9275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPAPINaClTest.FileSystem times out consistently on Windows and Mac.
9285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// http://crbug.com/130372
9295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(OS_MACOSX) || defined(OS_WIN)
9305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define MAYBE_FileSystem DISABLED_FileSystem
9315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#else
9325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define MAYBE_FileSystem FileSystem
9335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
9345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
9352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(MAYBE_FileSystem)
9365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
9375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(OS_MACOSX)
9385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// http://crbug.com/103912
9395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define MAYBE_Fullscreen DISABLED_Fullscreen
9405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#elif defined(OS_LINUX)
9415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// http://crbug.com/146008
9425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define MAYBE_Fullscreen DISABLED_Fullscreen
9435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#else
9445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define MAYBE_Fullscreen Fullscreen
9455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
9465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
9475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS_VIA_HTTP(MAYBE_Fullscreen)
9485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS_VIA_HTTP(MAYBE_Fullscreen)
9492a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(MAYBE_Fullscreen)
9505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
9515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS(X509CertificatePrivate)
9525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(X509CertificatePrivate)
9535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
9545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// There is no proxy. This is used for PDF metrics reporting, and PDF only
9555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// runs in process, so there's currently no need for a proxy.
9565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS(UMA)
9575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
9582a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// NetAddress tests
959868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, NetAddress) {
960868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)  RunTestViaHTTP(
961868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      LIST_TEST(NetAddress_IPv4Address)
962868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      LIST_TEST(NetAddress_IPv6Address)
963868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      LIST_TEST(NetAddress_DescribeAsString)
964868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)  );
965868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)}
966868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, NetAddress) {
967868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)  RunTestViaHTTP(
968868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      LIST_TEST(NetAddress_IPv4Address)
969868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      LIST_TEST(NetAddress_IPv6Address)
970868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      LIST_TEST(NetAddress_DescribeAsString)
971868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)  );
972868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)}
973868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(NetAddress)) {
974868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)  RunTestViaHTTP(
975868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      LIST_TEST(NetAddress_IPv4Address)
976868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      LIST_TEST(NetAddress_IPv6Address)
977868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      LIST_TEST(NetAddress_DescribeAsString)
978868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)  );
979868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)}
980868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, NetAddress) {
981868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)  RunTestViaHTTP(
982868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      LIST_TEST(NetAddress_IPv4Address)
983868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      LIST_TEST(NetAddress_IPv6Address)
984868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      LIST_TEST(NetAddress_DescribeAsString)
985868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)  );
986868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)}
987868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)
988868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPITest, NetAddressPrivate) {
9892a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
9902a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivate_AreEqual)
9912a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivate_AreHostsEqual)
9922a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivate_Describe)
9932a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivate_ReplacePort)
9942a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivate_GetAnyAddress)
9952a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivate_DescribeIPv6)
9962a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivate_GetFamily)
9972a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivate_GetPort)
9982a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivate_GetAddress)
9992a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivate_GetScopeID)
10002a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
10012a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
1002868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, NetAddressPrivate) {
10032a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
10042a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivate_AreEqual)
10052a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivate_AreHostsEqual)
10062a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivate_Describe)
10072a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivate_ReplacePort)
10082a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivate_GetAnyAddress)
10092a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivate_DescribeIPv6)
10102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivate_GetFamily)
10112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivate_GetPort)
10122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivate_GetAddress)
10132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivate_GetScopeID)
10142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
10152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
1016868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, NetAddressPrivate) {
10172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
10182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_AreEqual)
10192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_AreHostsEqual)
10202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_Describe)
10212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_ReplacePort)
10222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_GetAnyAddress)
10232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_GetFamily)
10242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_GetPort)
10252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_GetAddress)
10262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
10272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
1028868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(NetAddressPrivate)) {
10292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
10302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_AreEqual)
10312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_AreHostsEqual)
10322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_Describe)
10332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_ReplacePort)
10342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_GetAnyAddress)
10352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_GetFamily)
10362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_GetPort)
10372a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_GetAddress)
10382a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
10392a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
1040868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, NetAddressPrivate) {
10412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
10422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_AreEqual)
10432a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_AreHostsEqual)
10442a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_Describe)
10452a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_ReplacePort)
10462a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_GetAnyAddress)
10472a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_GetFamily)
10482a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_GetPort)
10492a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetAddressPrivateUntrusted_GetAddress)
10502a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
10512a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
10522a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
10532a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// NetworkMonitor tests.
10542a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPITest, NetworkMonitor) {
10552a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
10562a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetworkMonitorPrivate_Basic)
10572a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetworkMonitorPrivate_2Monitors)
10582a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetworkMonitorPrivate_DeleteInCallback)
10592a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetworkMonitorPrivate_ListObserver)
10602a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
10612a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
10622a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, NetworkMonitor) {
10632a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
10642a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetworkMonitorPrivate_Basic)
10652a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetworkMonitorPrivate_2Monitors)
10662a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetworkMonitorPrivate_DeleteInCallback)
10672a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetworkMonitorPrivate_ListObserver)
10682a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
10692a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
10702a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, NetworkMonitor) {
10712a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
10722a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetworkMonitorPrivate_Basic)
10732a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetworkMonitorPrivate_2Monitors)
10742a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetworkMonitorPrivate_DeleteInCallback)
10752a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetworkMonitorPrivate_ListObserver)
10762a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
10772a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
10782a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(NetworkMonitor)) {
10792a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
10802a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetworkMonitorPrivate_Basic)
10812a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetworkMonitorPrivate_2Monitors)
10822a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetworkMonitorPrivate_DeleteInCallback)
10832a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetworkMonitorPrivate_ListObserver)
10842a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
10852a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
10862a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, NetworkMonitor) {
10872a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
10882a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetworkMonitorPrivate_Basic)
10892a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetworkMonitorPrivate_2Monitors)
10902a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetworkMonitorPrivate_DeleteInCallback)
10912a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(NetworkMonitorPrivate_ListObserver)
10922a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
10932a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
10942a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
10952a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Flash tests.
10962a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPITest, Flash) {
10972a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
10982a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(Flash_SetInstanceAlwaysOnTop)
10992a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(Flash_GetCommandLineArgs)
11002a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
11012a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
11022a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, Flash) {
11032a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
11042a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(Flash_SetInstanceAlwaysOnTop)
11052a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(Flash_GetCommandLineArgs)
11062a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  );
11072a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
11082a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
11092a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// In-process WebSocket tests
11102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPITest, WebSocket) {
11112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestWithWebSocketServer(
11122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_IsWebSocket)
11132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UninitializedPropertiesAccess)
11142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_InvalidConnect)
11152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_Protocols)
11162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_GetURL)
11172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_ValidConnect)
11182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_InvalidClose)
11192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_ValidClose)
11202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_GetProtocol)
11212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_TextSendReceive)
11222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_BinarySendReceive)
11232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_StressedSendReceive)
11242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_BufferedAmount)
11252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_AbortCallsWithCallback)
11262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_AbortSendMessageCall)
11272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_AbortCloseCall)
11282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_AbortReceiveMessageCall)
11292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_CcInterfaces)
11302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityInvalidConnect)
11312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityProtocols)
11322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityGetURL)
11332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityValidConnect)
11342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityInvalidClose)
11352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityValidClose)
11362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityGetProtocol)
11372a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityTextSendReceive)
11382a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityBinarySendReceive)
11392a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityBufferedAmount));
11402a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
11412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
11422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Out-of-process WebSocket tests
11432a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, WebSocket) {
11442a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestWithWebSocketServer(
11452a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_IsWebSocket)
11462a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UninitializedPropertiesAccess)
11472a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_InvalidConnect)
11482a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_Protocols)
11492a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_GetURL)
11502a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_ValidConnect)
11512a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_InvalidClose)
11522a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_ValidClose)
11532a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_GetProtocol)
11542a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_TextSendReceive)
11552a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_BinarySendReceive)
11562a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_StressedSendReceive)
11572a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_BufferedAmount)
11582a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_AbortCallsWithCallback)
11592a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_AbortSendMessageCall)
11602a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_AbortCloseCall)
11612a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_AbortReceiveMessageCall)
11622a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_CcInterfaces)
11632a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityInvalidConnect)
11642a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityProtocols)
11652a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityGetURL)
11662a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityValidConnect)
11672a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityInvalidClose)
11682a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityValidClose)
11692a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityGetProtocol)
11702a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityTextSendReceive)
11712a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityBinarySendReceive)
11722a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityBufferedAmount));
11732a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
11742a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
11752a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// NaClNewlib WebSocket tests
11762a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, WebSocket) {
11772a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestWithWebSocketServer(
11782a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_IsWebSocket)
11792a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UninitializedPropertiesAccess)
11802a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_InvalidConnect)
11812a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_Protocols)
11822a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_GetURL)
11832a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_ValidConnect)
11842a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_InvalidClose)
11852a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_ValidClose)
11862a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_GetProtocol)
11872a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_TextSendReceive)
11882a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_BinarySendReceive)
11892a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_StressedSendReceive)
11902a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_BufferedAmount)
11912a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_AbortCallsWithCallback)
11922a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_AbortSendMessageCall)
11932a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_AbortCloseCall)
11942a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_AbortReceiveMessageCall)
11952a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_CcInterfaces)
11962a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityInvalidConnect)
11972a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityProtocols)
11982a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityGetURL)
11992a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityValidConnect)
12002a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityInvalidClose)
12012a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityValidClose)
12022a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityGetProtocol)
12032a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityTextSendReceive)
12042a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityBinarySendReceive)
12052a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityBufferedAmount));
12062a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
12072a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
12082a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// NaClGLibc WebSocket tests
12092a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(WebSocket)) {
12102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestWithWebSocketServer(
12112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_IsWebSocket)
12122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UninitializedPropertiesAccess)
12132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_InvalidConnect)
12142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_Protocols)
12152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_GetURL)
12162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_ValidConnect)
12172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_InvalidClose)
12182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_ValidClose)
12192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_GetProtocol)
12202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_TextSendReceive)
12212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_BinarySendReceive)
12222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_StressedSendReceive)
12232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_BufferedAmount)
12242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_AbortCallsWithCallback)
12252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_AbortSendMessageCall)
12262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_AbortCloseCall)
12272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_AbortReceiveMessageCall)
12282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_CcInterfaces)
12292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityInvalidConnect)
12302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityProtocols)
12312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityGetURL)
12322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityValidConnect)
12332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityInvalidClose)
12342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityValidClose)
12352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityGetProtocol)
12362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityTextSendReceive)
12372a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityBinarySendReceive)
12382a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityBufferedAmount));
12392a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
12402a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
12412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// PNaCl WebSocket tests
12422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, WebSocket) {
12432a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestWithWebSocketServer(
12442a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_IsWebSocket)
12452a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UninitializedPropertiesAccess)
12462a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_InvalidConnect)
12472a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_Protocols)
12482a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_GetURL)
12492a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_ValidConnect)
12502a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_InvalidClose)
12512a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_ValidClose)
12522a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_GetProtocol)
12532a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_TextSendReceive)
12542a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_BinarySendReceive)
12552a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_StressedSendReceive)
12562a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_BufferedAmount)
12572a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_AbortCallsWithCallback)
12582a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_AbortSendMessageCall)
12592a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_AbortCloseCall)
12602a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_AbortReceiveMessageCall)
12612a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_CcInterfaces)
12622a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityInvalidConnect)
12632a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityProtocols)
12642a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityGetURL)
12652a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityValidConnect)
12662a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityInvalidClose)
12672a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityValidClose)
12682a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityGetProtocol)
12692a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityTextSendReceive)
12702a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityBinarySendReceive)
12712a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(WebSocket_UtilityBufferedAmount));
12722a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
12735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
12742a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
12752a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// In-process AudioConfig tests
12762a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPITest, AudioConfig) {
12772a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTest(
12782a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(AudioConfig_RecommendSampleRate)
12792a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(AudioConfig_ValidConfigs)
12802a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(AudioConfig_InvalidConfigs));
12812a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
12822a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
12832a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Out-of-process AudioConfig tests
12842a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, AudioConfig) {
12852a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTest(
12862a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(AudioConfig_RecommendSampleRate)
12872a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(AudioConfig_ValidConfigs)
12882a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(AudioConfig_InvalidConfigs));
12892a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
12902a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
12912a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// NaClNewlib AudioConfig tests
12922a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, AudioConfig) {
12932a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
12942a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(AudioConfig_RecommendSampleRate)
12952a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(AudioConfig_ValidConfigs)
12962a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(AudioConfig_InvalidConfigs));
12972a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
12982a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
12992a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// NaClGLibc AudioConfig tests
13002a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(AudioConfig)) {
13012a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
13022a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(AudioConfig_RecommendSampleRate)
13032a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(AudioConfig_ValidConfigs)
13042a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(AudioConfig_InvalidConfigs));
13052a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
13062a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
13072a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// PNaCl AudioConfig tests
13082a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, AudioConfig) {
13092a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(
13102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(AudioConfig_RecommendSampleRate)
13112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(AudioConfig_ValidConfigs)
13122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      LIST_TEST(AudioConfig_InvalidConfigs));
13132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
13142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
13152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
13162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPITest, Audio) {
13172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTest(LIST_TEST(Audio_Creation)
13182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          LIST_TEST(Audio_DestroyNoStop)
13192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          LIST_TEST(Audio_Failures)
13202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          LIST_TEST(Audio_AudioCallback1)
13212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          LIST_TEST(Audio_AudioCallback2));
13222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
13232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, Audio) {
13242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTest(LIST_TEST(Audio_Creation)
13252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          LIST_TEST(Audio_DestroyNoStop)
13262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          LIST_TEST(Audio_Failures)
13272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          LIST_TEST(Audio_AudioCallback1)
13282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          LIST_TEST(Audio_AudioCallback2));
13292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
13302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, Audio) {
13312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(LIST_TEST(Audio_Creation)
13322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                 LIST_TEST(Audio_DestroyNoStop)
13332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                 LIST_TEST(Audio_Failures)
13342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                 LIST_TEST(Audio_AudioCallback1)
13352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                 LIST_TEST(Audio_AudioCallback2));
13362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
13372a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(Audio)) {
13382a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(LIST_TEST(Audio_Creation)
13392a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                 LIST_TEST(Audio_DestroyNoStop)
13402a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                 LIST_TEST(Audio_Failures)
13412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                 LIST_TEST(Audio_AudioCallback1)
13422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                 LIST_TEST(Audio_AudioCallback2));
13432a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
13442a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, Audio) {
13452a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(LIST_TEST(Audio_Creation)
13462a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                 LIST_TEST(Audio_DestroyNoStop)
13472a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                 LIST_TEST(Audio_Failures)
13482a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                 LIST_TEST(Audio_AudioCallback1)
13492a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                 LIST_TEST(Audio_AudioCallback2));
13502a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
13515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
13525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS(View_CreatedVisible);
13535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(View_CreatedVisible);
13542a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(View_CreatedVisible);
13555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// This test ensures that plugins created in a background tab have their
13565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// initial visibility set to false. We don't bother testing in-process for this
13575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// custom test since the out of process code also exercises in-process.
13585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
13595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, View_CreateInvisible) {
13605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  // Make a second tab in the foreground.
13615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  GURL url = GetTestFileUrl("View_CreatedInvisible");
13625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  chrome::NavigateParams params(browser(), url, content::PAGE_TRANSITION_LINK);
13635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  params.disposition = NEW_BACKGROUND_TAB;
13645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  ui_test_utils::NavigateToURL(&params);
13655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
13665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
13675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// This test messes with tab visibility so is custom.
13685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, View_PageHideShow) {
13695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  // The plugin will be loaded in the foreground tab and will send us a message.
13705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  PPAPITestMessageHandler handler;
13715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  JavascriptTestObserver observer(
13722a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      browser()->tab_strip_model()->GetActiveWebContents()->GetRenderViewHost(),
13735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      &handler);
13745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
13755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  GURL url = GetTestFileUrl("View_PageHideShow");
13765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  ui_test_utils::NavigateToURL(browser(), url);
13775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
13785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  ASSERT_TRUE(observer.Run()) << handler.error_message();
13795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  EXPECT_STREQ("TestPageHideShow:Created", handler.message().c_str());
13805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  observer.Reset();
13815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
13825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  // Make a new tab to cause the original one to hide, this should trigger the
13835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  // next phase of the test.
138490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)  chrome::NavigateParams params(browser(), GURL(content::kAboutBlankURL),
13855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                                content::PAGE_TRANSITION_LINK);
13865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  params.disposition = NEW_FOREGROUND_TAB;
13875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  ui_test_utils::NavigateToURL(&params);
13885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
13895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  // Wait until the test acks that it got hidden.
13905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  ASSERT_TRUE(observer.Run()) << handler.error_message();
13915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  EXPECT_STREQ("TestPageHideShow:Hidden", handler.message().c_str());
13925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  observer.Reset();
13935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
13945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  // Switch back to the test tab.
13952a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  browser()->tab_strip_model()->ActivateTabAt(0, true);
13965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
13975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  ASSERT_TRUE(observer.Run()) << handler.error_message();
13985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  EXPECT_STREQ("PASS", handler.message().c_str());
13995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
14005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Tests that if a plugin accepts touch events, the browser knows to send touch
14025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// events to the renderer.
14035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPITest, InputEvent_AcceptTouchEvent) {
14045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  std::string positive_tests[] = { "InputEvent_AcceptTouchEvent_1",
14052a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                                   "InputEvent_AcceptTouchEvent_2",
14065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                                   "InputEvent_AcceptTouchEvent_3",
14075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                                   "InputEvent_AcceptTouchEvent_4"
14085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                                 };
14095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  for (size_t i = 0; i < arraysize(positive_tests); ++i) {
14112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    RenderViewHost* host = browser()->tab_strip_model()->
14122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)        GetActiveWebContents()->GetRenderViewHost();
14135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    RunTest(positive_tests[i]);
14145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    EXPECT_TRUE(content::RenderViewHostTester::HasTouchEventHandler(host));
14155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  }
14165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
14175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPITest, View) {
14192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTest(LIST_TEST(View_SizeChange)
14202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          LIST_TEST(View_ClipChange));
14212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
14222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, View) {
14232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTest(LIST_TEST(View_SizeChange)
14242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          LIST_TEST(View_ClipChange));
14252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
14262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClNewlibTest, View) {
14272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(LIST_TEST(View_SizeChange)
14282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                 LIST_TEST(View_ClipChange));
14292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
1430c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClGLibcTest, MAYBE_GLIBC(View)) {
14312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(LIST_TEST(View_SizeChange)
14322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                 LIST_TEST(View_ClipChange));
14332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
14342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPINaClPNaClTest, View) {
14352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTestViaHTTP(LIST_TEST(View_SizeChange)
14362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                 LIST_TEST(View_ClipChange));
14372a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
14385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14392a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPITest, ResourceArray) {
14402a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTest(LIST_TEST(ResourceArray_Basics)
14412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          LIST_TEST(ResourceArray_OutOfRangeAccess)
14422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          LIST_TEST(ResourceArray_EmptyArray)
14432a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          LIST_TEST(ResourceArray_InvalidElement));
14442a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
14452a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, ResourceArray) {
14462a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTest(LIST_TEST(ResourceArray_Basics)
14472a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          LIST_TEST(ResourceArray_OutOfRangeAccess)
14482a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          LIST_TEST(ResourceArray_EmptyArray)
14492a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          LIST_TEST(ResourceArray_InvalidElement));
14502a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
14515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14522a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(PPAPITest, FlashMessageLoop) {
14532a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTest(LIST_TEST(FlashMessageLoop_Basics)
14542a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          LIST_TEST(FlashMessageLoop_RunWithoutQuit));
14552a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
14562a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, FlashMessageLoop) {
14572a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  RunTest(LIST_TEST(FlashMessageLoop_Basics)
14582a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          LIST_TEST(FlashMessageLoop_RunWithoutQuit));
14592a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
14605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_IN_PROCESS(MouseCursor)
14625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(MouseCursor)
14632a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_NACL(MouseCursor)
14645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1465eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch// PPB_NetworkProxy is not supported in-process.
1466eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochTEST_PPAPI_OUT_OF_PROCESS(NetworkProxy)
1467eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochTEST_PPAPI_NACL(NetworkProxy)
1468eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
1469c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(TrueTypeFont)
1470c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)TEST_PPAPI_NACL(TrueTypeFont)
1471c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
1472a93a17c8d99d686bd4a1511e5504e5e6cc9fcadfTorne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(VideoDestination)
1473eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochTEST_PPAPI_NACL(VideoDestination)
1474eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
1475eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochTEST_PPAPI_OUT_OF_PROCESS(VideoSource)
1476eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochTEST_PPAPI_NACL(VideoSource)
1477a93a17c8d99d686bd4a1511e5504e5e6cc9fcadfTorne (Richard Coles)
14785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPB_Printing only implemented for out of process.
14795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(Printing)
14805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPB_MessageLoop is only supported out-of-process.
14825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// TODO(dmichael): Enable for NaCl with the IPC proxy. crbug.com/116317
14835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(MessageLoop_Basics)
14845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// MessageLoop_Post starts a thread so only run it if pepper threads are
14855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// enabled.
14865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifdef ENABLE_PEPPER_THREADING
14875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(MessageLoop_Post)
14885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
14895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Going forward, Flash APIs will only work out-of-process.
14912a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(Flash_GetLocalTimeZoneOffset)
14922a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(Flash_GetProxyForURL)
14932a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(Flash_GetSetting)
14942a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(Flash_SetCrashData)
14952a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// http://crbug.com/176822
14962a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#if !defined(OS_WIN)
14975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(FlashClipboard)
14982a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif
14992a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(FlashFile)
15002a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Mac/Aura reach NOTIMPLEMENTED/time out.
15012a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// mac: http://crbug.com/96767
15022a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// aura: http://crbug.com/104384
15032a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#if defined(OS_MACOSX)
15042a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define MAYBE_FlashFullscreen DISABLED_FlashFullscreen
15052a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#else
15062a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define MAYBE_FlashFullscreen FlashFullscreen
15072a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif
15082a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(MAYBE_FlashFullscreen)
15092a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
1510c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(PDF)
15117d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)
15127d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IN_PROC_BROWSER_TEST_F(OutOfProcessPPAPITest, FlashDRM) {
15137d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  RunTest(
1514c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#if (defined(OS_WIN) && defined(ENABLE_RLZ)) || defined(OS_CHROMEOS)
15157d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)          // Only implemented on Windows and ChromeOS currently.
15167d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)          LIST_TEST(FlashDRM_GetDeviceID)
1517c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#endif
15187d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)          LIST_TEST(FlashDRM_GetHmonitor)
15197d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)          LIST_TEST(FlashDRM_GetVoucherFile));
15207d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)}
1521c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
15222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_IN_PROCESS(TalkPrivate)
15232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_PPAPI_OUT_OF_PROCESS(TalkPrivate)
15245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
15255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif // ADDRESS_SANITIZER
1526