getScore() публичный Метод

Get score
public getScore ( ) : integer
Результат integer
Пример #1
0
 public function testGlobalScore()
 {
     $dispatcher = new EventDispatcher();
     $testers = array('Activity', 'Composer', 'Followers', 'KnpBundles', 'Readme', 'Travis');
     foreach ($testers as $testerClass) {
         $fqcn = sprintf('\\Knp\\Bundle\\KnpBundlesBundle\\EventListener\\Scoring\\%sListener', $testerClass);
         $tester = new $fqcn();
         $dispatcher->addListener(BundleEvent::UPDATE_SCORE, array($tester, 'onScoreUpdate'));
     }
     $bundle = new Bundle();
     // activity (+4)
     $bundle->setLastCommitAt(new \DateTime('-10days'));
     // composer (+5)
     $bundle->setComposerName('bundle-composer-name');
     // followers (+10)
     $bundle->setNbFollowers(10);
     // recommendation (+5)
     $bundle->addRecommender(new Developer());
     // readme (+5)
     $bundle->setReadme(str_repeat('-', 500));
     // travis (+10)
     $bundle->setUsesTravisCi(true);
     $bundle->setTravisCiBuildStatus(true);
     $dispatcher->dispatch(BundleEvent::UPDATE_SCORE, new BundleEvent($bundle));
     $bundle->recalculateScore();
     $this->assertEquals(39, $bundle->getScore());
 }
Пример #2
0
 /**
  * Populates document with bundle data.
  *
  * @param \Solarium_Document_ReadWrite $document
  * @param Bundle                       $bundle
  * @param \Solarium_Query_Helper       $helper
  */
 private function updateDocumentFromBundle(\Solarium_Document_ReadWrite $document, Bundle $bundle, \Solarium_Query_Helper $helper)
 {
     $document->setField('id', $bundle->getId());
     $document->setField('name', $bundle->getName());
     $document->setField('ownerName', $bundle->getOwnerName());
     $document->setField('ownerType', $bundle->getOwnerType());
     $document->setField('fullName', $bundle->getFullName());
     $document->setField('description', $bundle->getDescription());
     $document->setField('readme', $bundle->getReadme());
     $document->setField('totalScore', $bundle->getScore());
     $document->setField('state', $bundle->getState());
     $document->setField('avatarUrl', $bundle->getOwner()->getAvatarUrl());
     $document->setField('lastCommitAt', $helper->formatDate(clone $bundle->getLastCommitAt()));
     $document->setField('lastTweetedAt', null !== $bundle->getLastTweetedAt() ? $helper->formatDate($bundle->getLastTweetedAt()) : null);
     $keywords = array();
     foreach ($bundle->getKeywords() as $keyword) {
         $keywords[mb_strtolower($keyword->getValue(), 'UTF-8')] = true;
     }
     $document->setField('keywords', array_keys($keywords));
 }
Пример #3
0
 /**
  * Generate Badge images
  *
  * @param Bundle $bundle
  */
 public function generate(Bundle $bundle)
 {
     // Open bg badge image
     $image = $this->imagine->open($this->getResourceDir() . '/images/' . $this->type[self::LONG]);
     $imageShort = $this->imagine->open($this->getResourceDir() . '/images/' . $this->type[self::SHORT]);
     // Bundle Title
     $bundleName = $this->shorten($bundle->getName(), 16);
     $image->draw()->text($bundleName, $this->setFont($this->imagine, $this->font, 14, '085066'), new Point(75, 10));
     // Score points
     $score = $bundle->getScore() ?: 'N/A';
     $image->draw()->text($score, $this->setFont($this->imagine, $this->font, 18), $this->getPositionByType($score, self::LONG));
     $imageShort->draw()->text($score, $this->setFont($this->imagine, $this->font, 16), $this->getPositionByType($score, self::SHORT));
     // Recommend
     $recommenders = $bundle->getNbRecommenders();
     if ($recommenders) {
         $recommendationsText = $recommenders . ' recommendations';
     } else {
         $recommendationsText = 'No recommendations';
     }
     $image->draw()->text($recommendationsText, $this->setFont($this->imagine, $this->font, 9), new Point(92, 33));
     // Check or create dir for generated badges
     $this->createBadgesDir();
     // Remove existing badge
     $this->filesystem->remove($this->getBadgeFile($bundle));
     $this->filesystem->remove($this->getBadgeFile($bundle, self::SHORT));
     // Save badge
     $image->save($this->getBadgeFile($bundle));
     $imageShort->save($this->getBadgeFile($bundle, self::SHORT));
     // Set write permission for father files update
     chmod($this->getBadgeFile($bundle), 0777);
     chmod($this->getBadgeFile($bundle, self::SHORT), 0777);
 }