def test_scaleway_create_pn(capfd): set_module_args({ "state": "present", "project": "a123b4cd-ef5g-678h-90i1-jk2345678l90", "region": "par2", "name": "new_network_name", "tags": ["tag1"] }) os.environ['SCW_API_TOKEN'] = 'notrealtoken' with patch.object(Scaleway, 'get') as mock_scw_get: mock_scw_get.return_value = response_with_zero_network() with patch.object(Scaleway, 'post') as mock_scw_post: mock_scw_post.return_value = response_create_new() with pytest.raises(SystemExit) as results: scaleway_private_network.main() mock_scw_post.assert_any_call( path='private-networks/', data={ 'name': 'new_network_name', 'project_id': 'a123b4cd-ef5g-678h-90i1-jk2345678l90', 'tags': ['tag1'] }) mock_scw_get.assert_any_call('private-networks', params={ 'name': 'new_network_name', 'order_by': 'name_asc', 'page': 1, 'page_size': 10 }) out, err = capfd.readouterr() del os.environ['SCW_API_TOKEN']
def test_scaleway_absent_pn_not_exists(capfd): set_module_args({ "state": "absent", "project": "a123b4cd-ef5g-678h-90i1-jk2345678l90", "region": "par2", "name": "new_network_name", "tags": ["newtag"] }) os.environ['SCW_API_TOKEN'] = 'notrealtoken' with patch.object(Scaleway, 'get') as mock_scw_get: mock_scw_get.return_value = response_with_zero_network() with pytest.raises(SystemExit) as results: scaleway_private_network.main() mock_scw_get.assert_any_call('private-networks', params={ 'name': 'new_network_name', 'order_by': 'name_asc', 'page': 1, 'page_size': 10 }) out, err = capfd.readouterr() del os.environ['SCW_API_TOKEN'] assert not err assert not json.loads(out)['changed']
def test_scaleway_private_network_without_arguments(capfd): set_module_args({}) with pytest.raises(SystemExit) as results: scaleway_private_network.main() out, err = capfd.readouterr() assert not err assert json.loads(out)['failed']