def test_broadcast_off(self, setUp): """ Verify disabled SSID broadcast status""" assertion = Assert() network = conn() # select wireless interface and disable wireless radio_page = RadioPage(self.firefox) radio_page.select_wifi_interface(iface="2.4GHZ") radio_page.disable(radio_page.get_wireless()) radio_page.apply_changes() # assert wireless and bandwidth assertion.is_equal(radio_page.get_wifi_interface(), "2.4 Ghz") wireless = radio_page.get_wireless() assertion.is_false(radio_page.is_enabled(wireless), "Wireless") # disable primary network network_page = NetworkPage(self.firefox) network_page.disable(network_page.get_primary_network()) network_page.apply_changes() # assert primary network is enabled netwrk = network_page.get_primary_network() assertion.is_false(network_page.is_enabled(netwrk), 'Primary Network') # Check if ssid shows up on wifi scan wifi_24_ssid = network_page.get_ssid_name() ssid_online = network.ssid_check(ssid=wifi_24_ssid) try: assertion.is_false(ssid_online, "SSID is offline") finally: # reset changes radio_page = RadioPage(self.firefox) radio_page.reset_wireless_default()
def test_ssidbroadcast(self, setUp): """Check 5.0Ghz ssid visibility from client and beacon broadcast """ assertion = Assert() network = conn() # select wireless interface and enable wireless radio_page = RadioPage(self.firefox) radio_page.select_wifi_interface(iface="5.0GHZ") radio_page.enable(radio_page.get_wireless()) radio_page.set_channel('36') radio_page.apply_changes() # assert wireless and bandwidth assertion.is_equal(radio_page.get_wifi_interface(), "5 Ghz") wireless = radio_page.get_wireless() assertion.is_true(radio_page.is_enabled(wireless), "Wireless") # enable primary network -> broadcast ssid network_page = NetworkPage(self.firefox) network_page.enable(network_page.get_primary_network()) network_page.apply_changes() # assert primary network is enabled netwrk = network_page.get_primary_network() assertion.is_true(network_page.is_enabled(netwrk), 'Primary Network') # Check if ssid shows up on wifi scan time.sleep(65) wifi_24_ssid = network_page.get_ssid_name() print(network_page.get_ssid_name()) ssid_online = network.ssid_check(ssid=wifi_24_ssid) try: assertion.is_true(ssid_online, "SSID is online") except WebElementError: # reset changes radio_page = RadioPage(self.firefox) radio_page.reset_wireless_default() raise
def test_ssid_maxchar(self, setUp): assertion = Assert() network = conn() """Check if DUT SSID name max characters allowed is 32 """ # select wireless interface and enable wireless radio_page = RadioPage(self.firefox) radio_page.select_wifi_interface(iface="2.4GHZ") radio_page.enable(radio_page.get_wireless()) radio_page.apply_changes() # assert wireless and bandwidth assertion.is_equal(radio_page.get_wifi_interface(), "2.4 Ghz") wireless = radio_page.get_wireless() assertion.is_true(radio_page.is_enabled(wireless), "Wireless") # enable primary network, enable WPA2 and disable WPA network_page = NetworkPage(self.firefox) network_page.enable(network_page.get_primary_network()) network_page.apply_changes() # Assert primary network is enabled netwrk = network_page.get_primary_network() assertion.is_true(network_page.is_enabled(netwrk), 'Primary Network') # Change SSID name to 40 characters then check ssid name length new_ssid = "NET_5G215F640000000000000000000001234567" network_page.set_ssid_name(new_ssid) network_page.apply_changes() # check length of ssid name equals maxlen 32 ssid = network_page.get_ssid_name() try: assertion.is_true(ssid != self.SSID, "SSID was changed") assertion.is_equal(len(ssid), 32) finally: #reset wireless configuration radio_page = RadioPage(self.firefox) radio_page.reset_wireless_default()
def test_nmode_off(self, setUp): """WiFi Client can ping gateway's local addr with 802.11 n-mode off""" assertion = Assert() network = conn() # select wireless interface and enable wireless radio_page = RadioPage(self.firefox) radio_page.select_wifi_interface(iface="2.4GHZ") radio_page.enable(radio_page.get_wireless()) radio_page.disable(radio_page.get_n_mode()) radio_page.apply_changes() # assert wireless is enabled and interface is 2.4Ghz assertion.is_equal(radio_page.get_wifi_interface(), "2.4 Ghz") assertion.is_false(radio_page.is_nmode_enabled(), 'N MODE') wireless = radio_page.get_wireless() assertion.is_true(radio_page.is_enabled(wireless), "Wireless") # enable primary network network_page = NetworkPage(self.firefox) network_page.enable(network_page.get_primary_network()) current_ssid_name = network_page.get_ssid_name() # assert primary network is enabled netwrk = network_page.get_primary_network() assertion.is_true(network_page.is_enabled(netwrk), 'Primary Network') # Get the DUT serial number soft_page = SoftwarePage(self.firefox) dut_serial_nb = soft_page.get_serial_number() # Compare digits of dut between serial number and ssid name ser_number_id = dut_serial_nb[-6:] # last 6 digits of serial number first_half = current_ssid_name[:6] # first 6 digits of ssid name last_half = current_ssid_name[-6:] # last 6 digits of ssid name try: assertion.is_equal(first_half, "NET_2G") assertion.is_equal(last_half, ser_number_id) except WebElementError: # reset changes radio_page = RadioPage(self.firefox) radio_page.reset_wireless_default() raise # Wifi connection attempt connection_attempt = network.wifi_connection(ssid=self.SSID, pswd=self.SSID_PASS, timeout=20) try: assertion.is_sucessful(connection_attempt, 'connection attempt') except NetworkError: # reset changes radio_page = RadioPage(self.firefox) radio_page.reset_wireless_default() raise # Disconnect wired interface eth_name = network.eth_iface_name() eth_disc_attempt = network.disconnect_iface(eth_name) try: assertion.is_sucessful(eth_disc_attempt, 'wired disconnection') except NetworkError: self.reset_wifisession(self.firefox, self.SSID) raise # Ping attempt wifi_iface = network.wifi_iface_name() ip = '192.168.0.1' time.sleep(10) ping_attempt = network.ping_attempt(wifi_iface, ip) time.sleep(10) try: assertion.is_sucessful(ping_attempt, 'ping attempt') finally: network.connect_iface(eth_name) self.reset_wifisession(self.firefox, self.SSID)
def test_ssid_newname(self, setUp): """Check DUT disconnects connected client after ssid name change """ network = conn() assertion = Assert() # select wireless interface and enable wireless radio_page = RadioPage(self.firefox) radio_page.select_wifi_interface(iface="2.4GHZ") radio_page.enable(radio_page.get_wireless()) radio_page.apply_changes() # assert wireless is enabled and wifi interface is 2.4Ghz assertion.is_equal(radio_page.get_wifi_interface(), "2.4 Ghz") wireless = radio_page.get_wireless() assertion.is_true(radio_page.is_enabled(wireless), "Wireless") # enable primary network and wpa2 network_page = NetworkPage(self.firefox) network_page.enable(network_page.get_primary_network()) network_page.enable(network_page.get_wpa2()) network_page.apply_changes() # check primary network and wpa2 are enabled and encryption is AES netwrk = network_page.get_primary_network() assertion.is_true(network_page.is_enabled(netwrk), 'Primary Network') wpa2 = network_page.get_wpa2() assertion.is_true(network_page.is_enabled(wpa2), 'WPA2 enabled') # Wifi connection attempt network.reset_network_mngr() wifi_connection = network.wifi_connection(ssid=self.SSID, pswd=self.SSID_PASS, timeout=20) try: assertion.is_wificonnected(wifi_connection) except WifiConnError: self.reset_wifisession(self.firefox, self.SSID) raise # Change SSID name to 'NET_2G215F64NEWSSIDNAME' new_ssid = "{0}NEWSSIDNAME".format(self.SSID) network_page.set_ssid_name(new_ssid) network_page.apply_changes() # Assert SSID was changed ssid = network_page.get_ssid_name() try: assertion.is_equal(ssid, new_ssid) except WebElementError: # reset wireless configuration self.reset_wifisession(self.firefox, self.SSID) raise # Check if WS still connected time.sleep(20) connection_status = network.ssid_isconnected(ssid=self.SSID) try: assertion.is_false(connection_status, 'client online') except Exception: self.reset_wifisession(self.firefox, self.SSID) raise # Connect to the DUT with new ssid name NET_2G215F64NEWSSIDNAME conn_attempt = network.wifi_connection(ssid=new_ssid, pswd=self.SSID_PASS) try: assertion.is_true(conn_attempt, "connection attempt") finally: network.delete_wifi_profile(ssid=new_ssid) self.reset_wifisession(self.firefox, self.SSID)