# Copyright 2016 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

AUTHOR = 'scunningham'
NAME = 'policy_JavaScriptBlockedForUrls.multipleurls_allow'
ATTRIBUTES = 'suite:ent-nightly, suite:policy'
TIME = 'SHORT'
TEST_CATEGORY = 'General'
TEST_CLASS = 'enterprise'
TEST_TYPE = 'client'

DOC = '''
Verify effects of JavaScriptBlockedForUrls policy.

This test case verifies the behavior of Chrome OS when JavaScriptBlockedForUrls
user policy is set to multiple URL patterns, and the DefaultJavaScriptSetting
policy is set to 1 (allow by default).

The test case shall pass iff the browser blocks javascript on a test page
with an URL that matches any of the URL patterns specified in
JavaScriptBlockedForUrls, and allows javascript on any page with an URL that
does not match. It shall fail if the browser does not enforce this behavior.

'''

job.run_test('policy_JavaScriptBlockedForUrls', case='MultipleUrls_Allow')
