/** * @param $class * @param $proxyFactory * @param $testRunner * @param $mutator * @throws \Exception */ private function calculateRealCoverage($class, ProxyFactory $proxyFactory, PHPUnitRunner $testRunner, Mutator $mutator) { $proxy = $proxyFactory->getProxy($class); $tester = new ProxiedMutationTester($proxy, $class, $testRunner); $this->testPrecondition($tester); $mutator->testMutations($tester, new MutationGenerator($class)); $proxy->loadClass($class); $this->testPostcondition($tester); }
public function testFactoryCachesProxiesAndReturnsAlwaysTheSameInstance() { // arrange $class = $this->createFakeClass("ImaginaryNamespace", "ClassA"); $factory = new ProxyFactory(array($class)); // act $proxy1 = $factory->getProxyForName('\\ImaginaryNamespace\\ClassA'); $proxy2 = $factory->getProxyForName('\\ImaginaryNamespace\\ClassA'); // assert $this->assertSame($proxy1, $proxy2); }