public function testMultipleBackendProviders() { $service = new BackendService($this->config, $this->l10n); $backend1a = $this->getBackendMock('\\Foo\\Bar'); $backend1b = $this->getBackendMock('\\Bar\\Foo'); $backend2 = $this->getBackendMock('\\Dead\\Beef'); $provider1Mock = $this->getMock('\\OCA\\Files_External\\Lib\\Config\\IBackendProvider'); $provider1Mock->expects($this->once())->method('getBackends')->willReturn([$backend1a, $backend1b]); $service->registerBackendProvider($provider1Mock); $provider2Mock = $this->getMock('\\OCA\\Files_External\\Lib\\Config\\IBackendProvider'); $provider2Mock->expects($this->once())->method('getBackends')->willReturn([$backend2]); $service->registerBackendProvider($provider2Mock); $this->assertEquals($backend1a, $service->getBackend('identifier:\\Foo\\Bar')); $this->assertEquals($backend1b, $service->getBackend('identifier:\\Bar\\Foo')); $this->assertEquals($backend2, $service->getBackend('identifier:\\Dead\\Beef')); $this->assertCount(3, $service->getBackends()); }