# 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, wifi_matfunc_bcm4356, wifi_matfunc_marvell8897,'
         'wifi_matfunc_intel7265')
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)
