mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-10-16 17:33:45 +00:00
Fix tests for current feature set.
This commit is contained in:
@@ -93,6 +93,8 @@ class JobStatusControllerTest extends TestCase
|
|||||||
$job->file_type = '';
|
$job->file_type = '';
|
||||||
$job->save();
|
$job->save();
|
||||||
|
|
||||||
|
$importRepos->shouldReceive('countTransactions')->once()->andReturn(0);
|
||||||
|
|
||||||
// call thing.
|
// call thing.
|
||||||
$this->be($this->user());
|
$this->be($this->user());
|
||||||
$response = $this->get(route('import.job.status.json', [$job->key]));
|
$response = $this->get(route('import.job.status.json', [$job->key]));
|
||||||
@@ -120,6 +122,8 @@ class JobStatusControllerTest extends TestCase
|
|||||||
$job->tag()->associate($tag);
|
$job->tag()->associate($tag);
|
||||||
$job->save();
|
$job->save();
|
||||||
|
|
||||||
|
$importRepos->shouldReceive('countTransactions')->once()->andReturn(0);
|
||||||
|
|
||||||
// call thing.
|
// call thing.
|
||||||
$this->be($this->user());
|
$this->be($this->user());
|
||||||
$response = $this->get(route('import.job.status.json', [$job->key]));
|
$response = $this->get(route('import.job.status.json', [$job->key]));
|
||||||
@@ -143,6 +147,8 @@ class JobStatusControllerTest extends TestCase
|
|||||||
$second = $this->user()->transactionJournals()->where('id', '!=', $journal->id)->first();
|
$second = $this->user()->transactionJournals()->where('id', '!=', $journal->id)->first();
|
||||||
$tag->transactionJournals()->sync([$journal->id, $second->id]);
|
$tag->transactionJournals()->sync([$journal->id, $second->id]);
|
||||||
|
|
||||||
|
$importRepos->shouldReceive('countTransactions')->once()->andReturn(2);
|
||||||
|
|
||||||
$job = new ImportJob;
|
$job = new ImportJob;
|
||||||
$job->user_id = $this->user()->id;
|
$job->user_id = $this->user()->id;
|
||||||
$job->key = 'Dfake_job_' . random_int(1, 10000);
|
$job->key = 'Dfake_job_' . random_int(1, 10000);
|
||||||
@@ -175,6 +181,8 @@ class JobStatusControllerTest extends TestCase
|
|||||||
$journal = $this->user()->transactionJournals()->first();
|
$journal = $this->user()->transactionJournals()->first();
|
||||||
$tag->transactionJournals()->sync([$journal->id]);
|
$tag->transactionJournals()->sync([$journal->id]);
|
||||||
|
|
||||||
|
$importRepos->shouldReceive('countTransactions')->once()->andReturn(1);
|
||||||
|
|
||||||
$job = new ImportJob;
|
$job = new ImportJob;
|
||||||
$job->user_id = $this->user()->id;
|
$job->user_id = $this->user()->id;
|
||||||
$job->key = 'Efake_job_' . random_int(1, 10000);
|
$job->key = 'Efake_job_' . random_int(1, 10000);
|
||||||
|
@@ -57,14 +57,22 @@ class ReconcileControllerTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testOverview(): void
|
public function testOverview(): void
|
||||||
{
|
{
|
||||||
$accountRepos = $this->mock(AccountRepositoryInterface::class);
|
$accountRepos = $this->mock(AccountRepositoryInterface::class);
|
||||||
$currencyRepos = $this->mock(CurrencyRepositoryInterface::class);
|
$currencyRepos = $this->mock(CurrencyRepositoryInterface::class);
|
||||||
$recurringRepos = $this->mock(RecurringRepositoryInterface::class);
|
$recurringRepos = $this->mock(RecurringRepositoryInterface::class);
|
||||||
$transactions = $this->user()->transactions()->inRandomOrder()->take(3)->get();
|
$transactions = $this->user()->transactions()->inRandomOrder()->take(3)->get();
|
||||||
$repository = $this->mock(JournalRepositoryInterface::class);
|
$transactions =$transactions->each(
|
||||||
|
function (Transaction $transaction) {
|
||||||
|
$transaction->transaction_amount = '5';
|
||||||
|
}
|
||||||
|
);
|
||||||
|
$repository = $this->mock(JournalRepositoryInterface::class);
|
||||||
$repository->shouldReceive('firstNull')->andReturn(new TransactionJournal);
|
$repository->shouldReceive('firstNull')->andReturn(new TransactionJournal);
|
||||||
$repository->shouldReceive('getTransactionsById')->andReturn($transactions)->twice();
|
$repository->shouldReceive('getTransactionsById')->andReturn($transactions)->twice();
|
||||||
|
|
||||||
|
$accountRepos->shouldReceive('findNull')->andReturn($this->getRandomAsset())->atLeast()->once();
|
||||||
|
$accountRepos->shouldReceive('getMetaValue')->atLeast()->once()->andReturn(1);
|
||||||
|
|
||||||
$parameters = [
|
$parameters = [
|
||||||
'startBalance' => '0',
|
'startBalance' => '0',
|
||||||
'endBalance' => '10',
|
'endBalance' => '10',
|
||||||
@@ -83,8 +91,8 @@ class ReconcileControllerTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testOverviewNotAsset(): void
|
public function testOverviewNotAsset(): void
|
||||||
{
|
{
|
||||||
$accountRepos = $this->mock(AccountRepositoryInterface::class);
|
$accountRepos = $this->mock(AccountRepositoryInterface::class);
|
||||||
$currencyRepos = $this->mock(CurrencyRepositoryInterface::class);
|
$currencyRepos = $this->mock(CurrencyRepositoryInterface::class);
|
||||||
$recurringRepos = $this->mock(RecurringRepositoryInterface::class);
|
$recurringRepos = $this->mock(RecurringRepositoryInterface::class);
|
||||||
|
|
||||||
$account = $this->user()->accounts()->where('account_type_id', '!=', 3)->first();
|
$account = $this->user()->accounts()->where('account_type_id', '!=', 3)->first();
|
||||||
@@ -107,8 +115,8 @@ class ReconcileControllerTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testTransactions(): void
|
public function testTransactions(): void
|
||||||
{
|
{
|
||||||
$repository = $this->mock(CurrencyRepositoryInterface::class);
|
$repository = $this->mock(CurrencyRepositoryInterface::class);
|
||||||
$accountRepos = $this->mock(AccountRepositoryInterface::class);
|
$accountRepos = $this->mock(AccountRepositoryInterface::class);
|
||||||
$recurringRepos = $this->mock(RecurringRepositoryInterface::class);
|
$recurringRepos = $this->mock(RecurringRepositoryInterface::class);
|
||||||
|
|
||||||
$accountRepos->shouldReceive('getMetaValue')->withArgs([Mockery::any(), 'currency_id'])->andReturn('1')->atLeast()->once();
|
$accountRepos->shouldReceive('getMetaValue')->withArgs([Mockery::any(), 'currency_id'])->andReturn('1')->atLeast()->once();
|
||||||
@@ -125,8 +133,8 @@ class ReconcileControllerTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testTransactionsInitialBalance(): void
|
public function testTransactionsInitialBalance(): void
|
||||||
{
|
{
|
||||||
$accountRepos = $this->mock(AccountRepositoryInterface::class);
|
$accountRepos = $this->mock(AccountRepositoryInterface::class);
|
||||||
$currencyRepos = $this->mock(CurrencyRepositoryInterface::class);
|
$currencyRepos = $this->mock(CurrencyRepositoryInterface::class);
|
||||||
$recurringRepos = $this->mock(RecurringRepositoryInterface::class);
|
$recurringRepos = $this->mock(RecurringRepositoryInterface::class);
|
||||||
|
|
||||||
|
|
||||||
|
@@ -86,6 +86,7 @@ class ImportArrayStorageTest extends TestCase
|
|||||||
// mock calls:
|
// mock calls:
|
||||||
$repository->shouldReceive('setUser')->once();
|
$repository->shouldReceive('setUser')->once();
|
||||||
$journalRepos->shouldReceive('setUser')->once();
|
$journalRepos->shouldReceive('setUser')->once();
|
||||||
|
$repository->shouldReceive('getTransactions')->once()->andReturn([]);
|
||||||
|
|
||||||
$storage = new ImportArrayStorage;
|
$storage = new ImportArrayStorage;
|
||||||
$storage->setImportJob($job);
|
$storage->setImportJob($job);
|
||||||
@@ -120,7 +121,8 @@ class ImportArrayStorageTest extends TestCase
|
|||||||
$job->provider = 'fake';
|
$job->provider = 'fake';
|
||||||
$job->file_type = '';
|
$job->file_type = '';
|
||||||
$job->configuration = ['apply-rules' => true];
|
$job->configuration = ['apply-rules' => true];
|
||||||
$job->transactions = [$this->singleTransfer(), $this->singleWithdrawal(), $this->basedOnTransfer($transfer)];
|
$job->transactions = ['count' => 3];
|
||||||
|
$transactions = [$this->singleTransfer(), $this->singleWithdrawal(), $this->basedOnTransfer($transfer)];
|
||||||
$job->save();
|
$job->save();
|
||||||
|
|
||||||
|
|
||||||
@@ -138,7 +140,7 @@ class ImportArrayStorageTest extends TestCase
|
|||||||
$tagRepos = $this->mock(TagRepositoryInterface::class);
|
$tagRepos = $this->mock(TagRepositoryInterface::class);
|
||||||
$ruleRepos = $this->mock(RuleRepositoryInterface::class);
|
$ruleRepos = $this->mock(RuleRepositoryInterface::class);
|
||||||
$journalRepos = $this->mock(JournalRepositoryInterface::class);
|
$journalRepos = $this->mock(JournalRepositoryInterface::class);
|
||||||
|
$repository->shouldReceive('getTransactions')->times(2)->andReturn($transactions);
|
||||||
// mock calls:
|
// mock calls:
|
||||||
$collector->shouldReceive('setUser')->times(2);
|
$collector->shouldReceive('setUser')->times(2);
|
||||||
|
|
||||||
@@ -156,7 +158,6 @@ class ImportArrayStorageTest extends TestCase
|
|||||||
[Mockery::any(), 'Row #2 ("' . $transfer->description . '") could not be imported. Such a transfer already exists.']
|
[Mockery::any(), 'Row #2 ("' . $transfer->description . '") could not be imported. Such a transfer already exists.']
|
||||||
)->once();
|
)->once();
|
||||||
|
|
||||||
|
|
||||||
// mock collector so it will return some transfers:
|
// mock collector so it will return some transfers:
|
||||||
$collector->shouldReceive('setAllAssetAccounts')->times(1)->andReturnSelf();
|
$collector->shouldReceive('setAllAssetAccounts')->times(1)->andReturnSelf();
|
||||||
$collector->shouldReceive('setTypes')->withArgs([[TransactionType::TRANSFER]])->once()->andReturnSelf();
|
$collector->shouldReceive('setTypes')->withArgs([[TransactionType::TRANSFER]])->once()->andReturnSelf();
|
||||||
@@ -201,7 +202,7 @@ class ImportArrayStorageTest extends TestCase
|
|||||||
$job->provider = 'fake';
|
$job->provider = 'fake';
|
||||||
$job->file_type = '';
|
$job->file_type = '';
|
||||||
$job->configuration = ['apply-rules' => true];
|
$job->configuration = ['apply-rules' => true];
|
||||||
$job->transactions = $transactions;
|
$job->transactions = ['count' => 2];
|
||||||
$job->save();
|
$job->save();
|
||||||
|
|
||||||
// get some stuff:
|
// get some stuff:
|
||||||
@@ -222,6 +223,7 @@ class ImportArrayStorageTest extends TestCase
|
|||||||
$journalRepos = $this->mock(JournalRepositoryInterface::class);
|
$journalRepos = $this->mock(JournalRepositoryInterface::class);
|
||||||
|
|
||||||
// mock calls:
|
// mock calls:
|
||||||
|
$repository->shouldReceive('getTransactions')->times(2)->andReturn($transactions);
|
||||||
$repository->shouldReceive('setUser')->once();
|
$repository->shouldReceive('setUser')->once();
|
||||||
$repository->shouldReceive('setStatus')->withAnyArgs();
|
$repository->shouldReceive('setStatus')->withAnyArgs();
|
||||||
$ruleRepos->shouldReceive('setUser')->once();
|
$ruleRepos->shouldReceive('setUser')->once();
|
||||||
@@ -276,6 +278,7 @@ class ImportArrayStorageTest extends TestCase
|
|||||||
$repository->shouldReceive('setUser')->once();
|
$repository->shouldReceive('setUser')->once();
|
||||||
$repository->shouldReceive('setStatus')->withAnyArgs();
|
$repository->shouldReceive('setStatus')->withAnyArgs();
|
||||||
$journalRepos->shouldReceive('setUser')->once();
|
$journalRepos->shouldReceive('setUser')->once();
|
||||||
|
$repository->shouldReceive('getTransactions')->times(2)->andReturn([]);
|
||||||
|
|
||||||
$storage = new ImportArrayStorage;
|
$storage = new ImportArrayStorage;
|
||||||
$storage->setImportJob($job);
|
$storage->setImportJob($job);
|
||||||
@@ -318,6 +321,7 @@ class ImportArrayStorageTest extends TestCase
|
|||||||
$journalRepos = $this->mock(JournalRepositoryInterface::class);
|
$journalRepos = $this->mock(JournalRepositoryInterface::class);
|
||||||
|
|
||||||
// mock calls:
|
// mock calls:
|
||||||
|
$repository->shouldReceive('getTransactions')->times(2)->andReturn([]);
|
||||||
$repository->shouldReceive('setUser')->once();
|
$repository->shouldReceive('setUser')->once();
|
||||||
$repository->shouldReceive('setStatus')->withAnyArgs();
|
$repository->shouldReceive('setStatus')->withAnyArgs();
|
||||||
$ruleRepos->shouldReceive('setUser')->once();
|
$ruleRepos->shouldReceive('setUser')->once();
|
||||||
@@ -344,7 +348,8 @@ class ImportArrayStorageTest extends TestCase
|
|||||||
$userRepos->shouldReceive('findNull')->once()->andReturn($this->user());
|
$userRepos->shouldReceive('findNull')->once()->andReturn($this->user());
|
||||||
|
|
||||||
// make fake job
|
// make fake job
|
||||||
$job = new ImportJob;
|
$transactions = [$this->singleWithdrawal()];
|
||||||
|
$job = new ImportJob;
|
||||||
$job->user()->associate($this->user());
|
$job->user()->associate($this->user());
|
||||||
$job->key = 'e_storage' . random_int(1, 10000);
|
$job->key = 'e_storage' . random_int(1, 10000);
|
||||||
$job->status = 'new';
|
$job->status = 'new';
|
||||||
@@ -352,7 +357,7 @@ class ImportArrayStorageTest extends TestCase
|
|||||||
$job->provider = 'fake';
|
$job->provider = 'fake';
|
||||||
$job->file_type = '';
|
$job->file_type = '';
|
||||||
$job->configuration = ['apply-rules' => true];
|
$job->configuration = ['apply-rules' => true];
|
||||||
$job->transactions = [$this->singleWithdrawal()];
|
$job->transactions = ['count' => 1];
|
||||||
$job->save();
|
$job->save();
|
||||||
|
|
||||||
// get some stuff:
|
// get some stuff:
|
||||||
@@ -377,6 +382,7 @@ class ImportArrayStorageTest extends TestCase
|
|||||||
$journalRepos->shouldReceive('setUser')->once();
|
$journalRepos->shouldReceive('setUser')->once();
|
||||||
$journalRepos->shouldReceive('store')->once()->andReturn($journal);
|
$journalRepos->shouldReceive('store')->once()->andReturn($journal);
|
||||||
$journalRepos->shouldReceive('findByHash')->andReturn(null)->times(2);
|
$journalRepos->shouldReceive('findByHash')->andReturn(null)->times(2);
|
||||||
|
$repository->shouldReceive('getTransactions')->times(2)->andReturn($transactions);
|
||||||
|
|
||||||
$storage = new ImportArrayStorage;
|
$storage = new ImportArrayStorage;
|
||||||
$storage->setImportJob($job);
|
$storage->setImportJob($job);
|
||||||
@@ -398,7 +404,8 @@ class ImportArrayStorageTest extends TestCase
|
|||||||
$userRepos->shouldReceive('findNull')->once()->andReturn($this->user());
|
$userRepos->shouldReceive('findNull')->once()->andReturn($this->user());
|
||||||
|
|
||||||
// make fake job
|
// make fake job
|
||||||
$job = new ImportJob;
|
$job = new ImportJob;
|
||||||
|
$transactions = [$this->singleWithdrawal()];
|
||||||
$job->user()->associate($this->user());
|
$job->user()->associate($this->user());
|
||||||
$job->key = 'f_storage' . random_int(1, 10000);
|
$job->key = 'f_storage' . random_int(1, 10000);
|
||||||
$job->status = 'new';
|
$job->status = 'new';
|
||||||
@@ -406,7 +413,7 @@ class ImportArrayStorageTest extends TestCase
|
|||||||
$job->provider = 'fake';
|
$job->provider = 'fake';
|
||||||
$job->file_type = '';
|
$job->file_type = '';
|
||||||
$job->configuration = ['apply-rules' => true];
|
$job->configuration = ['apply-rules' => true];
|
||||||
$job->transactions = [$this->singleWithdrawal()];
|
$job->transactions = ['count' => 1];
|
||||||
$job->save();
|
$job->save();
|
||||||
|
|
||||||
// get some stuff:
|
// get some stuff:
|
||||||
@@ -435,6 +442,7 @@ class ImportArrayStorageTest extends TestCase
|
|||||||
$journalRepos->shouldReceive('setUser')->once();
|
$journalRepos->shouldReceive('setUser')->once();
|
||||||
$journalRepos->shouldReceive('store')->once()->andReturn($journal);
|
$journalRepos->shouldReceive('store')->once()->andReturn($journal);
|
||||||
$journalRepos->shouldReceive('findByHash')->andReturn(null)->times(2);
|
$journalRepos->shouldReceive('findByHash')->andReturn(null)->times(2);
|
||||||
|
$repository->shouldReceive('getTransactions')->times(2)->andReturn($transactions);
|
||||||
|
|
||||||
|
|
||||||
$storage = new ImportArrayStorage;
|
$storage = new ImportArrayStorage;
|
||||||
@@ -458,6 +466,7 @@ class ImportArrayStorageTest extends TestCase
|
|||||||
|
|
||||||
// make fake job
|
// make fake job
|
||||||
$job = new ImportJob;
|
$job = new ImportJob;
|
||||||
|
$transactions = [$this->singleTransfer(), $this->singleWithdrawal()];
|
||||||
$job->user()->associate($this->user());
|
$job->user()->associate($this->user());
|
||||||
$job->key = 'g_storage' . random_int(1, 10000);
|
$job->key = 'g_storage' . random_int(1, 10000);
|
||||||
$job->status = 'new';
|
$job->status = 'new';
|
||||||
@@ -465,7 +474,7 @@ class ImportArrayStorageTest extends TestCase
|
|||||||
$job->provider = 'fake';
|
$job->provider = 'fake';
|
||||||
$job->file_type = '';
|
$job->file_type = '';
|
||||||
$job->configuration = ['apply-rules' => true];
|
$job->configuration = ['apply-rules' => true];
|
||||||
$job->transactions = [$this->singleTransfer(), $this->singleWithdrawal()];
|
$job->transactions = ['count' => 2];
|
||||||
$job->save();
|
$job->save();
|
||||||
|
|
||||||
// get a transfer:
|
// get a transfer:
|
||||||
@@ -506,6 +515,7 @@ class ImportArrayStorageTest extends TestCase
|
|||||||
$journalRepos->shouldReceive('setUser')->once();
|
$journalRepos->shouldReceive('setUser')->once();
|
||||||
$journalRepos->shouldReceive('store')->twice()->andReturn($journal);
|
$journalRepos->shouldReceive('store')->twice()->andReturn($journal);
|
||||||
$journalRepos->shouldReceive('findByHash')->andReturn(null)->times(4);
|
$journalRepos->shouldReceive('findByHash')->andReturn(null)->times(4);
|
||||||
|
$repository->shouldReceive('getTransactions')->times(2)->andReturn($transactions);
|
||||||
|
|
||||||
// mock collector so it will return some transfers:
|
// mock collector so it will return some transfers:
|
||||||
$collector->shouldReceive('setAllAssetAccounts')->once()->andReturnSelf();
|
$collector->shouldReceive('setAllAssetAccounts')->once()->andReturnSelf();
|
||||||
@@ -587,6 +597,7 @@ class ImportArrayStorageTest extends TestCase
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @return array
|
* @return array
|
||||||
|
* @throws \Exception
|
||||||
*/
|
*/
|
||||||
private function singleTransfer(): array
|
private function singleTransfer(): array
|
||||||
{
|
{
|
||||||
@@ -635,6 +646,7 @@ class ImportArrayStorageTest extends TestCase
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @return array
|
* @return array
|
||||||
|
* @throws \Exception
|
||||||
*/
|
*/
|
||||||
private function singleWithdrawal(): array
|
private function singleWithdrawal(): array
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user