# Copyright (c) 2013 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 = "pstew@chromium.org"
NAME = "network_Connect.openvpn_user_pass"
PURPOSE = "Verify shill correctly authenticates to an OpenVPN server"
SUITE = "network_nightly"
CRITERIA = """
This test fails if the DUT cannot authenticate to a locally running
OpenVPN server runing at the other end of a virtual Ethernet interface.
This server performs username / password authentication.
"""
TIME = "SHORT"
TEST_CATEGORY = "Functional"
TEST_CLASS = "network"
TEST_TYPE = "client"

DOC = """
  Tests that we can complete OpenVPN authentication with a server that
  performs username/password authentication.  This is a client-only test
  which verifies function of the OpenVPN client.  Since the server it is
  testing against is itself, this test is best suited for verifying that
  the connection manager is correctly passing parameters to the underlying
  VPN client to have it properly connect.

"""

job.run_test('network_VPNConnect',
             vpn_type='openvpn_user_pass',
             tag=NAME.split('.')[1])
