Использование фабрик моделей Laravel в C # - PullRequest
1 голос
/ 24 мая 2019

Так что я в основном использую C #, но я смотрел курс Адама Уотана по TDD Laravel, чтобы увидеть, как обстоят дела в этом мире.Я натолкнулся на идею фабрики моделей, для которой я раньше не видел материала в C #, и мне интересно, как вы все порекомендуете сделать это?Я предполагаю некоторую комбинацию класса интерфейса с Moq?Было бы неплохо иметь возможность указывать только поле, которое я проверяю, в своих модульных тестах (в приведенном ниже примере я проверяю только дату) и сделать вещи простыми и более читабельными.

Вот пример фабрики моделей в Ларавеле.Таким образом, у вас есть поддельные данные по умолчанию для вашего модульного теста, и вы можете проходить только через определенные данные, для которых вы хотите проверить, в данном случае это модульный тест, ориентированный на дату.

$factory->define(App\Concert::class, function (Faker\Generator $faker) {
    return [
        'title' => 'Example Band',
        'subtitle' => 'with The Fake Openers',
        'date' => Carbon::parse('+2 weeks'),
        'ticket_price' => 2000,
        'venue' => 'The Example Theatre',
        'venue_address' => '123 Example Lane',
        'city' => 'Fakeville',
        'state' => 'ON',
        'zip' => '90210',
        'additional_information' => 'Some sample additional information.',
    ];
});

$concert = factory(Concert::class)->create([
            'date' => Carbon::parse('2016-12-01 8:00pm'),
        ]);
...