Project

General

Profile

Bug(バグ) #4077

Backport(バックポート) #3754: テスト用のFixtureが壊れている

テスト用のFixtureが壊れている

Added by kaoru n almost 4 years ago. Updated 2 months ago.

Status:
Fixed(完了)
Priority:
Normal(通常)
Assignee:
Start date:
2015-01-06
Due date:
% Done:

100%

3.6 で発生するか:
Unknown (未調査)
[QA]バグ通知済:
No
3.8 で発生するか:
Unknown (未調査)
opCommunityTopicPlugin 絞込条件:

Description

Overview (現象)

opCommunityTopicPlugin 内の任意のテストコードを実行すると下記のようなエラーが出力され異常終了する。

$ php test/unit/model/CommunityTopicTest.php 
PHP Fatal error:  Uncaught exception 'Doctrine_Connection_Mysql_Exception' with message 'SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '1055' for key 'PRIMARY'' in /home/upsilon/git/openpne3/master/lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/vendor/doctrine/Doctrine/Connection.php:1082
Stack trace:
#0 /home/upsilon/git/openpne3/master/lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/vendor/doctrine/Doctrine/Connection/Statement.php(269): Doctrine_Connection->rethrowException(Object(PDOException), Object(Doctrine_Connection_Statement))
#1 /home/upsilon/git/openpne3/master/lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/vendor/doctrine/Doctrine/Connection.php(1042): Doctrine_Connection_Statement->execute(Array)
#2 /home/upsilon/git/openpne3/master/lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/vendor/doctrine/Doctrine/Connection.php(687): Doctrine_Connection->exec('INSERT INTO mem...', Array)                                      
#3 /home/upsilon/git/openpne3/master/lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/vendo in /home/upsilon/git/openpne3/master/lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/vendor/doctrine/Doctrine/Connection.php on line 1082

Causes (原因)

b26343a61c1ac028 の各コミットで追加されたテスト用の Fixture に同じ ID のメンバーやコミュニティが含まれており、両方の Fixture が読み込まれる際に ID が衝突してエラーとなる。

Way to fix (修正内容)

1c1ac028 で追加された 999_xss_test_data.yml には b26343a6 で 999_test_data.yml に追加されたものとほぼ同じレコードを含んでいるため、999_xss_test_data.yml を残した上で重複するレコードを削除する。

History

#1 Updated by kaoru n almost 4 years ago

#2 Updated by kaoru n almost 4 years ago

  • Status changed from Pending Review(レビュー待ち) to New(新規)
  • Assignee deleted (Youichi Kimura)
  • % Done changed from 50 to 0

#3 Updated by kaoru n almost 4 years ago

  • Status changed from New(新規) to Pending Review(レビュー待ち)
  • Assignee set to kaoru n
  • % Done changed from 0 to 50

https://github.com/tejimaya/opCommunityTopicPlugin/pull/24
にてプルリクエストを行いました。

#4 Updated by kaoru n 5 months ago

  • Parent task set to #3754

#5 Updated by kaoru n 5 months ago

  • Tracker changed from Backport(バックポート) to Bug(バグ)
  • 3.6 で発生するか set to Unknown (未調査)
  • [QA]バグ通知済 set to No
  • 3.8 で発生するか set to Unknown (未調査)

#6 Updated by kaoru n 5 months ago

  • Target version changed from master to opCommunityTopicPlugin-1.1.3

#7 Updated by kaoru n 5 months ago

  • Target version changed from opCommunityTopicPlugin-1.1.3 to opCommunityTopicPlugin-1.1.4

#8 Updated by isao sano 4 months ago

  • Status changed from Pending Review(レビュー待ち) to Rejected(差し戻し)

下記のエラーが発生する。
3.8系最新版、3.10系最新版のどちらでも発生します。

PHP Fatal error:  Uncaught exception 'sfException' with message 'The "default" context does not exist.' in /home/sano/sns/3836.sano.dazai3.pne.jp/lib/vendor/symfony/lib/util/sfContext.class.php:111
Stack trace:
#0 /home/sano/sns/3836.sano.dazai3.pne.jp/plugins/opCommunityTopicPlugin/lib/util/opCommunityTopicPluginUtil.class.php(6): sfContext::getInstance()
#1 /home/sano/sns/3836.sano.dazai3.pne.jp/plugins/opCommunityTopicPlugin/lib/model/doctrine/PluginCommunityTopicComment.class.php(42): opCommunityTopicPluginUtil::sendNewCommentNotification(Object(Member), Object(Member), '1')
#2 /home/sano/sns/3836.sano.dazai3.pne.jp/lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/vendor/doctrine/Doctrine/Record.php(354): PluginCommunityTopicComment->postSave(Object(Doctrine_Event))
#3 /home/sano/sns/3836.sano.dazai3.pne.jp/lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/vendor/doctrine/Doctrine/Connection/UnitOfWork.php(116): Doctrine_Record->invokeSaveHooks('post', 'save', Object(Doctrine_Event))
#4 /home/sano/sns/3836.sano.dazai3 in /home/sano/sns/3836.sano.dazai3.pne.jp/lib/vendor/symfony/lib/util/sfContext.class.php on line 111

Fatal error: Uncaught exception 'sfException' with message 'The "default" context does not exist.' in /home/sano/sns/3836.sano.dazai3.pne.jp/lib/vendor/symfony/lib/util/sfContext.class.php:111
Stack trace:
#0 /home/sano/sns/3836.sano.dazai3.pne.jp/plugins/opCommunityTopicPlugin/lib/util/opCommunityTopicPluginUtil.class.php(6): sfContext::getInstance()
#1 /home/sano/sns/3836.sano.dazai3.pne.jp/plugins/opCommunityTopicPlugin/lib/model/doctrine/PluginCommunityTopicComment.class.php(42): opCommunityTopicPluginUtil::sendNewCommentNotification(Object(Member), Object(Member), '1')
#2 /home/sano/sns/3836.sano.dazai3.pne.jp/lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/vendor/doctrine/Doctrine/Record.php(354): PluginCommunityTopicComment->postSave(Object(Doctrine_Event))
#3 /home/sano/sns/3836.sano.dazai3.pne.jp/lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/vendor/doctrine/Doctrine/Connection/UnitOfWork.php(116): Doctrine_Record->invokeSaveHooks('post', 'save', Object(Doctrine_Event))
#4 /home/sano/sns/3836.sano.dazai3 in /home/sano/sns/3836.sano.dazai3.pne.jp/lib/vendor/symfony/lib/util/sfContext.class.php on line 111

#9 Updated by kaoru n 4 months ago

  • Status changed from Rejected(差し戻し) to Pending Testing(テスト待ち)
  • % Done changed from 50 to 70

https://github.com/tejimaya/opCommunityTopicPlugin/pull/24
更新しました。
コンフリクトしていたのでリベースも行っています。

#10 Updated by isao sano 4 months ago

  • Status changed from Pending Testing(テスト待ち) to Pending Review(レビュー待ち)
  • % Done changed from 70 to 50

確認しました。
問題ありません。

#11 Updated by kaoru n 2 months ago

  • Status changed from Pending Review(レビュー待ち) to Fixed(完了)
  • % Done changed from 50 to 100

マージしました

Also available in: Atom PDF