[ Index ]

PHP Cross Reference of Web Application Component Toolkit

title

Body

[close]

/tests/cases/template/tags/core/ -> import.test.php (source)

   1  <?php
   2  /**
   3   * @package WACT_TESTS
   4   * @version $Id: import.test.php,v 1.6 2004/11/12 21:25:18 jeffmoore Exp $
   5   */
   6  require_once WACT_ROOT . 'template/template.inc.php';
   7  
   8  /**
   9  * @package WACT_TESTS
  10  */
  11  class CoreImportTagTestCase extends UnitTestCase {
  12      function CoreImportTagTestCase($name = 'CoreImportTagTestCase') {
  13          $this->UnitTestCase($name);
  14      }
  15  
  16      function setUp() {
  17          $Vars = 'Var = outer';
  18          RegisterTestingTemplate('/tags/core/import/outer.vars', $Vars);        
  19  
  20          $Vars = 'Var = middle';
  21          RegisterTestingTemplate('/tags/core/import/middle.vars', $Vars);        
  22  
  23          $Vars = 'Var = inner';
  24          RegisterTestingTemplate('/tags/core/import/inner.vars', $Vars);        
  25      }
  26  
  27      function tearDown() {
  28          ClearTestingTemplates();
  29      }
  30      
  31      //----------------------------------------------------------------------------
  32      function testImport() {
  33          $Vars = 'Color = Blue';
  34          RegisterTestingTemplate('/tags/core/import/test.vars', $Vars);        
  35      
  36          $Template = '<core:IMPORT file="/tags/core/import/test.vars">{$Color}';
  37          RegisterTestingTemplate('/tags/core/import/import.html', $Template);        
  38  
  39          $Page =& new Template('/tags/core/import/import.html');
  40          $output = $Page->capture();
  41          $this->assertEqual($output, 'Blue');        
  42  
  43      }
  44  
  45      //----------------------------------------------------------------------------
  46      function testBadImportSyntax() {
  47          $Template = '<core:IMPORT file="/tags/core/import/test.vars"></core:import>';
  48          RegisterTestingTemplate('/tags/core/import/badsyntax.html', $Template);        
  49  
  50          $Page =& new Template('/tags/core/import/badsyntax.html');
  51          $output = $Page->capture();
  52  
  53          $this->assertError();
  54          $this->swallowErrors();
  55      }
  56  
  57      //----------------------------------------------------------------------------
  58      function testImportMissingFile() {
  59  
  60          $Template = '<core:IMPORT file="/cant/find/this/file/name/huh">';
  61          RegisterTestingTemplate('/tags/core/import/missingfile.html', $Template);        
  62  
  63          $Page =& new Template('/tags/core/import/missingfile.html');
  64          $output = $Page->capture();
  65  
  66          $this->assertError();
  67          $this->swallowErrors();
  68      }
  69  
  70      //----------------------------------------------------------------------------
  71      function testMissingFileAttribute() {
  72          $Template = '<core:import>';
  73          RegisterTestingTemplate('/tags/core/import/missingfileattribute.html', $Template);        
  74  
  75          $Page =& new Template('/tags/core/import/missingfileattribute.html');
  76  
  77          $this->assertError();
  78          $this->swallowErrors();
  79  
  80      }
  81  
  82      //----------------------------------------------------------------------------
  83      function testEmptyFileAttribute() {
  84          $Template = '<core:import file>';
  85          RegisterTestingTemplate('/tags/core/import/testemptyfileattribute.html', $Template);        
  86  
  87          $Page =& new Template('/tags/core/import/testemptyfileattribute.html');
  88  
  89          $this->assertError();
  90          $this->swallowErrors();
  91  
  92      }
  93  
  94      //----------------------------------------------------------------------------
  95      function testImportFileAttributeVariable() {
  96  
  97          $Vars = 'Color = Blue';
  98          RegisterTestingTemplate('/tags/core/import/test.vars', $Vars);        
  99  
 100          $Template = '<core:SET FILENAME="/tags/core/import/test.vars"><core:import file="{$FILENAME}">{$Color}';
 101          RegisterTestingTemplate('/tags/core/import/fileattributevariable.html', $Template);        
 102  
 103          $Page =& new Template('/tags/core/import/fileattributevariable.html');
 104          $output = $Page->capture();
 105          $this->assertEqual($output, 'Blue');        
 106  
 107      }
 108  
 109      //----------------------------------------------------------------------------
 110      function testImportDataSpace() {
 111  
 112          $Template = 
 113              '<core:IMPORT file="/tags/core/import/outer.vars">'.
 114              '<core:datasource id="middle">' .
 115              '<core:IMPORT file="/tags/core/import/middle.vars">'.
 116              '{$Var}{$Unassigned}:{$^Var}{$^Unassigned}:{$#Var}{$#Unassigned}' .
 117              '</core:datasource>';
 118          RegisterTestingTemplate('/tags/core/dataspace/importdataspace.html', $Template);        
 119  
 120          $Page =& new Template('/tags/core/dataspace/importdataspace.html');
 121          $output = $Page->capture();
 122          $this->assertEqual($output, 'middle:outer:outer');        
 123  
 124      }
 125  
 126      //----------------------------------------------------------------------------
 127      function testImportNestedDataSpace() {
 128          $Template = 
 129              '<core:IMPORT file="/tags/core/import/outer.vars">'.
 130              '{$Var}{$Unassigned}:{$^Var}{$^Unassigned}:{$#Var}{$#Unassigned}' .
 131              '<core:datasource id="middle">' .
 132              '<core:IMPORT file="/tags/core/import/middle.vars">'.
 133              '-{$Var}{$Unassigned}:{$^Var}{$^Unassigned}:{$#Var}{$#Unassigned}' .
 134              '<core:datasource id="inner">' . 
 135              '<core:IMPORT file="/tags/core/import/inner.vars">'.
 136              '-{$Var}{$Unassigned}:{$^Var}{$^Unassigned}:{$#Var}{$#Unassigned}' .
 137              '</core:datasource>' .
 138              '</core:datasource>';
 139  
 140          RegisterTestingTemplate('/tags/core/import/importnesteddataspace.html', $Template);        
 141          $Page =& new Template('/tags/core/import/importnesteddataspace.html');
 142          $output = $Page->capture();
 143          $this->assertEqual($output, 'outer::outer-middle:outer:outer-inner:middle:outer');        
 144  
 145      }
 146  
 147  }
 148  ?>


Generated: Sun Nov 28 19:36:09 2004 Cross-referenced by PHPXref 0.5