/** * @testdox asConfig() replaces values that implement ConfigProvider with their config value */ public function testAsConfigProvider() { $pc = new ProgrammableCallback(function () { }); $pc->setVars(['x' => new DummyConfigProvider()]); $pc->addParameterByName('x'); $pc->addParameterByValue(new DummyConfigProvider()); $config = $pc->asConfig(); $this->assertSame('foo', $config['params'][0]); $this->assertSame('foo', $config['params'][1]); }