protected function createDummyProject($sourceDir)
{
if (!is_dir($sourceDir)) {
throw new \InvalidArgumentException("Not a directory: {$sourceDir}");
}
$projectRoot = $this->createTempSubDir('project');
// Set up the project.
$fsHelper = new FilesystemHelper();
$fsHelper->copyAll($sourceDir, $projectRoot);
// @todo perhaps make some of these steps unnecessary
$local = new LocalProject();
$cwd = getcwd();
chdir($projectRoot);
exec('git init');
chdir($cwd);
$local->ensureGitRemote($projectRoot, 'testProjectId');
$local->writeCurrentProjectConfig(['id' => 'testProjectId'], $projectRoot);
return $projectRoot;
}