def test_intOrNone(self): self.assertIsNone(int_or_none(None)) self.assertIsNone(int_or_none("")) self.assertEqual(100, int_or_none(100)) self.assertEqual(999, int_or_none("999")) self.assertEqual(1, int_or_none(True)) self.assertEqual(0, int_or_none(False)) self.assertEqual(99, int_or_none(99.99)) self.assertEqual(-100, int_or_none(-100)) with self.assertRaises(ValueError): self.assertTrue(int_or_none("192.168.0.1")) with self.assertRaises(ValueError): self.assertTrue(int_or_none("this are words"))
def __setattr__(self, name, value): if name == "max_login_failures": value = int_or_none(value) if value is not None and value > BRUTE_FORCE_MAX_LOGIN_FAILURES: raise ValueError( f"{value} Exceeds Max login failures: {BRUTE_FORCE_MAX_LOGIN_FAILURES}" ) elif name == "penalty_period": value = int_or_none(value) if value is not None and value > BRUTE_FORCE_MAX_PENALITY: raise ValueError( f"{value} Exceeds Max penalty: {BRUTE_FORCE_MAX_PENALITY} seconds" ) else: value = bool_or_none(value) super(BruteForceProtection, self).__setattr__(name, value)
def _override_explcit_wait(wait): """Override configuration file setting for Explicitly Wait. :param wait: time in seconds """ if int_or_none(wait): environ["Driver_explicitly_wait"] = str(wait)
def __setattr__(self, name, value): if name in ( "lan_1_index", "lan_2_index", "lan_3_index", "lan_4_index", "lan_5_index", "lan_6_index", "lan_ip_routed_index", ): value = int_or_none(value) else: value = bool_or_none(value) super(LAN_Access, self).__setattr__(name, value)
def __setattr__(self, name, value): if name in ( "internet_management", "telnet_server", "http_server", "https_server", "ssh_server", "snmp_server", "disable_ping_from_internet", ): value = bool_or_none(value) else: value = int_or_none(value) super(IPv6Management, self).__setattr__(name, value)
def __setattr__(self, name, value): if name == "hostname": if not (valid_hostname(value) or valid_ipv4_address(value) or valid_ipv6_address(value)): raise ValueError(f"Invalid hostname: {value}") if name in [ "use_https", "loggedin", "reboot_required", "headless", "search_driver", ]: value = bool_or_none(value) elif name == "port": value = port_or_none(value) elif name in ["implicit_wait_time", "explicit_wait_time"]: value = int_or_none(value) super(DrayTekWebAdmin, self).__setattr__(name, value)