# Copyright 2015 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 = 'krishnargv'
NAME = 'policy_URLWhitelist'
TIME = 'SHORT'
TEST_CATEGORY = 'General'
TEST_CLASS = 'enterprise'
TEST_TYPE = 'client'

DOC = '''
Verify effects of policy_URLWhitelist policy on client behavior.

This test verifies the effect of the URLWhitelist user policy on Chrome OS
client behavior. It exercises a range of policy values using three unique test
cases, named: NotSet_Blocked, SinglePage_Allowed, and MultiplePages_Allowed.
See the test file for a full description of what each test case does.

A test case shall pass iff only URLs that are in the URLWhitelist policy value
are allowed, and all other URLs are blocked. The test case shall fail if the
above behavior is not enforced.

'''

args_dict = utils.args_to_dict(args)

job.run_test('policy_URLWhitelist', **args_dict)
