示例#1
0
 private static function createDataTableTest(DataTable $dt, Block $codeBlock)
 {
     $tryStmt = new TryCatchStatement();
     $codeBlock->appendRenderable($tryStmt);
     $tryBlock = $tryStmt->tryBlock;
     $tryBlock->appendRenderable(new Statement(new AssignExpr('$session', new MethodCall('$this', 'getLoggedSession'))));
     $tryBlock->appendRenderable(new Statement(new MethodCall('$this', 'openInMenu', [new ObjectProperty('$this', 'mapModule'), '$session'])));
     $tryBlock->appendRenderable(new Statement(new MethodCall('$this', 'checkWait', ['$session'])));
     $tryBlock->appendRenderable(new Statement(new AssignExpr('$page', new MethodCall('$session', 'getPage'))));
     $tryBlock->appendRenderable(new Statement(new AssignExpr('$dt', new MethodCall('$page', 'findById', [$dt->getId()]))));
     $tryBlock->appendLine('');
     $tryBlock->appendLine('');
     $var = new Variable('$dt');
     $ifElseBlock = new IfElseStatement($var, null, new Block());
     $ifBlock = $ifElseBlock->if;
     $ifBlock->appendLine('');
     if ($dt->hasPager()) {
         $ifBlock->appendLine('');
         self::createPagerTest($dt, $ifBlock);
     }
     if ($dt->hasColumnFilter()) {
         $ifBlock->appendLine('');
         self::createColumnFilterTest($dt, $ifBlock);
     }
     if ($dt->hasActions()) {
         $ifBlock->appendLine('');
         self::createActionsTest($dt, $ifBlock);
     }
     if ($dt->hasRowOptions()) {
         $ifBlock->appendLine('');
         self::createRowTest($dt, $ifBlock);
     }
     $ifBlock->appendLine('');
     $ifBlock->appendLine('');
     /** @var Block $elseBlock */
     $elseBlock = $ifElseBlock->else;
     $elseBlock->appendRenderable(new Statement(new StaticMethodCall('static', 'assertTrue', [false, 'dt not found'])));
     $tryBlock->appendRenderable($ifElseBlock);
 }