# Copyright (c) 2010 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.

# Purpose: This test case verifies that the DUT aheres to the
# maximum and minimum SSID length requirements.
{ "name":"Limits_Length_SSID",
  "steps":[
    [ "create",         { "type":"hostap" } ],
    [ "config",         { "channel":"2412", "mode":"11g" } ],

    # Test maximum SSID length
    [ "config",         { "ssid":str("Max_Length_SSID"*8)[:32] } ],
    [ "connect",        { "ssid":str("Max_Length_SSID"*8)[:32],
                          "security":"none" } ],
    [ "client_ping",    { "count":"10" } ],
    [ "disconnect" ],
    [ "deconfig" ],

    # Test minimum SSID length
    [ "config",         { "ssid": "a" } ],
    [ "connect",        { "ssid":"a", "security":"none" } ],
    [ "client_ping",    { "count":"10" } ],
    [ "disconnect" ],
    [ "deconfig" ],

    # Test MAX+1 ssid length
    [ "!connect",        { "ssid":str("Max_Length_SSID"*8)[:33],
                           "security":"none", "hidden":True },
                           "org.chromium.flimflam.Error.InvalidNetworkName" ],
    [ "destroy" ],
  ],
}
