. */ declare(strict_types=1); namespace Tests\Unit\Factory; use FireflyIII\Factory\PiggyBankFactory; use Tests\TestCase; /** * Class PiggyBankFactoryTest */ class PiggyBankFactoryTest extends TestCase { /** * Put in ID, return it. * * @covers \FireflyIII\Factory\PiggyBankFactory */ public function testFindById(): void { $existing = $this->user()->piggyBanks()->first(); /** @var PiggyBankFactory $factory */ $factory = app(PiggyBankFactory::class); $factory->setUser($this->user()); $piggyBank = $factory->find($existing->id, null); $this->assertEquals($existing->id, $piggyBank->id); } /** * Put in name, return it. * * @covers \FireflyIII\Factory\PiggyBankFactory */ public function testFindByName(): void { $existing = $this->user()->piggyBanks()->first(); /** @var PiggyBankFactory $factory */ $factory = app(PiggyBankFactory::class); $factory->setUser($this->user()); $piggyBank = $factory->find(null, $existing->name); $this->assertEquals($existing->id, $piggyBank->id); } /** * Put in NULL, will find NULL. * * @covers \FireflyIII\Factory\PiggyBankFactory */ public function testFindNull(): void { /** @var PiggyBankFactory $factory */ $factory = app(PiggyBankFactory::class); $factory->setUser($this->user()); $this->assertNull($factory->find(null, null)); } /** * Put in unknown, get NULL * * @covers \FireflyIII\Factory\PiggyBankFactory */ public function testFindUnknown(): void { /** @var PiggyBankFactory $factory */ $factory = app(PiggyBankFactory::class); $factory->setUser($this->user()); $this->assertNull($factory->find(null, 'I dont exist.' . random_int(1, 1000))); } }