/** * @dataProvider dataProvider */ public function testWiringFilterContext($data) { $context = new WiringFilterContext(); $this->assertFalse($context->isRegistered(TEST)); $context->setData(TEST, $data); $this->assertTrue($context->isRegistered(TEST)); $storedData = $context->getData(TEST); $this->assertSame($data, $storedData); $stream = $context->getStream(TEST); $this->assertSame($data, $stream->getData()); // Data should be written to the same stream $context->setData(TEST, $data); $this->assertSame($stream, $context->getStream(TEST)); $stream2 = new MutableStream($data); $context->setStream(TEST, $stream2); $this->assertSame($stream2, $context->getStream(TEST)); $this->assertNotSame($stream, $context->getStream(TEST)); }