Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(64)

Side by Side Diff: chrome/test/data/webui/sandboxstatus_browsertest.js

Issue 11664013: GTTF: No more FLAKY_ . (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 /** 5 /**
6 * TestFixture for SUID Sandbox testing. 6 * TestFixture for SUID Sandbox testing.
7 * @extends {testing.Test} 7 * @extends {testing.Test}
8 * @constructor 8 * @constructor
9 */ 9 */
10 function SandboxStatusUITest() {} 10 function SandboxStatusUITest() {}
11 11
12 SandboxStatusUITest.prototype = { 12 SandboxStatusUITest.prototype = {
13 __proto__: testing.Test.prototype, 13 __proto__: testing.Test.prototype,
14 /** 14 /**
15 * Browse to the options page & call our preLoad(). 15 * Browse to the options page & call our preLoad().
16 */ 16 */
17 browsePreload: 'chrome://sandbox', 17 browsePreload: 'chrome://sandbox',
18 18
19 }; 19 };
20 20
21 // This test is for Linux only. 21 // This test is for Linux only.
22 // PLEASE READ: 22 // PLEASE READ:
23 // - If failures of this test are a problem on a bot under your care, 23 // - If failures of this test are a problem on a bot under your care,
24 // the proper way to address such failures is to install the SUID 24 // the proper way to address such failures is to install the SUID
25 // sandbox. See: 25 // sandbox. See:
26 // http://code.google.com/p/chromium/wiki/LinuxSUIDSandboxDevelopment 26 // http://code.google.com/p/chromium/wiki/LinuxSUIDSandboxDevelopment
27 // - PLEASE DO NOT DISABLE THIS TEST. If you can't figure out how to 27 // - PLEASE DO NOT GLOBALLY DISABLE THIS TEST.
28 // get the SUID sandbox installed, please mark the test FLAKY_ so we
29 // can get clear information on where the sandbox is and isn't installed.
30 // SUID sandbox is currently incompatible with AddressSanitizer, 28 // SUID sandbox is currently incompatible with AddressSanitizer,
31 // see http://crbug.com/137653. 29 // see http://crbug.com/137653.
32 GEN('#if defined(OS_LINUX) && !defined(ADDRESS_SANITIZER)'); 30 GEN('#if defined(OS_LINUX) && !defined(ADDRESS_SANITIZER)');
33 GEN('# define MAYBE_testSUIDSandboxEnabled \\'); 31 GEN('# define MAYBE_testSUIDSandboxEnabled \\');
34 GEN(' testSUIDSandboxEnabled'); 32 GEN(' testSUIDSandboxEnabled');
35 GEN('#else'); 33 GEN('#else');
36 GEN('# define MAYBE_testSUIDSandboxEnabled \\'); 34 GEN('# define MAYBE_testSUIDSandboxEnabled \\');
37 GEN(' DISABLED_testSUIDSandboxEnabled'); 35 GEN(' DISABLED_testSUIDSandboxEnabled');
38 GEN('#endif'); 36 GEN('#endif');
39 37
40 /** 38 /**
41 * Test if the SUID sandbox is enabled. 39 * Test if the SUID sandbox is enabled.
42 * 40 *
43 * TODO(bradchen): Remove FLAKY_ and flip polarity of this test once 41 * TODO(bradchen): Remove DISABLED_ and flip polarity of this test once
44 * the SUID sandbox is enabled on the Chromium bots. In the mean time 42 * the SUID sandbox is enabled on the Chromium bots. In the mean time
45 * this test will make it clear that the enabling steps are effective. 43 * this test will make it clear that the enabling steps are effective.
46 */ 44 */
47 TEST_F('SandboxStatusUITest', 'MAYBE_testSUIDSandboxEnabled', function() { 45 TEST_F('SandboxStatusUITest', 'MAYBE_testSUIDSandboxEnabled', function() {
48 var suidyesstring = 'SUID Sandbox\tYes'; 46 var suidyesstring = 'SUID Sandbox\tYes';
49 var suidnostring = 'SUID Sandbox\tNo'; 47 var suidnostring = 'SUID Sandbox\tNo';
50 var suidyes = document.body.innerText.match(suidyesstring); 48 var suidyes = document.body.innerText.match(suidyesstring);
51 var suidno = document.body.innerText.match(suidnostring); 49 var suidno = document.body.innerText.match(suidnostring);
52 50
53 expectEquals(null, suidno); 51 expectEquals(null, suidno);
54 assertFalse(suidyes === null); 52 assertFalse(suidyes === null);
55 expectEquals(suidyesstring, suidyes[0]); 53 expectEquals(suidyesstring, suidyes[0]);
56 }); 54 });
57 55
58 // The seccomp-bpf sandbox is also not compatible with ASAN. 56 // The seccomp-bpf sandbox is also not compatible with ASAN.
59 GEN('#if defined(OS_LINUX) && !defined(ADDRESS_SANITIZER)'); 57 GEN('#if defined(OS_LINUX) && !defined(ADDRESS_SANITIZER)');
60 GEN('# define MAYBE_testBPFSandboxEnabled \\'); 58 GEN('# define MAYBE_testBPFSandboxEnabled \\');
61 GEN(' FLAKY_testBPFSandboxEnabled'); 59 GEN(' DISABLED_testBPFSandboxEnabled');
62 GEN('#else'); 60 GEN('#else');
63 GEN('# define MAYBE_testBPFSandboxEnabled \\'); 61 GEN('# define MAYBE_testBPFSandboxEnabled \\');
64 GEN(' DISABLED_testBPFSandboxEnabled'); 62 GEN(' DISABLED_testBPFSandboxEnabled');
65 GEN('#endif'); 63 GEN('#endif');
66 64
67 /** 65 /**
68 * Test if the seccomp-bpf sandbox is enabled. 66 * Test if the seccomp-bpf sandbox is enabled.
69 * We know that some machines lack kernel support for this. So we mark 67 * We know that some machines lack kernel support for this. So we mark
70 * it as FLAKY_. 68 * it as DISABLED_.
71 * It's very convenient to quickly be able to check whether tests ran with 69 * It's very convenient to quickly be able to check whether tests ran with
72 * or without the Seccomp BPF sandbox through this mechanism. 70 * or without the Seccomp BPF sandbox through this mechanism.
73 */ 71 */
74 TEST_F('SandboxStatusUITest', 'MAYBE_testBPFSandboxEnabled', function() { 72 TEST_F('SandboxStatusUITest', 'MAYBE_testBPFSandboxEnabled', function() {
75 var bpfyesstring = 'Seccomp-BPF sandbox\tYes'; 73 var bpfyesstring = 'Seccomp-BPF sandbox\tYes';
76 var bpfnostring = 'Seccomp-BPF sandbox\tNo'; 74 var bpfnostring = 'Seccomp-BPF sandbox\tNo';
77 var bpfyes = document.body.innerText.match(bpfyesstring); 75 var bpfyes = document.body.innerText.match(bpfyesstring);
78 var bpfno = document.body.innerText.match(bpfnostring); 76 var bpfno = document.body.innerText.match(bpfnostring);
79 77
80 expectEquals(null, bpfno); 78 expectEquals(null, bpfno);
81 assertFalse(bpfyes === null); 79 assertFalse(bpfyes === null);
82 expectEquals(bpfyesstring, bpfyes[0]); 80 expectEquals(bpfyesstring, bpfyes[0]);
83 }); 81 });
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698