bearsunday / BEAR.Sunday

A resource-oriented application framework
http://bearsunday.github.io/
MIT License
246 stars 28 forks source link

MySQLのrootにパスワードが設定されている時phpunitの実行でFatal error #12

Closed kaepapa closed 12 years ago

kaepapa commented 12 years ago

$ php -r 'echo $_ENV["BEAR_DB_ID"];' root

$ php -r 'echo $_ENV["BEAR_DB_PASSWORD"];' hoge

$ php -i | grep variables_order variables_order => EGPCS => EGPCS

$ phpunit PHPUnit 3.6.11 by Sebastian Bergmann.

Configuration read from /home/shige/BEAR/BEAR.Sunday/phpunit.xml.dist

run:sandbox mode=Dev cahce=enable .........................ESSESE.........PHP Fatal error: Method BEAR\Resource\Request::toString() must not throw an exception in /home/shige/BEAR/BEAR.Sunday/apps/sandbox/tmp/smarty/template_c/7b6a9f730f42594db0bc013b98b57567110676b3.file.Posts.tpl.php on line 52 PHP Stack trace: PHP 1. {main}() /usr/bin/phpunit:0 PHP 2. PHPUnit_TextUI_Command::main() /usr/bin/phpunit:46 PHP 3. PHPUnit_TextUI_Command->run() /usr/share/php/PHPUnit/TextUI/Command.php:130 PHP 4. PHPUnit_TextUI_TestRunner->doRun() /usr/share/php/PHPUnit/TextUI/Command.php:192 PHP 5. PHPUnit_Framework_TestSuite->run() /usr/share/php/PHPUnit/TextUI/TestRunner.php:325 PHP 6. PHPUnit_Framework_TestSuite->run() /usr/share/php/PHPUnit/Framework/TestSuite.php:705 PHP 7. PHPUnit_Framework_TestSuite->runTest() /usr/share/php/PHPUnit/Framework/TestSuite.php:745 PHP 8. PHPUnit_Framework_TestCase->run() /usr/share/php/PHPUnit/Framework/TestSuite.php:772 PHP 9. PHPUnit_Framework_TestResult->run() /usr/share/php/PHPUnit/Framework/TestCase.php:751 PHP 10. PHP_Invoker->invoke() /usr/share/php/PHPUnit/Framework/TestResult.php:647 PHP 11. call_user_func_array() /usr/share/php/PHP/Invoker.php:93 PHP 12. PHPUnit_Framework_TestCase->runBare() /usr/share/php/PHP/Invoker.php:93 PHP 13. PHPUnit_Framework_TestCase->runTest() /usr/share/php/PHPUnit/Framework/TestCase.php:804 PHP 14. ReflectionMethod->invokeArgs() /usr/share/php/PHPUnit/Framework/TestCase.php:942 PHP 15. sandbox\tests\Resource\Page\Blog\PostsTest->test_Render() /usr/share/php/PHPUnit/Framework/TestCase.php:942 PHP 16. BEAR\Resource\AbstractObject->toString() /usr/share/php/PHPUnit/Framework/TestCase.php:92 PHP 17. BEAR\Framework\Resource\View\DevRenderer->render() /home/shige/BEAR/BEAR.Sunday/vendor/BEAR/Resource/src/BEAR/Resource/AbstractObject.php:94 PHP 18. BEAR\Framework\Resource\View\Renderer->render() /home/shige/BEAR/BEAR.Sunday/package/BEAR/Framework/src/BEAR/Framework/Resource/View/DevRenderer.php:72 PHP 19. BEAR\Framework\Module\TemplateEngine\SmartyModule\SmartyAdapter->fetch() /home/shige/BEAR/BEAR.Sunday/package/BEAR/Framework/src/BEAR/Framework/Resource/View/Renderer.php:60 PHP 20. Smarty_Internal_TemplateBase->fetch() /home/shige/BEAR/BEAR.Sunday/package/BEAR/Framework/src/BEAR/Framework/Module/TemplateEngine/SmartyModule/SmartyAdapter.php:80 PHP 21. content_4ffe5b5238a3d8_84063996() /home/shige/BEAR/BEAR.Sunday/vendor/smarty/smarty/distribution/libs/sysplugins/smarty_internal_templatebase.php:180

Ubunt12.04、Fedora17環境で同じように発生しています。 ユニットテストで失敗すると発生するようでMySQLのrootパスワードが未設定の場合は起こりません。 sandboxアプリの方でユニットテストが通らないのはまた別の問題かと思われますがまだ原因を追いきれていません。

koriym commented 12 years ago

参考情報ですが

DBが接続できてないときにはこのように BEAR\Resource\Request::__toString() テンプレートの文字列化のタイミングでエラーが出ます。(テンプレートでエラーが出ますがテンプレートの問題ではありません)

2012/7/12 Shigeyuki INOUE < reply@reply.github.com

$ php -r 'echo $_ENV["BEAR_DB_ID"];' root

$ php -r 'echo $_ENV["BEAR_DB_PASSWORD"];' hoge

$ php -i | grep variables_order variables_order => EGPCS => EGPCS

$ phpunit PHPUnit 3.6.11 by Sebastian Bergmann.

Configuration read from /home/shige/BEAR/BEAR.Sunday/phpunit.xml.dist

run:sandbox mode=Dev cahce=enable .........................ESSESE.........PHP Fatal error: Method BEAR\Resource\Request::toString() must not throw an exception in /home/shige/BEAR/BEAR.Sunday/apps/sandbox/tmp/smarty/template_c/7b6a9f730f42594db0bc013b98b57567110676b3.file.Posts.tpl.php on line 52 PHP Stack trace: PHP 1. {main}() /usr/bin/phpunit:0 PHP 2. PHPUnit_TextUI_Command::main() /usr/bin/phpunit:46 PHP 3. PHPUnit_TextUI_Command->run() /usr/share/php/PHPUnit/TextUI/Command.php:130 PHP 4. PHPUnit_TextUI_TestRunner->doRun() /usr/share/php/PHPUnit/TextUI/Command.php:192 PHP 5. PHPUnit_Framework_TestSuite->run() /usr/share/php/PHPUnit/TextUI/TestRunner.php:325 PHP 6. PHPUnit_Framework_TestSuite->run() /usr/share/php/PHPUnit/Framework/TestSuite.php:705 PHP 7. PHPUnit_Framework_TestSuite->runTest() /usr/share/php/PHPUnit/Framework/TestSuite.php:745 PHP 8. PHPUnit_Framework_TestCase->run() /usr/share/php/PHPUnit/Framework/TestSuite.php:772 PHP 9. PHPUnit_Framework_TestResult->run() /usr/share/php/PHPUnit/Framework/TestCase.php:751 PHP 10. PHP_Invoker->invoke() /usr/share/php/PHPUnit/Framework/TestResult.php:647 PHP 11. call_user_func_array() /usr/share/php/PHP/Invoker.php:93 PHP 12. PHPUnit_Framework_TestCase->runBare() /usr/share/php/PHP/Invoker.php:93 PHP 13. PHPUnit_Framework_TestCase->runTest() /usr/share/php/PHPUnit/Framework/TestCase.php:804 PHP 14. ReflectionMethod->invokeArgs() /usr/share/php/PHPUnit/Framework/TestCase.php:942 PHP 15. sandbox\tests\Resource\Page\Blog\PostsTest->test_Render() /usr/share/php/PHPUnit/Framework/TestCase.php:942 PHP 16. BEAR\Resource\AbstractObject->toString() /usr/share/php/PHPUnit/Framework/TestCase.php:92 PHP 17. BEAR\Framework\Resource\View\DevRenderer->render() /home/shige/BEAR/BEAR.Sunday/vendor/BEAR/Resource/src/BEAR/Resource/AbstractObject.php:94 PHP 18. BEAR\Framework\Resource\View\Renderer->render() /home/shige/BEAR/BEAR.Sunday/package/BEAR/Framework/src/BEAR/Framework/Resource/View/DevRenderer.php:72 PHP 19. BEAR\Framework\Module\TemplateEngine\SmartyModule\SmartyAdapter->fetch() /home/shige/BEAR/BEAR.Sunday/package/BEAR/Framework/src/BEAR/Framework/Resource/View/Renderer.php:60 PHP 20. Smarty_Internal_TemplateBase->fetch() /home/shige/BEAR/BEAR.Sunday/package/BEAR/Framework/src/BEAR/Framework/Module/TemplateEngine/SmartyModule/SmartyAdapter.php:80 PHP 21. content_4ffe5b5238a3d8_84063996() /home/shige/BEAR/BEAR.Sunday/vendor/smarty/smarty/distribution/libs/sysplugins/smarty_internal_templatebase.php:180 <!DOCTYPE html>

Posts « BEAR.Sunday Blog
Pagination

Posts

Ubunt12.04、Fedora17環境で同じように発生しています。 ユニットテストで失敗すると発生するようでMySQLのrootパスワードが未設定の場合は起こりません。 sandboxアプリの方でユニットテストが通らないのはまた別の問題かと思われますがまだ原因を追いきれていません。 --- Reply to this email directly or view it on GitHub: https://github.com/koriym/BEAR.Sunday/issues/12

Akihito Koriyama akihito.koriyama@gmail.com

kaepapa commented 12 years ago

了解しました。 とするとユニットテストが失敗つまりはDB接続に失敗していることが根本原因ということですね。 そちらを追ってみます。