samedi 5 septembre 2020

Laravel factory cannot create because already has one

I want to create with factory in the test case but i got a validation error it say The name has already been taken. But how? It always refresh database every time the test start run.

The factory

$factory->define(Companies::class, function (Faker $faker) {
    return [
        'name' => $faker->unique()->company,
        'email' => $faker->email,
        'website' => $faker->url,
    ];
});

The test


        Storage::fake('local');

        $image = UploadedFile::fake()->image('avatar.jpg', 150, 150);

        $companies = factory(Companies::class)->create([
            'logo' => $image
        ]);
        $company = $companies->toArray();

        $this->actingAs($this->user);
        $response = $this->postJson('/home/companies/create/add', $company);
        $response->assertStatus(302);

Aucun commentaire:

Enregistrer un commentaire