def METHOD_NAME():
    """Test setting/unsetting value/ignored flag in a Config object."""
    conf = metomi.rose.config.ConfigNode()
    assert conf is not None
    assert conf.set([], {}) == conf
    conf.set(["", "top-option"], "rubbish")
    node = conf.get(["", "top-option"])
    assert (node.value, node.state) == ("rubbish", "")
    node = conf.get(["top-option"])
    assert (node.value, node.state) == ("rubbish", "")
    conf.set(["rubbish"], {})
    node = conf.get(["rubbish"])
    assert (node.value, node.state) == ({}, "")
    conf.set(["rubbish", "item"], "value")
    node = conf.get(["rubbish", "item"])
    assert (node.value, node.state) == ("value", "")
    assert conf.get(["rubbish", "item"]).value == "value"
    conf.get(["rubbish", "item"]).state = "!"
    node = conf.get(["rubbish", "item"], no_ignore=True)
    assert node is None
    assert conf.get(["rubbish", "item"]).value == "value"
    conf.get(["rubbish", "item"]).state = ""
    assert conf.get(["rubbish", "item"]) is not None
    assert conf.get(["rubbish", "item"]).value == "value"
    node = conf.unset(["rubbish", "item"])
    assert (node.value, node.state) == ("value", "")
    assert conf.unset(["rubbish", "item"]) is None
    conf.set(["rubbish", "item"], "value", "!!")
    node = conf.get(["rubbish", "item"])
    assert (node.value, node.state) == ("value", "!!")
    assert conf.unset(["rubbish"]) is not None
    conf.set(["rubbish"], {})
    node = conf.get(["rubbish"])
    assert (node.value, node.state) == ({}, "")
    conf.set(["rubbish", "item"], "value")
    node = conf.get(["rubbish", "item"])
    assert (node.value, node.state) == ("value", "")
    conf.get(["rubbish"]).state = "!"
    assert conf.get(["rubbish", "item"], True) is None