assertContainsOnly()


assertContainsOnly(string $type, Iterator|array $haystack[, boolean $isNativeType = NULL, string $message = ''])

$haystack 并非仅包含类型为 $type 的变量时报告错误,错误讯息由 $message 指定。

$isNativeType 是一个标志,用来表明 $type 是否是原生 PHP 类型。

assertNotContainsOnly() 是与之相反的断言,并接受相同的参数。

assertAttributeContainsOnly()assertAttributeNotContainsOnly() 是便捷包装(convenience wrapper),以某个类或对象的 publicprotectedprivate 属性为搜索范围。


例 A.8: assertContainsOnly() 的用法

  1. <?php
  2. class ContainsOnlyTest extends PHPUnit_Framework_TestCase
  3. {
  4. public function testFailure()
  5. {
  6. $this->assertContainsOnly('string', array('1', '2', 3));
  7. }
  8. }
  9. ?>
  1. phpunit ContainsOnlyTest
  2. PHPUnit 4.8.0 by Sebastian Bergmann and contributors.
  3.  
  4. F
  5.  
  6. Time: 0 seconds, Memory: 5.00Mb
  7.  
  8. There was 1 failure:
  9.  
  10. 1) ContainsOnlyTest::testFailure
  11. Failed asserting that Array (
  12. 0 => '1'
  13. 1 => '2'
  14. 2 => 3
  15. ) contains only values of type "string".
  16.  
  17. /home/sb/ContainsOnlyTest.php:6
  18.  
  19. FAILURES!
  20. Tests: 1, Assertions: 1, Failures: 1.