# Copyright 2018 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 = "maybelle"
NAME = "login_SavePassword.nopassword"
ATTRIBUTES = "suite:policy, suite:bvt-perbuild"
TIME = "SHORT"
TEST_CATEGORY = "Functional"
TEST_CLASS = "login"
TEST_TYPE = "client"

DOC = """
This test checks that the login password is not saved for an enterprise user
that does not have the ${PASSWORD} variable defined in their user
OpenNetworkConfiguration policy. It will set the user OpenNetworkConfiguration
policy without the ${PASSWORD} variable, log in a user and check /proc/keys to
ensure that a key named "password" is not saved in the keyring.
"""

job.run_test('login_SavePassword', onc_definition='onc_without_password.json',
             expect_password=False)
