def test_module_strict_updates_only_parameters(self): args = dict(parameters=dict(strictUpdates='disabled')) p = ModuleParameters(params=args) assert p.strict_updates == 'disabled' args = dict(parameters=dict(strictUpdates='enabled')) p = ModuleParameters(params=args) assert p.strict_updates == 'enabled'
def test_module_strict_updates_override_from_top_level(self): args = dict(strict_updates=True, parameters=dict(strictUpdates='disabled')) p = ModuleParameters(params=args) assert p.strict_updates == 'enabled' args = dict(strict_updates=False, parameters=dict(strictUpdates='enabled')) p = ModuleParameters(params=args) assert p.strict_updates == 'disabled'
def test_module_strict_updates_from_top_level(self): # Assumes the user did not provide any parameters args = dict(strict_updates=True) p = ModuleParameters(params=args) assert p.strict_updates == 'enabled' args = dict(strict_updates=False) p = ModuleParameters(params=args) assert p.strict_updates == 'disabled'
def test_module_template_different_partition_full_path(self): args = dict( template='/Common/foo', partition='bar' ) p = ModuleParameters(params=args) assert p.template == '/Common/foo'
def test_module_template_same_partition_full_path(self): args = dict( template='/bar/foo', partition='bar' ) p = ModuleParameters(params=args) assert p.template == '/bar/foo'
def test_module_parameters_tables(self): args = load_fixture('create_iapp_service_parameters_f5_http.json') p = ModuleParameters(params=args) assert 'tables' in p._values assert 'columnNames' in p.tables[0] assert len(p.tables[0]['columnNames']) == 1 assert p.tables[0]['columnNames'][0] == 'name' assert 'name' in p.tables[0] assert p.tables[0]['name'] == 'pool__hosts' assert 'rows' in p.tables[0] assert len(p.tables[0]['rows']) == 1 assert 'row' in p.tables[0]['rows'][0] assert len(p.tables[0]['rows'][0]['row']) == 1 assert p.tables[0]['rows'][0]['row'][0] == 'demo.example.com' assert len(p.tables[1]['rows']) == 2 assert 'row' in p.tables[0]['rows'][0] assert len(p.tables[1]['rows'][0]['row']) == 2 assert p.tables[1]['rows'][0]['row'][0] == '10.1.1.1' assert p.tables[1]['rows'][0]['row'][1] == '0' assert p.tables[1]['rows'][1]['row'][0] == '10.1.1.2' assert p.tables[1]['rows'][1]['row'][1] == '0'
def test_module_parameters_keys(self): args = load_fixture('create_iapp_service_parameters_f5_http.json') p = ModuleParameters(params=args) # Assert the top-level keys assert p.name == 'http_example' assert p.partition == 'Common' assert p.template == '/Common/f5.http' assert p.device_group is None assert p.inheritedTrafficGroup == 'true' assert p.inheritedDevicegroup == 'true' assert p.traffic_group == '/Common/traffic-group-local-only'
def test_module_parameters_lists(self): args = load_fixture('create_iapp_service_parameters_f5_http.json') p = ModuleParameters(params=args) assert 'lists' in p._values assert p.lists[0]['name'] == 'irules__irules' assert p.lists[0]['encrypted'] == 'no' assert len(p.lists[0]['value']) == 1 assert p.lists[0]['value'][0] == '/Common/lgyft' assert p.lists[1]['name'] == 'net__client_vlan' assert p.lists[1]['encrypted'] == 'no' assert len(p.lists[1]['value']) == 1 assert p.lists[1]['value'][0] == '/Common/net2'
def test_module_parameters_variables(self): args = load_fixture('create_iapp_service_parameters_f5_http.json') p = ModuleParameters(params=args) assert 'variables' in p._values assert len(p.variables) == 34 # Assert one configuration value assert 'name' in p.variables[0] assert 'value' in p.variables[0] assert p.variables[0]['name'] == 'afm__dos_security_profile' assert p.variables[0]['value'] == '/#do_not_use#' # Assert a second configuration value assert 'name' in p.variables[1] assert 'value' in p.variables[1] assert p.variables[1]['name'] == 'afm__policy' assert p.variables[1]['value'] == '/#do_not_use#'