Skip to content

Fail Factories! We make the fail so you don't have to.

Ben Martin requested to merge monkeyiq/odfserver:failfactory into master

These are here to make testing for failure conditions simpler. They should not be configured automatically for you with configureall, you have to explicitly set them up.

States:

  • FailTimeoutFactory: --wait just hang out for an hour, wait to be cleaned up and reported.
  • FailSegvFactory: --die this is a oh no, the office suite has done a segv
  • FailMangleFactory: Also maybe claim to be making odf1.2ext and just send back some junk, or partial junk (valid header and bad data like twopage-monstered.odt) to see how the server handles it.​ This mangles bytes of the input above a specific point. The result might look at bit like an ODF file but is not.
  • FailWithException: throw an exception locally from within perform()

The FailFactoryProcess does the guts of all these commands. It is a different process so that the factories can run it as though it was the real office suite. This way, timeout detection should work for Abiword just as well as it does for the fail factory. And segv detection should work for other factories just as well as it does for the explicit segv factory.

There is still testing of these on windows which needs to be done. For that I should have to install the MS compiler so I can make native apps (not cygwin) so I can see native exit codes for a segv. This part really does push Java into a corner that it doesn't care for too much.

Merge request reports