def test_create_kayobe_environment(self, mock_readable_dir, mock_mkdir, mock_copy_dir): mock_readable_dir.return_value = { "result": False, "message": "Path does not exist" } parser = argparse.ArgumentParser() args = [ "--config-path", "/path/to/config", "--source-config-path", "/path/to/foo", "--environment", "foo", ] ansible.add_args(parser) environment.add_args(parser) parsed_args = parser.parse_args(args) environment.create_kayobe_environment(parsed_args) expected_calls = [ mock.call("/path/to/config/environments"), mock.call("/path/to/config/environments/foo"), ] self.assertEqual(expected_calls, mock_mkdir.call_args_list) mock_copy_dir.assert_called_once_with( "/path/to/foo", "/path/to/config/environments/foo", exclude=["environments"])
def test_environment_exists(self, mock_readable_dir): mock_readable_dir.side_effect = [{"result": True}, {"result": True}] parser = argparse.ArgumentParser() args = [ "--config-path", "/path/to/config", "--environment", "foo", ] ansible.add_args(parser) environment.add_args(parser) parsed_args = parser.parse_args(args) self.assertRaises(SystemExit, environment.create_kayobe_environment, parsed_args)
def test_unreadable_environments_directory(self, mock_readable_dir): mock_readable_dir.return_value = { "result": False, "message": "Directory is not readable" } parser = argparse.ArgumentParser() args = [ "--config-path", "/path/to/config", "--environment", "foo", ] ansible.add_args(parser) environment.add_args(parser) parsed_args = parser.parse_args(args) self.assertRaises(SystemExit, environment.create_kayobe_environment, parsed_args)