=str #15740 hookup filter and collect

* copy tests from old DSL
* adapt ChainSetup to the new DSL

Fixes #15740
A change here and in the `stream` signature.