cucumber/cucumber-jvm — pull request #598 by SierraGolf (2013-09-28 13:21:15+00:00)
Title: improve test reports for cucumber-android

This PR is a follow up for ["extension of the Formatter interface for more precise lifecycle handling"](https://github.com/cucumber/gherkin/pull/275) and will not compile as long as the other PR is not merged.

This PR is a refactoring of the previously quite buggy AndroidReporter. The following bugs have been fixed:

* double entries for end tags
* one to many entry start/end tag for outlines
* green tests for exceptions coming from hooks
* android maven plugin exceptions for undefined steps
* wrong count of scenario examples
* wrong step associated with missing step definition

In order to test the behaviour properly three new test dependencies have been added. Additionally the project structure was changed to the usual maven structure.

**Questions/Problems:**
1. Which tests should I extend in order consider the newly added Formatter methods?
2. In general the android module builds and also the whole project builds, when skipping tests. However there are weird tests errors which differ depending on which java version is used, when trying to build the whole project. With 1.6.0_51 I get the following errors:
```xml
Tests in error:
URLOutputStreamTest.throws_ioe_if_http_response_is_500:109 � Connect Connectio...
URLOutputStreamTest.throws_fnfe_if_http_response_is_404:85 � Connect Connectio...
URLOutputStreamTest.can_http_put:76 � Connect Connection refused
```
and JSONPrettyFormatterTest.featureWithOutlineTest fails: because the expected out contains the before hook information in the wrong scenario. When I run with 1.7.0_21 the errors disappear, but the failure remains.