public function testDontAddVersionOnOtherPackages()
{
// Make key available in the ENVIRONMENT
putenv(self::KEY_ENV_VARIABLE . '=KEY');
// Mock a Package
$package = $this->getMockBuilder('Composer\\Package\\PackageInterface')->setMethods(['getName', 'getPrettyVersion', 'getDistUrl', 'setDistUrl'])->getMockForAbstractClass();
$package->expects($this->once())->method('getName')->willReturn('another-package');
$package->expects($this->never())->method('getPrettyVersion');
$package->expects($this->never())->method('getDistUrl');
$package->expects($this->never())->method('setDistUrl');
// Mock an Operation
$operationClass = 'Composer\\DependencyResolver\\Operation\\InstallOperation';
$operation = $this->getMockBuilder($operationClass)->disableOriginalConstructor()->setMethods(['getJobType', 'getPackage'])->getMock();
$operation->expects($this->once())->method('getJobType')->willReturn('install');
$operation->expects($this->once())->method('getPackage')->willReturn($package);
// Mock a PackageEvent
$packageEvent = $this->getMockBuilder('Composer\\Installer\\PackageEvent')->disableOriginalConstructor()->setMethods(['getOperation'])->getMock();
$packageEvent->expects($this->once())->method('getOperation')->willReturn($operation);
// Call addVersion
$plugin = new Plugin();
$plugin->addVersion($packageEvent);
}