Your task is to add a new feature - if there are no tests, fail the build as well as noting this in the log. Also, if sending email is enabled, warn that there are no tests in an email. Before you do that you will want to add some unit tests for the Pipeline class. If you prefer to start with the refactoring, go to the 'with_tests' branch.
This exercise was originally named "Untangled Conditionals Kata" and was designed by Tom Oram. I wanted to use it as a test design kata as well as a refactoring kata, so I changed it a little bit.