reecem/mocker
A lightweight Laravel-friendly mocking helper for PHP tests. Quickly define and swap mocks, set expectations, and control return values to simplify unit and feature testing. Designed to reduce boilerplate and keep test setup clean and readable.
composer require --dev reecem/mockerMocker class (typically namespaced as Reecem\Mocker\Mocker)$mocker = new Mocker();
$name = $mocker->string(); // e.g., 'John Doe'
$age = $mocker->integer(18, 80); // e.g., 42
DatabaseSeeder, feature tests, or tinker to generate realistic test data on-the-fly.$user = new User();
$user->name = $mocker->string();
$user->email = $mocker->email();
$user->created_at = $mocker->dateTime(); // Carbon instance
$mocker->seed(12345); // Ensures same values across runs
TestCase::setUp() or via Laravel’s container (e.g., bind Mocker::class as singleton) to reuse across test classes.->companyName()), often via a custom wrapper or factory class.$mocker->seed() explicitly in tests where consistency matters.dateTime() returns Carbon instances (via faker), but other generators may return primitives — verify type compatibility before asserting or persisting.factory() workflows, it won’t handle Eloquent relationships automatically — pair with factories for full ORM seeding.createUserMock()) for maintainability.How can I help you explore Laravel packages today?