Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test suite #3568

Open
wants to merge 18 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
12 changes: 12 additions & 0 deletions .gitignore
Expand Up @@ -24,3 +24,15 @@
# Drupal
/core
/nbproject/

composer.phar

.idea/DrupalConsole.iml

.idea/modules.xml

.idea/php.xml

.idea/vcs.xml

.idea/workspace.xml
2 changes: 1 addition & 1 deletion .travis.yml
Expand Up @@ -29,7 +29,7 @@ before_script:

script:
- if [ -n "${TRAVIS_BUILD_DIR+1}" ]; then PROJECT_DIR=$TRAVIS_BUILD_DIR; fi
# - phpunit
- phpunit
# - php box.phar build
# - php drupal.phar init
# - php drupal.phar check
Expand Down
76 changes: 0 additions & 76 deletions Test/BaseTestCase.php
Expand Up @@ -2,18 +2,8 @@

namespace Drupal\Console\Test;

use Symfony\Component\Console\Helper\HelperSet;
use Drupal\Console\Helper\TwigRendererHelper;
use Drupal\Console\Helper\HelperTrait;
use Symfony\Component\Config\FileLocator;
use Symfony\Component\DependencyInjection\Loader\YamlFileLoader;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Drupal\Console\Helper\ContainerHelper;

abstract class BaseTestCase extends \PHPUnit_Framework_TestCase
{
use HelperTrait;

public $dir;

/**
Expand All @@ -31,72 +21,6 @@ public function setUpTemporaryDirectory()
$this->dir = sys_get_temp_dir() . "/modules";
}

public function getHelperSet($input = null)
{
if (!$this->helperSet) {
$stringHelper = $this->getMockBuilder('Drupal\Console\Helper\StringHelper')
->disableOriginalConstructor()
->setMethods(['createMachineName'])
->getMock();

$stringHelper->expects($this->any())
->method('createMachineName')
->will($this->returnArgument(0));

$validator = $this->getMockBuilder('Drupal\Console\Helper\ValidatorHelper')
->disableOriginalConstructor()
->setMethods(['validateModuleName'])
->getMock();

$validator->expects($this->any())
->method('validateModuleName')
->will($this->returnArgument(0));

$translator = $this->getTranslatorHelper();

$chain = $this
->getMockBuilder('Drupal\Console\Helper\ChainCommandHelper')
->disableOriginalConstructor()
->setMethods(['addCommand', 'getCommands'])
->getMock();

$drupal = $this
->getMockBuilder('Drupal\Console\Helper\DrupalHelper')
->setMethods(['isBootable', 'getDrupalRoot'])
->getMock();

$siteHelper = $this
->getMockBuilder('Drupal\Console\Helper\SiteHelper')
->disableOriginalConstructor()
->setMethods(['setModulePath', 'getModulePath'])
->getMock();

$siteHelper->expects($this->any())
->method('getModulePath')
->will($this->returnValue($this->dir));

$consoleRoot = __DIR__.'/../';
$container = new ContainerBuilder();
$loader = new YamlFileLoader($container, new FileLocator($consoleRoot));
$loader->load('services.yml');

$this->helperSet = new HelperSet(
[
'renderer' => new TwigRendererHelper(),
'string' => $stringHelper,
'validator' => $validator,
'translator' => $translator,
'site' => $siteHelper,
'chain' => $chain,
'drupal' => $drupal,
'container' => new ContainerHelper($container),
]
);
}

return $this->helperSet;
}

protected function getInputStream($input)
{
$stream = fopen('php://memory', 'r+', false);
Expand Down
188 changes: 188 additions & 0 deletions Test/Builders/a.php
@@ -0,0 +1,188 @@
<?php
namespace Drupal\Console\Test\Builders;

use Drupal\Console\Extension\Manager;

use Drupal\Console\Utils\ChainQueue;
use Drupal\Console\Utils\StringConverter;
use Drupal\Core\Render\ElementInfoManager;
use Drupal\Core\Routing\RouteProvider;
use Drupal\Console\Utils\DrupalApi;
use Drupal\Console\Utils\Site;
use GuzzleHttp\Client;
use Prophecy\Prophet;

use Drupal\Console\Generator\AuthenticationProviderGenerator;
use Drupal\Console\Generator\CommandGenerator;
use Drupal\Console\Generator\EntityBundleGenerator;
use Drupal\Console\Generator\EntityContentGenerator;
use Drupal\Console\Generator\EntityConfigGenerator;
use Drupal\Console\Generator\FormGenerator;
use Drupal\Console\Generator\ServiceGenerator;
use Drupal\Console\Generator\PermissionGenerator;
use Drupal\Console\Generator\ModuleGenerator;
use Drupal\Console\Generator\ControllerGenerator;


class a
{
/** @var Prophet */
private static $prophet;

/**
* @return Manager
*/
public static function extensionManager()
{
return self::prophet()->prophesize(Manager::class)->reveal();
}

/**
* @return \Prophecy\Prophecy\ObjectProphecy
*/
public static function guzzleHttpClient()
{
return self::prophet()->prophesize(Client::class);
}

/**
* @return \Prophecy\Prophecy\ObjectProphecy
*/
public static function drupalApi()
{
return self::prophet()->prophesize(DrupalApi::class);
}
/**
* @return \Prophecy\Prophecy\ObjectProphecy
*/
public static function siteDrupal()
{
return self::prophet()->prophesize(Site::class);
}

/**
* @return \Prophecy\Prophecy\ObjectProphecy
*/
public static function entityBundleGenerator()
{
return self::prophet()->prophesize(EntityBundleGenerator::class);
}

/**
* @return \Prophecy\Prophecy\ObjectProphecy
*/
public static function entityConfigGenerator()
{
return self::prophet()->prophesize(EntityConfigGenerator::class);
}


/**
* @return \Prophecy\Prophecy\ObjectProphecy
*/
public static function permissionGenerator()
{
return self::prophet()->prophesize(PermissionGenerator::class);
}


/**
* @return \Prophecy\Prophecy\ObjectProphecy
*/
public static function moduleGenerator()
{
return self::prophet()->prophesize(ModuleGenerator::class);
}

/**
* @return \Prophecy\Prophecy\ObjectProphecy
*/
public static function controllerGenerator()
{
return self::prophet()->prophesize(ControllerGenerator::class);
}


/**
* @return \Prophecy\Prophecy\ObjectProphecy
*/
public static function authenticationProviderGenerator()
{
return self::prophet()->prophesize(AuthenticationProviderGenerator::class);
}

/**
* @return \Prophecy\Prophecy\ObjectProphecy
*/
public static function entityContentGenerator()
{
return self::prophet()->prophesize(EntityContentGenerator::class);
}
/**
* @return \Prophecy\Prophecy\ObjectProphecy
*/
public static function commandGenerator()
{
return self::prophet()->prophesize(CommandGenerator::class);
}

/**
* @return \Prophecy\Prophecy\ObjectProphecy
*/
public static function stringConverter()
{
return self::prophet()->prophesize(StringConverter::class);
}

/**
* @return \Prophecy\Prophecy\ObjectProphecy
*/
public static function formGenerator()
{
return self::prophet()->prophesize(FormGenerator::class);
}

/**
* @return \Prophecy\Prophecy\ObjectProphecy
*/
public static function routeProvider()
{
return self::prophet()->prophesize(RouteProvider::class);
}

/**
* @return \Prophecy\Prophecy\ObjectProphecy
*/
public static function elementInfoManager()
{
return self::prophet()->prophesize(ElementInfoManager::class);
}

/**
* @return \Prophecy\Prophecy\ObjectProphecy
*/
public static function chainQueue()
{
return self::prophet()->prophesize(ChainQueue::class);
}

/**
* @return \Prophecy\Prophecy\ObjectProphecy
*/
public static function serviceGenerator()
{
return self::prophet()->prophesize(ServiceGenerator::class);
}

/**
* @return Prophet
*/
private static function prophet()
{
if (!self::$prophet) {
self::$prophet = new Prophet();
}

return self::$prophet;
}
}