AbstractTest.php 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. <?php
  2. /**
  3. * Zend Framework
  4. *
  5. * LICENSE
  6. *
  7. * This source file is subject to the new BSD license that is bundled
  8. * with this package in the file LICENSE.txt.
  9. * It is also available through the world-wide-web at this URL:
  10. * http://framework.zend.com/license/new-bsd
  11. * If you did not receive a copy of the license and are unable to
  12. * obtain it through the world-wide-web, please send an email
  13. * to license@zend.com so we can send you a copy immediately.
  14. *
  15. * @category Zend
  16. * @package Zend_Log
  17. * @subpackage UnitTests
  18. * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
  19. * @license http://framework.zend.com/license/new-bsd New BSD License
  20. * @version $Id$
  21. */
  22. if (!defined('PHPUnit_MAIN_METHOD')) {
  23. define('PHPUnit_MAIN_METHOD', 'Zend_Log_Writer_AbstractTest::main');
  24. }
  25. /** Zend_Log_Writer_Abstract */
  26. require_once 'Zend/Log/Writer/Abstract.php';
  27. /**
  28. * @category Zend
  29. * @package Zend_Log
  30. * @subpackage UnitTests
  31. * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
  32. * @license http://framework.zend.com/license/new-bsd New BSD License
  33. * @group Zend_Log
  34. */
  35. class Zend_Log_Writer_AbstractTest extends PHPUnit_Framework_TestCase
  36. {
  37. /**
  38. * @var Zend_Log_Writer_Abstract
  39. */
  40. protected $_writer;
  41. public static function main()
  42. {
  43. $suite = new PHPUnit_Framework_TestSuite(__CLASS__);
  44. $result = PHPUnit_TextUI_TestRunner::run($suite);
  45. }
  46. protected function setUp()
  47. {
  48. $this->_writer = new Zend_Log_Writer_AbstractTest_Concrete();
  49. }
  50. /**
  51. * @group ZF-6085
  52. */
  53. public function testSetFormatter()
  54. {
  55. if (version_compare(phpversion(), '7', '>=')) {
  56. $this->markTestSkipped('Invalid typehinting is PHP Fatal error in PHP7+');
  57. }
  58. require_once 'Zend/Log/Formatter/Simple.php';
  59. $this->_writer->setFormatter(new Zend_Log_Formatter_Simple());
  60. $this->setExpectedException('PHPUnit_Framework_Error');
  61. $this->_writer->setFormatter(new StdClass());
  62. }
  63. public function testAddFilter()
  64. {
  65. $this->_writer->addFilter(1);
  66. require_once 'Zend/Log/Filter/Message.php';
  67. $this->_writer->addFilter(new Zend_Log_Filter_Message('/mess/'));
  68. $this->setExpectedException('Zend_Log_Exception');
  69. $this->_writer->addFilter(new StdClass());
  70. }
  71. /**
  72. * @group ZF-8953
  73. */
  74. public function testFluentInterface()
  75. {
  76. require_once 'Zend/Log/Formatter/Simple.php';
  77. $instance = $this->_writer->addFilter(1)
  78. ->setFormatter(new Zend_Log_Formatter_Simple());
  79. $this->assertTrue($instance instanceof Zend_Log_Writer_AbstractTest_Concrete);
  80. }
  81. }
  82. class Zend_Log_Writer_AbstractTest_Concrete extends Zend_Log_Writer_Abstract
  83. {
  84. protected function _write($event)
  85. {
  86. }
  87. static public function factory($config)
  88. {
  89. }
  90. }
  91. if (PHPUnit_MAIN_METHOD == 'Zend_Log_Writer_AbstractTest::main') {
  92. Zend_Log_Writer_AbstractTest::main();
  93. }