reactive-streams/reactive-streams — pull request #186 by ktoso (2014-12-24 14:24:52+00:00)
Title: +tck #181 provides default helperPublisher for subscriber tests

This is a rather heavy PR, however it removes the need of implementing a (helper) Publisher when I'm only interested in implementing a Subscriber. This is done by providing a default implementation - based on the example implementations (reused).

The TCK automatically picks the default publisher if it is able to. If not (types don't match), it fails ASAP and tells the implementer that he/she has to implement a custom publisher (like we, until now, always forced implementers to).

Let me know what you think!

```
+ When subscriber verifications are extended using Integer
we can use the existing publisher implementations from examples
to drive the tests. This allows implementers who only care about
implementing Subscribers to not care at all about implementing
Publishers
+ In case the subscriber verification is extended using a custom signal
type (defined as "not Integer") we do not magically generate a
Publisher of this type, but instead fail the tests telling the
implementer that he/she will need to implement a custom helperPublisher
which is exactly what we have up until now always demanded from
implementations.
+ We also provide tests to verify the test failures work as expected,
and that the messages are indeed helpful.
+ Updated TCK README.md to clarify when to implement a custom publisher
+ fixed mistakenly added `` on NumberPublisher - it is bound to Ints
+ TCK now depends on examples, as it uses the well documented async
publisher to provide the default publisher for numbers. As well as
in order to allow implementers to reuse those publishers when
implementing custom Publishers to drive their Subscriber specs.
```

Merry :christmas_tree: ;-)