예제 #1
0
 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());
 }