# 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 = 'wiley, pstew, quiche'
NAME = 'network_WiFi_ProfileBasic'
TIME = 'SHORT'
TEST_TYPE = 'Server'
SUITE = 'wifi_matfunc'
DEPENDENCIES = 'wificell'

DOC = """
Tests basic operations on profiles and profile entries.  Tests that we
autoconnect to remembered services when a profile pop or entry delete
causes us to lose credentials to our currently connected service.  Tests
that we auto-connect to a WiFi network when credentials become available
and we are not already connected.

"""


def run(machine):
    job.run_test('network_WiFi_ProfileBasic',
                 host=hosts.create_host(machine),
                 raw_cmdline_args=args)


parallel_simple(run, machines)
