Overwrite does not raise error when we try to overwrite a non-existent node

Our documentation states that the (list overwrite directive)[https://docs.buildstream.build/format_intro.html#list-overwrite] (=), "has the same behavior as a literal list, except that an error will be triggered in the case that there is no underlying list to overwrite". However, this does not seem to be the behaviour.

I've created commits for two separate tests which test this:

  • Test in tests/internals/yaml.py: 6b50e035

  • Test in tests/format/include_composition.py: 9a7fb378

The former test is probably clearer.

Expected behaviour

This should raise a LoadError