/** * @test */ public function shouldNotHaveChangesWithOnlyChangedScore() { $bundle = new Bundle('knplabs/KnpMenuBundle'); $bundle->setScore(1000); $bundle->setReadme('readme number one'); $bundle->setLastCommitAt(new \DateTime('-10 day')); $bundle->setNbFollowers(100); $bundle->setNbForks(10); $beforeChange = $bundle->getStatusHash(); $bundle->setScore(1100); $afterChange = $bundle->getStatusHash(); $this->assertEquals($beforeChange, $afterChange); }
public function setUp() { $kernel = static::createKernel(); $kernel->boot(); if ($kernel->getContainer()->getParameter('database_driver') == 'pdo_sqlite') { $this->markTestSkipped("The SQLite does not support joins."); } $this->em = $kernel->getContainer()->get('knp_bundles.entity_manager'); $fileLocator = new FileLocator(__DIR__ . '/fixtures/'); $path = $fileLocator->locate('trending-bundles.yml'); $data = Yaml::parse($path); $developer = new Developer(); $developer->setName('someName'); $developer->setScore(0); $this->em->persist($developer); foreach ($data['bundles'] as $bundleName => $bundleData) { $bundle = new Bundle('vendor/' . $bundleName); $bundle->setDescription('some description'); $bundle->setScore(100); $bundle->setOwner($developer); foreach ($bundleData['scores'] as $scoreData) { $bundle->setDescription(md5(time() . serialize($scoreData))); $score = new Score(); $score->setDate(new \DateTime($scoreData['date'])); $score->setBundle($bundle); $score->setValue($scoreData['value']); $this->em->persist($score); } $this->em->persist($bundle); } $this->em->flush(); }
/** * @Given /^the site has following bundles:$/ */ public function theSiteHasFollowingBundles(TableNode $table) { $entityManager = $this->getEntityManager(); foreach ($table->getHash() as $row) { $user = $this->users[$row['username']]; $bundle = new Entity\Bundle(); $bundle->fromArray(array('name' => $row['name'], 'user' => $user, 'username' => $user->getName(), 'description' => $row['description'], 'lastCommitAt' => new \DateTime($row['lastCommitAt']))); $bundle->setScore($row['score']); $this->setPrivateProperty($bundle, "trend1", $row['trend1']); $entityManager->persist($bundle); } $entityManager->flush(); }
/** * @Given /^the site has following bundles:$/ */ public function theSiteHasFollowingBundles(TableNode $table) { $entityManager = $this->getEntityManager(); $this->bundles = array(); foreach ($table->getHash() as $row) { if (isset($this->developers[$row['username']])) { $owner = $this->developers[$row['username']]; } elseif (isset($this->organizations[$row['username']])) { $owner = $this->organizations[$row['username']]; } else { continue; } $bundle = new Entity\Bundle(); $bundle->fromArray(array('name' => $row['name'], 'owner' => $owner, 'ownerName' => $owner->getName(), 'description' => $row['description'], 'readme' => isset($row['readme']) ? $row['readme'] : '', 'state' => isset($row['state']) ? $row['state'] : Entity\Bundle::STATE_UNKNOWN)); if (isset($row['license'])) { $bundle->setLicenseType($row['license']); } if (isset($row['createdAt'])) { $bundle->setCreatedAt(new \DateTime($row['createdAt'])); } if (isset($row['lastCommitAt'])) { $bundle->setLastCommitAt(new \DateTime($row['lastCommitAt'])); } $bundle->setScore($row['score']); $versionsHistory['dependencies']['dev-master'] = array('name' => 'friendsofsymfony/user-bundle', 'extra' => array('branch-alias' => array('dev-master' => '2.0.x-dev')), 'require' => array('php' => '>=5.3.2'), 'require-dev' => '', 'suggest' => ''); $bundle->setVersionsHistory($versionsHistory); $this->setPrivateProperty($bundle, "trend1", $row['trend1']); if (isset($row['recommendedBy'])) { $ownerNames = explode(',', $row['recommendedBy']); foreach ($ownerNames as $ownerName) { $owner = $this->developers[trim($ownerName)]; $bundle->addRecommender($owner); $owner->addRecommendedBundle($bundle); $entityManager->persist($owner); } } $entityManager->persist($bundle); $this->bundles[$bundle->getName()] = $bundle; } $entityManager->flush(); }