/** * @covers ::createInstance */ public function testCreateInstance() { $plugin_id_a = $this->randomMachineName(); $plugin_a = $this->getMock(PluginInspectionInterface::class); $plugin_id_b = $this->randomMachineName(); $plugin_b = $this->getMock(PaymentAwarePluginFilteredPluginManagerUnitTestPaymentAwarePlugin::class); $plugin_b->expects($this->atLeastOnce())->method('setPayment')->with($this->payment); $map = [[$plugin_id_a, [], $plugin_a], [$plugin_id_b, [], $plugin_b]]; $this->pluginManager->expects($this->atLeast(count($map)))->method('createInstance')->willReturnMap($map); $this->assertSame($plugin_a, $this->sut->createInstance($plugin_id_a)); $this->assertSame($plugin_b, $this->sut->createInstance($plugin_id_b)); }