Changeset 409
- Timestamp:
- 03/21/07 17:47:59 (1 year ago)
- Files:
-
- trunk/src/main/php/net/stubbles/ipo/request/stubAbstractRequest.php (modified) (1 diff)
- trunk/src/main/php/net/stubbles/ipo/request/stubRequest.php (modified) (1 diff)
- trunk/src/main/php/net/stubbles/ipo/request/stubRequestPrefixDecorator.php (modified) (1 diff)
- trunk/src/main/php/net/stubbles/ipo/request/stubWebRequest.php (modified) (1 diff)
- trunk/src/test/php/net/stubbles/ipo/request/stubAbstractRequestTestCase.php (modified) (3 diffs)
- trunk/src/test/php/net/stubbles/ipo/request/stubRequestPrefixDecoratorTestCase.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/src/main/php/net/stubbles/ipo/request/stubAbstractRequest.php
r367 r409 209 209 210 210 /** 211 * checks whether a request value is valid or nor 211 * checks whether raw data is valid or not 212 * 213 * @param stubValidator $validator validator to use 214 * @return bool 215 */ 216 public function validateRawData(stubValidator $validator) 217 { 218 return $validator->validate($this->rawData); 219 } 220 221 /** 222 * returns the validated raw data 223 * 224 * If the validator says the value is not valid the return value is null. 225 * 226 * @param stubValidator $validator validator to use 227 * @return string 228 */ 229 public function getValidatedRawData(stubValidator $validator) 230 { 231 $rawData = $this->getRawData(); 232 if ($validator->validate($rawData) == true) { 233 return $this->rawData; 234 } 235 236 return null; 237 } 238 239 /** 240 * returns the raw data filtered 241 * 242 * @param stubFilter $filter 243 * @return mixed 244 * @throws stubFilterException 245 */ 246 public function getFilteredRawData(stubFilter $filter) 247 { 248 $rawData = $this->getRawData(); 249 if (null == $rawData) { 250 if ($filter->hasDefaultValue() == true) { 251 return $filter->getDefaultValue(); 252 } 253 254 return null; 255 } 256 257 return $filter->execute($rawData); 258 } 259 260 /** 261 * returns the raw data 262 * 263 * @return string 264 */ 265 protected abstract function getRawData(); 266 267 /** 268 * checks whether a request value is valid or not 212 269 * 213 270 * @param stubValidator $validator validator to use trunk/src/main/php/net/stubbles/ipo/request/stubRequest.php
r367 r409 108 108 109 109 /** 110 * checks whether raw data is valid or not 111 * 112 * @param stubValidator $validator validator to use 113 * @return bool 114 */ 115 public function validateRawData(stubValidator $validator); 116 117 /** 118 * returns the validated raw data 119 * 120 * If the validator says the raw data is not valid the return value is null. 121 * 122 * @param stubValidator $validator validator to use 123 * @return string 124 */ 125 public function getValidatedRawData(stubValidator $validator); 126 127 /** 128 * returns the raw data filtered 129 * 130 * @param stubFilter $filter 131 * @return mixed 132 * @throws stubFilterException 133 */ 134 public function getFilteredRawData(stubFilter $filter); 135 136 /** 110 137 * checks whether a request value is valid or nor 111 138 * trunk/src/main/php/net/stubbles/ipo/request/stubRequestPrefixDecorator.php
r367 r409 185 185 186 186 /** 187 * checks whether raw data is valid or not 188 * 189 * @param stubValidator $validator validator to use 190 * @return bool 191 */ 192 public function validateRawData(stubValidator $validator) 193 { 194 return $this->request->validateRawData($validator); 195 } 196 197 /** 198 * returns the validated raw data 199 * 200 * If the validator says the value is not valid the return value is null. 201 * 202 * @param stubValidator $validator validator to use 203 * @return string 204 */ 205 public function getValidatedRawData(stubValidator $validator) 206 { 207 return $this->request->getValidatedRawData($validator); 208 } 209 210 /** 211 * returns the raw data filtered 212 * 213 * @param stubFilter $filter 214 * @return mixed 215 * @throws stubFilterException 216 */ 217 public function getFilteredRawData(stubFilter $filter) 218 { 219 return $this->request->getFilteredRawData($filter); 220 } 221 222 /** 187 223 * checks whether a request value is valid or nor 188 224 * trunk/src/main/php/net/stubbles/ipo/request/stubWebRequest.php
r405 r409 66 66 return strtolower($_SERVER['REQUEST_METHOD']); 67 67 } 68 69 /** 70 * returns the raw data 71 * 72 * @return string 73 */ 74 protected function getRawData() 75 { 76 return file_get_contents('php://input'); 77 } 68 78 } 69 79 ?> trunk/src/test/php/net/stubbles/ipo/request/stubAbstractRequestTestCase.php
r367 r409 22 22 class stubTestRequest extends stubAbstractRequest 23 23 { 24 protected $rawData = 'This is the raw request data.'; 25 24 26 protected function doConstuct() 25 27 { … … 32 34 { 33 35 return 'test'; 36 } 37 38 public function setRawData($rawData) 39 { 40 $this->rawData = $rawData; 41 } 42 43 protected function getRawData() 44 { 45 return $this->rawData; 34 46 } 35 47 … … 326 338 $this->assertEqual($this->request->getValueKeys(stubRequest::SOURCE_COOKIE), array('baz')); 327 339 } 340 341 /** 342 * assure that raw data is handles correct 343 */ 344 public function testValidateRawData() 345 { 346 $mockValidator = new MockStubValidator(); 347 $mockValidator->setReturnValueAt(0, 'validate', true); 348 $mockValidator->setReturnValueAt(1, 'validate', false); 349 $this->assertTrue($this->request->validateRawData($mockValidator)); 350 $this->assertFalse($this->request->validateRawData($mockValidator)); 351 } 352 353 /** 354 * assure that raw data is handles correct 355 */ 356 public function testGetValidatedRawData() 357 { 358 $mockValidator = new MockStubValidator(); 359 $mockValidator->setReturnValueAt(0, 'validate', true); 360 $mockValidator->setReturnValueAt(1, 'validate', false); 361 $this->assertEqual($this->request->getValidatedRawData($mockValidator), 'This is the raw request data.'); 362 $this->assertNull($this->request->getValidatedRawData($mockValidator)); 363 } 364 365 /** 366 * assure that raw data is handles correct 367 */ 368 public function testGetFilteredRawData() 369 { 370 $mockFilter = new MockStubFilter(); 371 $mockFilter->setReturnValueAt(0, 'hasDefaultValue', true); 372 $mockFilter->setReturnValueAt(1, 'hasDefaultValue', false); 373 $mockFilter->setReturnValue('getDefaultValue', 'foo'); 374 $mockFilter->setReturnValue('execute', 'bam'); 375 $this->request->setRawData(null); 376 $this->assertEqual($this->request->getFilteredRawData($mockFilter), 'foo'); 377 $this->assertNull($this->request->getFilteredRawData($mockFilter)); 378 379 $this->request->setRawData('bar'); 380 $this->assertEqual($this->request->getFilteredRawData($mockFilter), 'bam'); 381 382 $this->expectException('stubFilterException'); 383 $this->request->getFilteredRawData(new stubTestExceptionFilter()); 384 } 328 385 } 329 386 ?> trunk/src/test/php/net/stubbles/ipo/request/stubRequestPrefixDecoratorTestCase.php
r367 r409 201 201 202 202 /** 203 * assure that raw data is handles correct 204 */ 205 public function testValidateRawData() 206 { 207 $mockValidator = new MockStubValidator(); 208 $this->mockRequest->expectOnce('validateRawData', array($mockValidator)); 209 $this->mockRequest->setReturnValue('validateRawData', false); 210 $this->assertFalse($this->request->validateRawData($mockValidator)); 211 } 212 213 /** 214 * assure that raw data is handles correct 215 */ 216 public function testGetValidatedRawData() 217 { 218 $mockValidator = new MockStubValidator(); 219 $this->mockRequest->expectOnce('getValidatedRawData', array($mockValidator)); 220 $this->mockRequest->setReturnValue('getValidatedRawData', 'foo'); 221 $this->assertEqual($this->request->getValidatedRawData($mockValidator), 'foo'); 222 } 223 224 /** 225 * assure that raw data is handles correct 226 */ 227 public function testGetFilteredRawData() 228 { 229 $mockFilter = new MockStubFilter(); 230 $this->mockRequest->expectOnce('getFilteredRawData', array($mockFilter)); 231 $this->mockRequest->setReturnValue('getFilteredRawData', 'foo'); 232 $this->assertEqual($this->request->getFilteredRawData($mockFilter), 'foo'); 233 } 234 235 /** 203 236 * assure that value keys are delivered correct 204 237 */
