当前位置: 首页>>代码示例>>PHP>>正文


PHP FlowQuery::nextUntil方法代码示例

本文整理汇总了PHP中TYPO3\Eel\FlowQuery\FlowQuery::nextUntil方法的典型用法代码示例。如果您正苦于以下问题:PHP FlowQuery::nextUntil方法的具体用法?PHP FlowQuery::nextUntil怎么用?PHP FlowQuery::nextUntil使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在TYPO3\Eel\FlowQuery\FlowQuery的用法示例。


在下文中一共展示了FlowQuery::nextUntil方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: nextUntilOperationTests

 /**
  * Tests on a tree:
  *
  * a
  *   a1
  *   a2
  *   a3 (testNodeType)
  *   a4
  *   a5 (testNodeType)
  * b
  *   b1
  *   b2
  *   b3 (testNodeType3)
  *   b4
  *
  * @test
  * @dataProvider nextUntilOperationDataProvider()
  */
 public function nextUntilOperationTests(array $currentNodePaths, $subject, array $expectedNodePaths, array $unexpectedNodePaths)
 {
     $nodeTypeManager = $this->objectManager->get('TYPO3\\TYPO3CR\\Domain\\Service\\NodeTypeManager');
     $testNodeType = $nodeTypeManager->getNodeType('TYPO3.TYPO3CR.Testing:NodeType');
     $rootNode = $this->node->getNode('/');
     $nodeA = $rootNode->createNode('a');
     $nodeA->createNode('a1');
     $nodeA->createNode('a2');
     $nodeA->createNode('a3', $testNodeType);
     $nodeA->createNode('a4');
     $nodeA->createNode('a5', $testNodeType);
     $nodeB = $rootNode->createNode('b');
     $nodeB->createNode('b1');
     $nodeB->createNode('b2');
     $nodeB->createNode('b3', $testNodeType);
     $nodeB->createNode('b4');
     $currentNodes = array();
     foreach ($currentNodePaths as $currentNodePath) {
         $currentNodes[] = $rootNode->getNode($currentNodePath);
     }
     if (is_array($subject)) {
         $subjectNodes = array();
         foreach ($subject as $subjectNodePath) {
             $subjectNodes[] = $rootNode->getNode($subjectNodePath);
         }
         $subject = $subjectNodes;
     }
     $q = new FlowQuery($currentNodes);
     $result = $q->nextUntil($subject)->get();
     if ($expectedNodePaths === array() && $unexpectedNodePaths === array()) {
         $this->assertEmpty($result);
     } else {
         foreach ($expectedNodePaths as $expectedNodePath) {
             $expectedNode = $rootNode->getNode($expectedNodePath);
             if (!in_array($expectedNode, $result)) {
                 $this->fail(sprintf('Expected result to contain node "%s"', $expectedNodePath));
             }
         }
         foreach ($unexpectedNodePaths as $unexpectedNodePath) {
             $unexpectedNode = $rootNode->getNode($unexpectedNodePath);
             if (in_array($unexpectedNode, $result)) {
                 $this->fail(sprintf('Expected result not to contain node "%s"', $unexpectedNodePath));
             }
         }
     }
 }
开发者ID:hlubek,项目名称:neos-development-collection,代码行数:64,代码来源:NextUntilOperationTest.php


注:本文中的TYPO3\Eel\FlowQuery\FlowQuery::nextUntil方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。