def test_api_parameters(self): args = load_fixture('load_ltm_snat_translation_default.json') p = ApiParameters(params=args) assert p.address == '1.1.1.1' assert p.arp == 'no' assert p.connection_limit == 0 assert p.description == 'My description' assert p.ip_idle_timeout == '50' assert p.partition == 'Common' assert p.traffic_group == '/Common/test' assert p.tcp_idle_timeout == '20' assert p.udp_idle_timeout == '100'
def test_update_snat_translation(self, *args): set_module_args(dict( name='my-snat-translation', address='1.1.1.1', arp='yes', connection_limit=300, description='', ip_idle_timeout='500', state='disabled', tcp_idle_timeout='indefinite', traffic_group='traffic-group-1', udp_idle_timeout='indefinite', provider=dict( server='localhost', password='******', user='******' ) )) current = ApiParameters(params=load_fixture('load_ltm_snat_translation_default.json')) module = AnsibleModule( argument_spec=self.spec.argument_spec, supports_check_mode=self.spec.supports_check_mode, required_if=self.spec.required_if ) mm = ModuleManager(module=module) # Override methods to force specific logic in the module to happen mm.read_current_from_device = Mock(return_value=current) mm.update_on_device = Mock(return_value=True) mm.exists = Mock(return_value=True) mm.create_on_device = Mock(return_value=True) results = mm.exec_module() assert results['changed'] is True assert results['arp'] == 'yes' assert results['connection_limit'] == 300 assert results['description'] == '' assert results['ip_idle_timeout'] == '500' assert results['tcp_idle_timeout'] == 'indefinite' assert results['udp_idle_timeout'] == 'indefinite'