[ Index ] |
PHP Cross Reference of Web Application Component Toolkit |
[Summary view] [Print] [Text view]
1 <?php 2 /** 3 * @package WACT_TESTS 4 * @version $Id: domain.test.php,v 1.3 2004/11/12 21:25:20 jeffmoore Exp $ 5 */ 6 7 require_once 'singlefield.inc.php'; 8 require_once WACT_ROOT . 'validation/rules/domain.inc.php'; 9 10 class DomainRuleTestCase extends SingleFieldRuleTestCase { 11 function DomainRuleTestCase($name = 'DomainRuleTestCase') { 12 $this->UnitTestCase($name); 13 } 14 function testDomainRule() { 15 $this->validator->addRule(new DomainRule('testfield')); 16 17 $Data =& new DataSpace(); 18 $Data->set('testfield', 'sourceforge.net'); 19 20 $this->ErrorList->expectNever('addError'); 21 22 $this->validator->validate($Data); 23 $this->assertTrue($this->validator->IsValid()); 24 } 25 function testDomainRuleBlank() { 26 $this->validator->addRule(new DomainRule('testfield')); 27 28 $Data =& new DataSpace(); 29 $Data->set('testfield', ''); 30 31 $this->ErrorList->expectNever('addError'); 32 33 $this->validator->validate($Data); 34 $this->assertTrue($this->validator->IsValid()); 35 } 36 function testDomainRuleBadCharacters() { 37 $this->validator->addRule(new DomainRule('testfield')); 38 39 $Data =& new DataSpace(); 40 $Data->set('testfield', 'source#&%forge.net'); 41 42 $this->ErrorList->expectOnce('addError', array('validation', 'BAD_DOMAIN_CHARACTERS', array('Field'=>'testfield'), NULL)); 43 44 $this->validator->validate($Data); 45 $this->assertFalse($this->validator->IsValid()); 46 } 47 function testDomainRuleDoubleHyphens() { 48 $this->validator->addRule(new DomainRule('testfield')); 49 50 $Data =& new DataSpace(); 51 $Data->set('testfield', 'source--forge.net'); 52 53 $this->ErrorList->expectOnce('addError', array('validation', 'BAD_DOMAIN_DOUBLE_HYPHENS', array('Field'=>'testfield'), NULL)); 54 55 $this->validator->validate($Data); 56 $this->assertFalse($this->validator->IsValid()); 57 } 58 function testDomainRuleTooLarge() { 59 $this->validator->addRule(new DomainRule('testfield')); 60 61 $segment = "abcdefg-hijklmnop-qrs-tuv-wx-yz-ABCDEFG-HIJKLMNOP-QRS-TUV-WX-YZ-0123456789"; 62 63 $Data =& new DataSpace(); 64 $Data->set('testfield', $segment . '.net'); 65 66 $this->ErrorList->expectOnce('addError', array('validation', 'BAD_DOMAIN_SEGMENT_TOO_LARGE', array('Field'=>'testfield'), array('segment'=>$segment))); 67 68 $this->validator->validate($Data); 69 $this->assertFalse($this->validator->IsValid()); 70 } 71 function testDomainHyphenBegin() { 72 $this->validator->addRule(new DomainRule('testfield')); 73 74 $segment = "-sourceforge"; 75 76 $Data =& new DataSpace(); 77 $Data->set('testfield', $segment . '.net'); 78 79 $this->ErrorList->expectOnce('addError', array('validation', 'BAD_DOMAIN_HYPHENS', array('Field'=>'testfield'), array('segment'=>$segment))); 80 81 $this->validator->validate($Data); 82 $this->assertFalse($this->validator->IsValid()); 83 } 84 function testDomainRuleHyphenEnd() { 85 $this->validator->addRule(new DomainRule('testfield')); 86 87 $segment = "sourceforge-"; 88 89 $Data =& new DataSpace(); 90 $Data->set('testfield', $segment . '.net'); 91 92 $this->ErrorList->expectOnce('addError', array('validation', 'BAD_DOMAIN_HYPHENS', array('Field'=>'testfield'), array('segment'=>$segment))); 93 94 $this->validator->validate($Data); 95 $this->assertFalse($this->validator->IsValid()); 96 } 97 function testDomainRuleCombination() { 98 $this->validator->addRule(new DomainRule('testfield')); 99 100 $Data =& new DataSpace(); 101 $Data->set('testfield', '.n..aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.'); 102 103 $this->ErrorList->expectCallCount('addError', 4); 104 105 $this->ErrorList->expectArgumentsAt(0, 106 'addError', 107 array('validation', 'BAD_DOMAIN_STARTING_PERIOD', array('Field'=>'testfield'), NULL)); 108 109 $this->ErrorList->expectArgumentsAt(1, 110 'addError', 111 array('validation', 'BAD_DOMAIN_ENDING_PERIOD', array('Field'=>'testfield'), NULL)); 112 113 $this->ErrorList->expectArgumentsAt(2, 114 'addError', 115 array('validation', 'BAD_DOMAIN_DOUBLE_DOTS', array('Field'=>'testfield'), NULL)); 116 117 $this->ErrorList->expectArgumentsAt(3, 118 'addError', 119 array('validation', 'BAD_DOMAIN_SEGMENT_TOO_LARGE', array('Field'=>'testfield'), array('segment' => 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'))); 120 121 $this->validator->validate($Data); 122 $this->assertFalse($this->validator->IsValid()); 123 } 124 function testDomainRuleDoubleDomain() { 125 $this->validator->addRule(new DomainRule('testfield')); 126 127 $Data =& new DataSpace(); 128 $Data->set('testfield', 'microsoft.co.uk'); 129 130 $this->ErrorList->expectNever('addError'); 131 132 $this->validator->validate($Data); 133 $this->assertTrue($this->validator->IsValid()); 134 } 135 function testDomainRuleLocalDomain() { 136 $this->validator->addRule(new DomainRule('testfield')); 137 138 $Data =& new DataSpace(); 139 $Data->set('testfield', 'localhost'); 140 141 $this->ErrorList->expectNever('addError'); 142 143 $this->validator->validate($Data); 144 $this->assertTrue($this->validator->IsValid()); 145 } 146 } 147 148 ?>
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Sun Nov 28 19:36:09 2004 | Cross-referenced by PHPXref 0.5 |