mockConfigBuilder = $this->getMockBuilder(ConfigBuilder::class) ->setMethods(['readContent']) ->setConstructorArgs(['']) ->getMock(); $this->mockConsole = $this->createMock(AbstractConsole::class); $this->mockStorage = $this->createMock(IStorage::class); } public function testAddTaskwarriorStorage() { $configs = ['taskwarrior' => ['taskrc' => '', 'taskdata' => '']]; $tw = new Taskwarrior($this->mockConsole, '', $configs); $manager = new StorageManager($this->mockConfigBuilder); $manager->addStorage(Taskwarrior::NAME, $tw); $storages = $manager->getStorages(); $configs = $manager->getConfigs(); $this->assertEquals(sizeof(array_keys($storages)), 1, 'Taskwarrior storage was not added'); $this->assertArrayHasKey('taskwarrior', $storages, 'Storages should have taskwarrior'); } public function testTaskwarriorImport() { $cal = new Calendar(); $this->mockStorage->expects($this->once()) ->method('save') ->with($this->equalTo($cal)); $configs = ['taskwarrior' => ['taskrc' => '', 'taskdata' => '']]; $manager = new StorageManager($configs); $manager->addStorage(Taskwarrior::NAME, $this->mockStorage); $manager->import($cal); } }