Following up Jonas's comment in #198949, this patch changes the function
to not ignore the override context in the adopt_dummy_target=false case.
However, I don't implement Jonas's suggestion exactly either. Instead of
"bypassing" the override context if it contains the dummy target, this
patch returns an empty context instead. I think this makes more sense,
as the intention of the user may very well have been to run the command
in the context of the dummy target. The test suite has no opinion either
way, but this is sufficient to fix the regression that #198949 was
trying to fix.
I also delete the test added in that PR, as the tests in this patch
cover more cases, and the test has the potential of interfering with
another process/test running on the same system.