def test_update_wideip_with_pool(self, *args): set_module_args( dict(name='foo.bar.com', lb_method='round-robin', type='a', pools=[ dict(name='baz', ratio=10), dict(name='alec', ratio=100) ], password='******', server='localhost', user='******')) current = ApiParameters( params=load_fixture('load_gtm_wide_ip_with_pools.json')) module = AnsibleModule( argument_spec=self.spec.argument_spec, supports_check_mode=self.spec.supports_check_mode) # Override methods in the specific type of manager tm = TypedManager(module=module, params=module.params) tm.exists = Mock(return_value=True) tm.read_current_from_device = Mock(return_value=current) tm.update_on_device = Mock(return_value=True) # Override methods to force specific logic in the module to happen mm = ModuleManager(module=module) mm.version_is_less_than_12 = Mock(return_value=False) mm.get_manager = Mock(return_value=tm) results = mm.exec_module() assert results['changed'] is True assert 'pools' in results
def test_api_pools(self): args = load_fixture('load_gtm_wide_ip_with_pools.json') p = ApiParameters(params=args) assert len(p.pools) == 1 assert 'name' in p.pools[0] assert 'ratio' in p.pools[0] assert p.pools[0]['name'] == '/Common/baz' assert p.pools[0]['ratio'] == 10
def test_api_parameters(self): args = dict( name='foo.baz.bar', poolLbMode='round-robin' ) p = ApiParameters(params=args) assert p.name == 'foo.baz.bar' assert p.pool_lb_method == 'round-robin'