Beispiel #1
0
def test_get_parameters(mocker, source, parameters_to_get, parameters):
    mock_fp = mock.Mock()
    mock_iter = mocker.patch("octane.util.helpers.iterate_parameters")
    mock_iter.return_value = source
    result = helpers.get_parameters(mock_fp, parameters_to_get)
    mock_iter.assert_called_once_with(mock_fp)
    assert result == parameters
Beispiel #2
0
def get_parameters(node, filename, parameters_to_get, ensure=True):
    with ssh.sftp(node).open(filename) as fp:
        parameters = helpers.get_parameters(fp, parameters_to_get)
    if ensure:
        required_parameters = set(parameters_to_get)
        current_parameters = set(parameters)
        absent_parameters = required_parameters - current_parameters
        if absent_parameters:
            flat_parameters = []
            for aparam in absent_parameters:
                for param in parameters_to_get[aparam]:
                    flat_parameters.append("/".join(param))
            raise AbsentParametersError(
                node.data["id"], filename, flat_parameters)
    return parameters