【问题标题】:Laravel testing - dataProvider with files?Laravel 测试 - 带有文件的数据提供者?
【发布时间】:2023-03-02 21:25:01
【问题描述】:

我不知道如何使用 dataProvider 进行带有文件字段的 laravel 测试:

public function requiredFormValidationProvider()
    {
        $faker = Faker::create('es_ES');
        $password = $faker->password;
        $avatar = File::create('avatar', 200);

        $fields = [
            ['avatar', $avatar],
            ['name', $faker->name()],
            ['company', $faker->company],
            ['company_role', 'Administrador'],
            ['phone_number_1', $faker->phoneNumber],
            ['phone_number_2', $faker->phoneNumber],
            ['country_code', self::COUNTRY_CODE],
            ['language', 'es'],
            ['old_password', self::PASSWORD],
            ['password', $password],
            ['password_confirmation', $password],
        ];

        return $fields;
    }

头像”字段是图片或文件,但出现错误:

1) Tests\Feature\Users\ProfileTest::testProfileEdit with data set #0 ('avatar', Illuminate\Http\Testing\File Object (...))
Session has unexpected error: avatar
Failed asserting that true is false.

【问题讨论】:

    标签: laravel laravel-testing


    【解决方案1】:

    好的,解决了!问题在于 File::create 方法。 必须是:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-10-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-01
      • 1970-01-01
      • 2020-10-16
      相关资源
      最近更新 更多