Exemple #1
0
def test_build_args_errors():
    m = Matcher(rule_5)

    with pytest.raises(KeyError):
        m.build_args("org.reactobus.lava.hello", "uuid", "", "lavauser", {})

    m = Matcher(rule_3)
    with pytest.raises(KeyError):
        m.build_args("org.reactobus", "uuid", "", "lavauser", {"username": "******"})
Exemple #2
0
def test_build_args():
    m = Matcher(rule_1)

    # Test for classical substitution
    (args, stdin) = m.build_args("org.reactobus.lava.hello", "uuid", "", "lavauser", {})
    assert args == [m.binary, "topic", "org.reactobus.lava.hello", "username", "lavauser"]
    assert stdin == ''
    (args, stdin) = m.build_args("org.reactobus.lava.something", "uuid", "erty", "kernel-ci", {})
    assert args == [m.binary, "topic", "org.reactobus.lava.something", "username", "kernel-ci"]
    assert stdin == ''

    # Test for data.* substitution
    m = Matcher(rule_3)
    (args, stdin) = m.build_args("org.reactobus", "uuid", "", "lavauser", {"submitter": "health"})
    assert args == [m.binary, "topic", "org.reactobus", "submitter", "health"]
    assert stdin == ''

    # Without args
    m = Matcher(rule_6)
    (args, stdin) = m.build_args("org.reactobus", "uuid", "", "lavauser", {"submitter": "health"})
    assert args == [m.binary]
    assert stdin == ''

    # With "stdin:" and "$data."
    m = Matcher(rule_7)
    (args, stdin) = m.build_args("org.reactobus", "uuid", "", "",
                                 {"submitter": "kernel-ci", "key": "value"})
    assert args == [m.binary, "stdin", "kernel-ci"]
    assert stdin == "hello\norg.reactobus\nkernel-ci"

    with pytest.raises(KeyError):
        (args, stdin) = m.build_args("org.reactobus", "uuid", "", "",
                                     {"key": "value"})