2015-10-25 3 views
1

Я снова борюсь с Liip/LiipFunctionalTestBundle в Symfony v2.7. У меня есть два теста, которые ничего не делают, кроме нагрузочных устройств через этот комплект. Если я загружаю один и тот же класс приборов в оба класса, второй пытается зафиксировать его приборы дважды! Если приборы разные, все в порядке.Symfony LiipFunctionalTestBundle loadFixtures duplicate entry

У кого-то есть опыт работы с этим комплектом?

use Liip\FunctionalTestBundle\Test\WebTestCase as WebTestCase; 

class AgencyControllerTest extends WebTestCase 
{  
    public function testOne() 
    { 
     $this->loadFixtures([ 
      'Barra\AdminBundle\DataFixtures\ORM\LoadUserData', 
     ]); 
    } 

    public function testTwo() 
    { 
     $this->loadFixtures([ 
      'Barra\AdminBundle\DataFixtures\ORM\LoadUserData', 
      'Barra\AdminBundle\DataFixtures\ORM\LoadAgencyData', 
     ]); 
    } 

test.log экстракт

doctrine.DEBUG: DELETE FROM Agency [] [] 
doctrine.DEBUG: DELETE FROM AppUser [] [] 
[...] 
doctrine.DEBUG: "START TRANSACTION" [] [] 
doctrine.DEBUG: INSERT INTO AppUser (...) {..1..} [] 
doctrine.DEBUG: INSERT INTO AppUser (...) {..2..} [] 
doctrine.DEBUG: INSERT INTO AppUser (...) {..3..} [] 
doctrine.DEBUG: "COMMIT" [] [] 

doctrine.DEBUG: DELETE FROM Agency [] [] 
doctrine.DEBUG: DELETE FROM AppUser [] [] 
[...] 
doctrine.DEBUG: "START TRANSACTION" [] [] 
doctrine.DEBUG: INSERT INTO Agency (...) {..1..} [] 
doctrine.DEBUG: INSERT INTO Agency (...) {..2..} [] 
doctrine.DEBUG: INSERT INTO Agency (...) {..3..} [] 
doctrine.DEBUG: INSERT INTO AppUser (...) {..1..} [] 
doctrine.DEBUG: INSERT INTO AppUser (...) {..2..} [] 
doctrine.DEBUG: INSERT INTO AppUser (...) {..3..} [] 
doctrine.DEBUG: INSERT INTO AppUser (...) {..1..} [] <--- 
[2015-10-25 11:39:09] doctrine.DEBUG: "ROLLBACK" [] [] 

SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '1' for key 'UNIQ_8105EAD692FC23A8' 

ответ

1

я перешел к рекомендуемому SQLite БД, которая работала хорошо, кроме описанной ошибки. НО, чтобы включить cache_sqlite_db, я решил свою проблему. Кажется, это ошибка для меня, но по крайней мере сейчас она работает.