Vendor update && Started using DoctrineMigrations

This commit is contained in:
Polonkai Gergely
2012-07-23 17:09:03 +02:00
parent 7c36f93436
commit bf46316347
1102 changed files with 103189 additions and 7 deletions

View File

@@ -0,0 +1,64 @@
<?php
/*
* Copyright 2011 Johannes M. Schmitt <schmittjoh@gmail.com>
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
namespace JMS\AopBundle\Tests\Aop;
use JMS\AopBundle\Aop\PointcutContainer;
use JMS\AopBundle\Aop\InterceptorLoader;
class InterceptorLoaderTest extends \PHPUnit_Framework_TestCase
{
public function testLoadInterceptors()
{
$interceptor = $this->getMock('CG\Proxy\MethodInterceptorInterface');
list($loader, $container) = $this->getLoader(array(
'JMS\AopBundle\Tests\Aop\InterceptorLoaderTestClass' => array(
'foo' => array('foo'),
),
));
$container
->expects($this->once())
->method('get')
->with($this->equalTo('foo'))
->will($this->returnValue($interceptor))
;
$method = new \ReflectionMethod('JMS\AopBundle\Tests\Aop\InterceptorLoaderTestClass', 'foo');
$this->assertSame(array($interceptor), $loader->loadInterceptors($method));
// yes, twice
$this->assertSame(array($interceptor), $loader->loadInterceptors($method));
}
private function getLoader(array $interceptors = array())
{
$container = $this->getMock('Symfony\Component\DependencyInjection\ContainerInterface');
return array(new InterceptorLoader($container, $interceptors), $container);
}
}
class InterceptorLoaderTestClass
{
public function foo()
{
}
}

View File

@@ -0,0 +1,47 @@
<?php
/*
* Copyright 2011 Johannes M. Schmitt <schmittjoh@gmail.com>
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
namespace JMS\AopBundle\Tests\Aop;
use JMS\AopBundle\Aop\RegexPointcut;
class RegexPointcutTest extends \PHPUnit_Framework_TestCase
{
public function testMatchesClass()
{
$pointcut = new RegexPointcut('');
$this->assertTrue($pointcut->matchesClass(new \ReflectionClass('stdClass')));
}
public function testMatchesMethod()
{
$pointcut = new RegexPointcut('foo$');
$method = new \ReflectionMethod('JMS\AopBundle\Tests\Aop\RegexPointcutTestClass', 'foo');
$this->assertTrue($pointcut->matchesMethod($method));
$method = new \ReflectionMethod('JMS\AopBundle\Tests\Aop\RegexPointcutTestClass', 'bar');
$this->assertFalse($pointcut->matchesMethod($method));
}
}
class RegexPointcutTestClass
{
public function foo() {}
public function bar() {}
}

View File

@@ -0,0 +1,39 @@
<?php
/*
* Copyright 2011 Johannes M. Schmitt <schmittjoh@gmail.com>
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
namespace JMS\AopBundle\Tests\DependencyInjection\Compiler\Fixture;
use CG\Proxy\MethodInvocation;
use CG\Proxy\MethodInterceptorInterface;
class LoggingInterceptor implements MethodInterceptorInterface
{
private $log = array();
public function getLog()
{
return $this->log;
}
public function intercept(MethodInvocation $invocation)
{
$this->log[] = $invocation->reflection->name;
return $invocation->proceed();
}
}

View File

@@ -0,0 +1,34 @@
<?php
/*
* Copyright 2011 Johannes M. Schmitt <schmittjoh@gmail.com>
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
namespace JMS\AopBundle\Tests\DependencyInjection\Compiler\Fixture;
use JMS\AopBundle\Aop\PointcutInterface;
class LoggingPointcut implements PointcutInterface
{
public function matchesClass(\ReflectionClass $class)
{
return true;
}
public function matchesMethod(\ReflectionMethod $method)
{
return false !== strpos($method->name, 'delete');
}
}

View File

@@ -0,0 +1,32 @@
<?php
/*
* Copyright 2011 Johannes M. Schmitt <schmittjoh@gmail.com>
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
namespace JMS\AopBundle\Tests\DependencyInjection\Compiler\Fixture;
class TestService
{
public function add()
{
return true;
}
public function delete()
{
return true;
}
}

View File

@@ -0,0 +1,96 @@
<?php
/*
* Copyright 2011 Johannes M. Schmitt <schmittjoh@gmail.com>
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
namespace JMS\AopBundle\Tests\DependencyInjection\Compiler;
use JMS\AopBundle\Exception\RuntimeException;
use Symfony\Component\DependencyInjection\Compiler\ResolveParameterPlaceHoldersPass;
use JMS\AopBundle\DependencyInjection\JMSAopExtension;
use JMS\AopBundle\DependencyInjection\Compiler\PointcutMatchingPass;
use Symfony\Component\HttpKernel\Util\Filesystem;
use Symfony\Component\DependencyInjection\ContainerBuilder;
class PointcutMatchingPassTest extends \PHPUnit_Framework_TestCase
{
private $cacheDir;
private $fs;
public function testProcess()
{
$container = $this->getContainer();
$container
->register('pointcut', 'JMS\AopBundle\Tests\DependencyInjection\Compiler\Fixture\LoggingPointcut')
->addTag('jms_aop.pointcut', array('interceptor' => 'interceptor'))
;
$container
->register('interceptor', 'JMS\AopBundle\Tests\DependencyInjection\Compiler\Fixture\LoggingInterceptor')
;
$container
->register('test', 'JMS\AopBundle\Tests\DependencyInjection\Compiler\Fixture\TestService')
;
$this->process($container);
$service = $container->get('test');
$this->assertInstanceOf('JMS\AopBundle\Tests\DependencyInjection\Compiler\Fixture\TestService', $service);
$this->assertTrue($service->add());
$this->assertTrue($service->delete());
$this->assertEquals(array('delete'), $container->get('interceptor')->getLog());
}
protected function setUp()
{
$this->cacheDir = sys_get_temp_dir().'/jms_aop_test';
$this->fs = new Filesystem();
if (is_dir($this->cacheDir)) {
$this->fs->remove($this->cacheDir);
}
if (false === @mkdir($this->cacheDir, 0777, true)) {
throw new RuntimeException(sprintf('Could not create cache dir "%s".', $this->cacheDir));
}
}
protected function tearDown()
{
$this->fs->remove($this->cacheDir);
}
private function getContainer()
{
$container = new ContainerBuilder();
$extension = new JMSAopExtension();
$extension->load(array(array(
'cache_dir' => $this->cacheDir,
)), $container);
return $container;
}
private function process(ContainerBuilder $container)
{
$pass = new ResolveParameterPlaceHoldersPass();
$pass->process($container);
$pass = new PointcutMatchingPass();
$pass->process($container);
}
}