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