8 use Composer\Console\Application;
9 use Composer\Console\ApplicationFactory;
15 use PHPUnit\Framework\TestCase;
16 use Symfony\Component\Console\Input\ArrayInput;
17 use Symfony\Component\Console\Input\ArrayInputFactory;
64 $this->directoryReadMock = $this->createMock(ReadInterface::class);
65 $this->directoryWriteMock = $this->createMock(WriteInterface::class);
66 $this->filesystemMock = $this->createMock(Filesystem::class);
67 $this->sampleDataDependencyMock = $this->createMock(Dependency::class);
68 $this->arrayInputFactoryMock = $this->createMock(ArrayInputFactory::class);
69 $this->applicationMock = $this->createMock(Application::class);
70 $this->applicationFactoryMock = $this->createPartialMock(ApplicationFactory::class, [
'create']);
83 $additionalComposerArgs = []
85 $this->directoryReadMock->expects($this->any())->method(
'getAbsolutePath')->willReturn($pathToComposerJson);
86 $this->directoryReadMock->expects($this->any())->method(
'readFile')->with(
'composer.json')->willReturn(
87 '{"version": "0.0.1"}' 89 $this->filesystemMock->expects($this->any())->method(
'getDirectoryRead')->with(
DirectoryList::ROOT)->willReturn(
90 $this->directoryReadMock
92 $this->sampleDataDependencyMock->expects($this->any())->method(
'getSampleDataPackages')->willReturn(
95 $this->arrayInputFactoryMock->expects($this->never())->method(
'create');
97 $this->applicationMock->expects($this->any())
106 $additionalComposerArgs
111 ->willReturn($appRunResult);
113 if (($appRunResult !== 0) && !empty($sampleDataPackages)) {
114 $this->applicationMock->expects($this->once())->method(
'resetComposer')->willReturnSelf();
117 $this->applicationFactoryMock->expects($this->any())
119 ->willReturn($this->applicationMock);
130 array $sampleDataPackages,
131 string $pathToComposerJson
setupMocks( $sampleDataPackages, $pathToComposerJson, $appRunResult, $additionalComposerArgs=[])
expectedComposerArguments(array $sampleDataPackages, string $pathToComposerJson)
$sampleDataDependencyMock