If the spec files are run in a random order, removing /tmp/concat after
certain tests could cause the next tests to fail if they do not recreate
this directory.
(cherry picked from commit 1edafdcf42)
The current code doesn't correctly account for an absent with a
path set, incorrectly trying to remove $name instead. Fixing this
raised the issue that fragments left with no ensure will fail when
absent is set as the fragdir is deleted.
As a workaround for this we check the `ensure` parameter from the
concat{} resource with getparam() and then pass that to the fragment
if no specific ensure was passed in. This effectively ensures
fragments inherit their parents ensure status.