(#12296) Test cycle detection on real Puppet::Type instances.
We have found a couple of places where the behaviour of the items tested, and
the behaviour of the real system, differ - because the tests were run over
simpler objects than the real Puppet::Type instances we work on in the field.
This moves from testing on fake things to testing on the real deal, which
gives us a much more solid basis to trust the tests.
Signed-off-by: Daniel Pittman <daniel@puppetlabs.com>