. */ declare(strict_types=1); namespace Tests\Unit\Import\Mapper; use FireflyIII\Import\Mapper\Budgets; use FireflyIII\Models\Budget; use FireflyIII\Repositories\Budget\BudgetRepositoryInterface; use Illuminate\Support\Collection; use Log; use Tests\TestCase; /** * Class BudgetsTest */ class BudgetsTest extends TestCase { /** * */ public function setUp(): void { parent::setUp(); Log::info(sprintf('Now in %s.', \get_class($this))); } /** * @covers \FireflyIII\Import\Mapper\Budgets */ public function testGetMapBasic(): void { $one = new Budget; $one->id = 8; $one->name = 'Something'; $two = new Budget; $two->id = 4; $two->name = 'Else'; $collection = new Collection([$one, $two]); $repository = $this->mock(BudgetRepositoryInterface::class); $repository->shouldReceive('getActiveBudgets')->andReturn($collection)->once(); $mapper = new Budgets(); $mapping = $mapper->getMap(); $this->assertCount(3, $mapping); // assert this is what the result looks like: $result = [ 0 => (string)trans('import.map_do_not_map'), 4 => 'Else', 8 => 'Something', ]; $this->assertEquals($result, $mapping); } }