Bonjour à tous,

Pourriez vous m'aider s'il vous plait?

Je veux utiliser RefreshDatabase pour effacer les données utilisé durant les tests. Seul soucis J'ai des erreurs lorsque j'utilise avec phpunit (si je comment ça fonctionne).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
) Tests\Services\ApiServiceTest::testUserLogin
Error: Undefined class constant 'STATUS_PREDUCT_CREATED'
 
/application/database/migrations/2018_08_06_185448_add_state_to_product.php:15
/application/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php:360
/application/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php:367
/application/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php:178
/application/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php:147
/application/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php:96
/application/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php:71
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:29
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:87
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:31
/application/vendor/laravel/framework/src/Illuminate/Container/Container.php:572
/application/vendor/laravel/framework/src/Illuminate/Console/Command.php:183
/application/vendor/symfony/console/Command/Command.php:255
/application/vendor/laravel/framework/src/Illuminate/Console/Command.php:170
/application/vendor/laravel/framework/src/Illuminate/Console/Command.php:198
/application/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php:55
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:29
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:87
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:31
/application/vendor/laravel/framework/src/Illuminate/Container/Container.php:572
/application/vendor/laravel/framework/src/Illuminate/Console/Command.php:183
/application/vendor/symfony/console/Command/Command.php:255
/application/vendor/laravel/framework/src/Illuminate/Console/Command.php:170
/application/vendor/symfony/console/Application.php:886
/application/vendor/symfony/console/Application.php:262
/application/vendor/symfony/console/Application.php:145
/application/vendor/laravel/framework/src/Illuminate/Console/Application.php:89
/application/vendor/laravel/framework/src/Illuminate/Console/Application.php:188
/application/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php:250
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/PendingCommand.php:136
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/PendingCommand.php:218
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/Concerns/InteractsWithConsole.php:55
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/RefreshDatabase.php:55
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/RefreshDatabase.php:18
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/TestCase.php:104
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/TestCase.php:71
/application/tests/Services/ApiVcServiceTest.php:36
 
2) Tests\Services\ApiServiceTest::testAddPreduct
Error: Undefined class constant 'STATUS_PREDUCT_CREATED'
 
/application/database/migrations/2018_08_06_185448_add_state_to_product.php:15
/application/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php:360
/application/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php:367
/application/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php:178
/application/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php:147
/application/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php:96
/application/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php:71
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:29
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:87
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:31
/application/vendor/laravel/framework/src/Illuminate/Container/Container.php:572
/application/vendor/laravel/framework/src/Illuminate/Console/Command.php:183
/application/vendor/symfony/console/Command/Command.php:255
/application/vendor/laravel/framework/src/Illuminate/Console/Command.php:170
/application/vendor/laravel/framework/src/Illuminate/Console/Command.php:198
/application/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php:55
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:29
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:87
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:31
/application/vendor/laravel/framework/src/Illuminate/Container/Container.php:572
/application/vendor/laravel/framework/src/Illuminate/Console/Command.php:183
/application/vendor/symfony/console/Command/Command.php:255
/application/vendor/laravel/framework/src/Illuminate/Console/Command.php:170
/application/vendor/symfony/console/Application.php:886
/application/vendor/symfony/console/Application.php:262
/application/vendor/symfony/console/Application.php:145
/application/vendor/laravel/framework/src/Illuminate/Console/Application.php:89
/application/vendor/laravel/framework/src/Illuminate/Console/Application.php:188
/application/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php:250
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/PendingCommand.php:136
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/PendingCommand.php:218
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/Concerns/InteractsWithConsole.php:55
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/RefreshDatabase.php:55
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/RefreshDatabase.php:18
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/TestCase.php:104
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/TestCase.php:71
/application/tests/Services/ApiVcServiceTest.php:36
 
3) Tests\Services\ApiServiceTest::testSubmitPreduct
Error: Undefined class constant 'STATUS_PREDUCT_CREATED'
 
/application/database/migrations/2018_08_06_185448_add_state_to_product.php:15
/application/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php:360
/application/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php:367
/application/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php:178
/application/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php:147
/application/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php:96
/application/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php:71
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:29
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:87
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:31
/application/vendor/laravel/framework/src/Illuminate/Container/Container.php:572
/application/vendor/laravel/framework/src/Illuminate/Console/Command.php:183
/application/vendor/symfony/console/Command/Command.php:255
/application/vendor/laravel/framework/src/Illuminate/Console/Command.php:170
/application/vendor/laravel/framework/src/Illuminate/Console/Command.php:198
/application/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php:55
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:29
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:87
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:31
/application/vendor/laravel/framework/src/Illuminate/Container/Container.php:572
/application/vendor/laravel/framework/src/Illuminate/Console/Command.php:183
/application/vendor/symfony/console/Command/Command.php:255
/application/vendor/laravel/framework/src/Illuminate/Console/Command.php:170
/application/vendor/symfony/console/Application.php:886
/application/vendor/symfony/console/Application.php:262
/application/vendor/symfony/console/Application.php:145
/application/vendor/laravel/framework/src/Illuminate/Console/Application.php:89
/application/vendor/laravel/framework/src/Illuminate/Console/Application.php:188
/application/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php:250
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/PendingCommand.php:136
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/PendingCommand.php:218
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/Concerns/InteractsWithConsole.php:55
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/RefreshDatabase.php:55
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/RefreshDatabase.php:18
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/TestCase.php:104
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/TestCase.php:71
/application/tests/Services/ApiVcServiceTest.php:36
 
4) App\Test\Services\FluxProcessTest::testProcessFlux
Error: Undefined class constant 'STATUS_PREDUCT_CREATED'
 
/application/database/migrations/2018_08_06_185448_add_state_to_product.php:15
/application/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php:360
/application/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php:367
/application/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php:178
/application/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php:147
/application/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php:96
/application/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php:71
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:29
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:87
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:31
/application/vendor/laravel/framework/src/Illuminate/Container/Container.php:572
/application/vendor/laravel/framework/src/Illuminate/Console/Command.php:183
/application/vendor/symfony/console/Command/Command.php:255
/application/vendor/laravel/framework/src/Illuminate/Console/Command.php:170
/application/vendor/laravel/framework/src/Illuminate/Console/Command.php:198
/application/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php:55
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:29
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:87
/application/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:31
/application/vendor/laravel/framework/src/Illuminate/Container/Container.php:572
/application/vendor/laravel/framework/src/Illuminate/Console/Command.php:183
/application/vendor/symfony/console/Command/Command.php:255
/application/vendor/laravel/framework/src/Illuminate/Console/Command.php:170
/application/vendor/symfony/console/Application.php:886
/application/vendor/symfony/console/Application.php:262
/application/vendor/symfony/console/Application.php:145
/application/vendor/laravel/framework/src/Illuminate/Console/Application.php:89
/application/vendor/laravel/framework/src/Illuminate/Console/Application.php:188
/application/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php:250
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/PendingCommand.php:136
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/PendingCommand.php:218
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/Concerns/InteractsWithConsole.php:55
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/RefreshDatabase.php:55
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/RefreshDatabase.php:18
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/TestCase.php:104
/application/vendor/laravel/framework/src/Illuminate/Foundation/Testing/TestCase.php:71
/application/tests/Services/FluxProcessTest.php:39
Si je regarde dans le fichier de migration
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
 
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Migrations\Migration;
 
class AddStateToProduct extends Migration
{
    public function up()
    {
        Schema::table('vendor_flux_product', function($table) {
            $table->string('state')->default(\App\Models\VendorFluxProduct::STATE_PENDING_VALIDATION);
            $table->timestamps();
        });
 
        DB::statement(sprintf('UPDATE VC_vendor_flux_product SET state = "%s" WHERE status = "%s"', \App\Models\VendorFluxProduct::STATE_PENDING_VALIDATION, \App\Models\VendorFluxProduct::STATUS_PREDUCT_CREATED));
        DB::statement(sprintf('UPDATE VC_vendor_flux_product SET state = "%s" WHERE status = "%s"', \App\Models\VendorFluxProduct::STATE_VALIDATED, \App\Models\VendorFluxProduct::STATUS_PRODUCT_ON_VC));
    }
 
    public function down()
    {
        Schema::table('vendor_flux_product', function($table) {
            $table->dropColumn('state');
            $table->dropTimestamps();
        });
    }
}
En effet la constante STATUS_PREDUCT_CREATED n'existe pas.
Du coup je ne comprend pas trop, lors d'une migration comment s'execute les fichiers? Ce fichier est assez ancien, c'est un projet que j'ai récup pourquoi est-il executé? Comment je peux résoudre le problème?

Merci de votre aide

Edit: finalement le problème venait d'un insertion par une migration en utilisant un état qui n'existe plus dans le smodèles j'ai supprimé les insertions et ça roule.