當前位置: 首頁>>代碼示例>>PHP>>正文


PHP PhabricatorOwnersPackage::findLongestPathsPerPackage方法代碼示例

本文整理匯總了PHP中PhabricatorOwnersPackage::findLongestPathsPerPackage方法的典型用法代碼示例。如果您正苦於以下問題:PHP PhabricatorOwnersPackage::findLongestPathsPerPackage方法的具體用法?PHP PhabricatorOwnersPackage::findLongestPathsPerPackage怎麽用?PHP PhabricatorOwnersPackage::findLongestPathsPerPackage使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在PhabricatorOwnersPackage的用法示例。


在下文中一共展示了PhabricatorOwnersPackage::findLongestPathsPerPackage方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: testFindLongestPathsPerPackage

 function testFindLongestPathsPerPackage()
 {
     $rows = array(array('id' => 1, 'excluded' => 0, 'path' => 'src/'), array('id' => 1, 'excluded' => 1, 'path' => 'src/releeph/'), array('id' => 2, 'excluded' => 0, 'path' => 'src/releeph/'));
     $paths = array('src/' => array('src/a.php' => true, 'src/releeph/b.php' => true), 'src/releeph/' => array('src/releeph/b.php' => true));
     $this->assertEqual(array(1 => strlen('src/'), 2 => strlen('src/releeph/')), PhabricatorOwnersPackage::findLongestPathsPerPackage($rows, $paths));
     $paths = array('src/' => array('src/releeph/b.php' => true), 'src/releeph/' => array('src/releeph/b.php' => true));
     $this->assertEqual(array(2 => strlen('src/releeph/')), PhabricatorOwnersPackage::findLongestPathsPerPackage($rows, $paths));
 }
開發者ID:denghp,項目名稱:phabricator,代碼行數:8,代碼來源:PhabricatorOwnersPackageTestCase.php

示例2: testFindLongestPathsPerPackage

 public function testFindLongestPathsPerPackage()
 {
     $rows = array(array('id' => 1, 'excluded' => 0, 'dominion' => PhabricatorOwnersPackage::DOMINION_STRONG, 'path' => 'src/'), array('id' => 1, 'excluded' => 1, 'dominion' => PhabricatorOwnersPackage::DOMINION_STRONG, 'path' => 'src/releeph/'), array('id' => 2, 'excluded' => 0, 'dominion' => PhabricatorOwnersPackage::DOMINION_STRONG, 'path' => 'src/releeph/'));
     $paths = array('src/' => array('src/a.php' => true, 'src/releeph/b.php' => true), 'src/releeph/' => array('src/releeph/b.php' => true));
     $this->assertEqual(array(1 => strlen('src/'), 2 => strlen('src/releeph/')), PhabricatorOwnersPackage::findLongestPathsPerPackage($rows, $paths));
     $paths = array('src/' => array('src/releeph/b.php' => true), 'src/releeph/' => array('src/releeph/b.php' => true));
     $this->assertEqual(array(2 => strlen('src/releeph/')), PhabricatorOwnersPackage::findLongestPathsPerPackage($rows, $paths));
     // Test packages with weak dominion. Here, only package #2 should own the
     // path. Package #1's claim is ceded to Package #2 because it uses weak
     // rules. Package #2 gets the claim even though it also has weak rules
     // because there is no more-specific package.
     $rows = array(array('id' => 1, 'excluded' => 0, 'dominion' => PhabricatorOwnersPackage::DOMINION_WEAK, 'path' => 'src/'), array('id' => 2, 'excluded' => 0, 'dominion' => PhabricatorOwnersPackage::DOMINION_WEAK, 'path' => 'src/applications/'));
     $pvalue = array('src/applications/main/main.c' => true);
     $paths = array('src/' => $pvalue, 'src/applications/' => $pvalue);
     $this->assertEqual(array(2 => strlen('src/applications/')), PhabricatorOwnersPackage::findLongestPathsPerPackage($rows, $paths));
     // Now, add a more specific path to Package #1. This tests nested ownership
     // in packages with weak dominion rules. This time, Package #1 should end
     // up back on top, with Package #2 cedeing control to its more specific
     // path.
     $rows[] = array('id' => 1, 'excluded' => 0, 'dominion' => PhabricatorOwnersPackage::DOMINION_WEAK, 'path' => 'src/applications/main/');
     $paths['src/applications/main/'] = $pvalue;
     $this->assertEqual(array(1 => strlen('src/applications/main/')), PhabricatorOwnersPackage::findLongestPathsPerPackage($rows, $paths));
 }
開發者ID:rchicoli,項目名稱:phabricator,代碼行數:23,代碼來源:PhabricatorOwnersPackageTestCase.php


注:本文中的PhabricatorOwnersPackage::findLongestPathsPerPackage方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。