Spies and fakes for shell unit testing