操作
Backport(バックポート) #3754
完了テスト用のFixtureが壊れている
開始日:
2015-01-06
期日:
進捗率:
0%
予定工数:
(合計: 0:00時間)
opCommunityTopicPlugin 絞込条件:
説明
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 (原因)¶
b26343a6 と 1c1ac028 の各コミットで追加されたテスト用の Fixture に同じ ID のメンバーやコミュニティが含まれており、両方の Fixture が読み込まれる際に ID が衝突してエラーとなる。
Way to fix (修正内容)¶
1c1ac028 で追加された 999_xss_test_data.yml には b26343a6 で 999_test_data.yml に追加されたものとほぼ同じレコードを含んでいるため、999_xss_test_data.yml を残した上で重複するレコードを削除する。
操作