Optimise test code.

This commit is contained in:
James Cole
2019-06-13 18:07:49 +02:00
parent 162c8af6ca
commit 5d1cfc661f
29 changed files with 110 additions and 75 deletions

View File

@@ -233,6 +233,9 @@ class AccountController extends Controller
* @param Account $account * @param Account $account
* *
* @return JsonResponse * @return JsonResponse
*
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
*/ */
public function transactions(Request $request, Account $account): JsonResponse public function transactions(Request $request, Account $account): JsonResponse
{ {
@@ -249,8 +252,6 @@ class AccountController extends Controller
$types = $this->mapTransactionTypes($this->parameters->get('type')); $types = $this->mapTransactionTypes($this->parameters->get('type'));
$manager = new Manager(); $manager = new Manager();
$baseUrl = $request->getSchemeAndHttpHost() . '/api/v1'; $baseUrl = $request->getSchemeAndHttpHost() . '/api/v1';
$manager->setSerializer(new JsonApiSerializer($baseUrl)); $manager->setSerializer(new JsonApiSerializer($baseUrl));
/** @var User $admin */ /** @var User $admin */
@@ -259,18 +260,8 @@ class AccountController extends Controller
// use new group collector: // use new group collector:
/** @var GroupCollectorInterface $collector */ /** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector $collector->setUser($admin)->setAccounts(new Collection([$account]))
->setUser($admin) ->withAPIInformation()->setLimit($pageSize)->setPage($this->parameters->get('page'))->setTypes($types);
// set the account to filter on to the current one:
->setAccounts(new Collection([$account]))
// all info needed for the API:
->withAPIInformation()
// set page size:
->setLimit($pageSize)
// set page to retrieve
->setPage($this->parameters->get('page'))
// set types of transactions to return.
->setTypes($types);
// set range if necessary: // set range if necessary:
if (null !== $this->parameters->get('start') && null !== $this->parameters->get('end')) { if (null !== $this->parameters->get('start') && null !== $this->parameters->get('end')) {

View File

@@ -47,6 +47,8 @@ use League\Fractal\Serializer\JsonApiSerializer;
/** /**
* Class BillController. * Class BillController.
*
* @SuppressWarnings(PHPMD.CouplingBetweenObjects)
*/ */
class BillController extends Controller class BillController extends Controller
{ {

View File

@@ -64,6 +64,8 @@ class CategoryController extends Controller
* @param DateRequest $request * @param DateRequest $request
* *
* @return JsonResponse * @return JsonResponse
*
* TODO after 4.8.0, simplify
*/ */
public function overview(DateRequest $request): JsonResponse public function overview(DateRequest $request): JsonResponse
{ {

View File

@@ -98,6 +98,7 @@ class RuleGroupTriggerRequest extends Request
Log::debug(sprintf('Searching for asset account with id "%s"', $accountId)); Log::debug(sprintf('Searching for asset account with id "%s"', $accountId));
$account = $accountRepository->findNull((int)$accountId); $account = $accountRepository->findNull((int)$accountId);
if ($this->validAccount($account)) { if ($this->validAccount($account)) {
/** @noinspection NullPointerExceptionInspection */
Log::debug(sprintf('Found account #%d ("%s") and its an asset account', $account->id, $account->name)); Log::debug(sprintf('Found account #%d ("%s") and its an asset account', $account->id, $account->name));
$accounts->push($account); $accounts->push($account);
} }

View File

@@ -204,8 +204,10 @@ class MigrateToRules extends Command
], ],
], ],
'actions' => [ 'actions' => [
'type' => 'link_to_bill', [
'value' => $bill->name, 'type' => 'link_to_bill',
'value' => $bill->name,
],
], ],
]; ];

View File

@@ -28,6 +28,7 @@ use Exception;
/** /**
* Class FireflyException. * Class FireflyException.
* @codeCoverageIgnore
*/ */
class FireflyException extends Exception class FireflyException extends Exception
{ {

View File

@@ -28,6 +28,7 @@ use Exception;
/** /**
* Class NotImplementedException. * Class NotImplementedException.
* @codeCoverageIgnore
*/ */
class NotImplementedException extends Exception class NotImplementedException extends Exception
{ {

View File

@@ -28,6 +28,7 @@ use Exception;
/** /**
* Class ValidationExceptions. * Class ValidationExceptions.
* @codeCoverageIgnore
*/ */
class ValidationException extends Exception class ValidationException extends Exception
{ {

View File

@@ -96,8 +96,8 @@ class AccountControllerTest extends TestCase
// mock repositories // mock repositories
$repository = $this->mock(AccountRepositoryInterface::class); $repository = $this->mock(AccountRepositoryInterface::class);
$currencyRepos = $this->mock(CurrencyRepositoryInterface::class); $currencyRepos = $this->mock(CurrencyRepositoryInterface::class);
$revenue = $this->getRandomRevenue(); $revenue = $this->getRandomRevenue();
$euro = $this->getEuro(); $euro = $this->getEuro();
// mock calls: // mock calls:
$repository->shouldReceive('setUser')->atLeast()->once(); $repository->shouldReceive('setUser')->atLeast()->once();
$currencyRepos->shouldReceive('setUser')->atLeast()->once(); $currencyRepos->shouldReceive('setUser')->atLeast()->once();

View File

@@ -34,8 +34,8 @@ use Tests\TestCase;
class AvailableBudgetControllerTest extends TestCase class AvailableBudgetControllerTest extends TestCase
{ {
/** /**
* *
*/ */
public function setUp(): void public function setUp(): void
{ {
parent::setUp(); parent::setUp();

View File

@@ -62,9 +62,9 @@ class CurrencyControllerTest extends TestCase
public function testStore(): void public function testStore(): void
{ {
$currency = TransactionCurrency::first(); $currency = TransactionCurrency::first();
$repository = $this->mock(CurrencyRepositoryInterface::class); $repository = $this->mock(CurrencyRepositoryInterface::class);
$transformer = $this->mock(CurrencyTransformer::class); $transformer = $this->mock(CurrencyTransformer::class);
$userRepository = $this->mock(UserRepositoryInterface::class); $userRepository = $this->mock(UserRepositoryInterface::class);
// mock transformer // mock transformer
@@ -102,9 +102,9 @@ class CurrencyControllerTest extends TestCase
*/ */
public function testStoreWithDefault(): void public function testStoreWithDefault(): void
{ {
$currency = TransactionCurrency::first(); $currency = TransactionCurrency::first();
$repository = $this->mock(CurrencyRepositoryInterface::class); $repository = $this->mock(CurrencyRepositoryInterface::class);
$transformer = $this->mock(CurrencyTransformer::class); $transformer = $this->mock(CurrencyTransformer::class);
$userRepository = $this->mock(UserRepositoryInterface::class); $userRepository = $this->mock(UserRepositoryInterface::class);
// mock transformer // mock transformer
@@ -188,9 +188,9 @@ class CurrencyControllerTest extends TestCase
*/ */
public function testUpdateWithDefault(): void public function testUpdateWithDefault(): void
{ {
$currency = TransactionCurrency::first(); $currency = TransactionCurrency::first();
$repository = $this->mock(CurrencyRepositoryInterface::class); $repository = $this->mock(CurrencyRepositoryInterface::class);
$transformer = $this->mock(CurrencyTransformer::class); $transformer = $this->mock(CurrencyTransformer::class);
$this->mock(UserRepositoryInterface::class); $this->mock(UserRepositoryInterface::class);
$preference = new Preference; $preference = new Preference;
$preference->data = 'EUR'; $preference->data = 'EUR';

View File

@@ -180,7 +180,7 @@ class LinkTypeControllerTest extends TestCase
public function testUpdateNotEditable(): void public function testUpdateNotEditable(): void
{ {
// mock stuff: // mock stuff:
$repository = $this->mock(LinkTypeRepositoryInterface::class); $repository = $this->mock(LinkTypeRepositoryInterface::class);
$userRepository = $this->mock(UserRepositoryInterface::class); $userRepository = $this->mock(UserRepositoryInterface::class);
// create editable link type: // create editable link type:

View File

@@ -56,7 +56,7 @@ class PreferencesControllerTest extends TestCase
*/ */
public function testUpdateArray(): void public function testUpdateArray(): void
{ {
$transformer = $this->mock(PreferenceTransformer::class); $transformer = $this->mock(PreferenceTransformer::class);
$accountRepos = $this->mock(AccountRepositoryInterface::class); $accountRepos = $this->mock(AccountRepositoryInterface::class);
// mock calls to transformer: // mock calls to transformer:
@@ -80,7 +80,7 @@ class PreferencesControllerTest extends TestCase
*/ */
public function testUpdateBoolean(): void public function testUpdateBoolean(): void
{ {
$transformer = $this->mock(PreferenceTransformer::class); $transformer = $this->mock(PreferenceTransformer::class);
$accountRepos = $this->mock(AccountRepositoryInterface::class); $accountRepos = $this->mock(AccountRepositoryInterface::class);
// mock calls to transformer: // mock calls to transformer:
@@ -105,7 +105,7 @@ class PreferencesControllerTest extends TestCase
*/ */
public function testUpdateDefault(): void public function testUpdateDefault(): void
{ {
$transformer = $this->mock(PreferenceTransformer::class); $transformer = $this->mock(PreferenceTransformer::class);
$accountRepos = $this->mock(AccountRepositoryInterface::class); $accountRepos = $this->mock(AccountRepositoryInterface::class);
// mock calls to transformer: // mock calls to transformer:
@@ -129,7 +129,7 @@ class PreferencesControllerTest extends TestCase
*/ */
public function testUpdateInteger(): void public function testUpdateInteger(): void
{ {
$transformer = $this->mock(PreferenceTransformer::class); $transformer = $this->mock(PreferenceTransformer::class);
$accountRepos = $this->mock(AccountRepositoryInterface::class); $accountRepos = $this->mock(AccountRepositoryInterface::class);
// mock calls to transformer: // mock calls to transformer:

View File

@@ -104,7 +104,7 @@ class DeleteEmptyJournalsTest extends TestCase
$this->artisan('firefly-iii:delete-empty-journals') $this->artisan('firefly-iii:delete-empty-journals')
->expectsOutput(sprintf('Deleted transaction journal #%d because it had an uneven number of transactions.', $journal->id)) ->expectsOutput(sprintf('Deleted transaction journal #%d because it had an uneven number of transactions.', $journal->id))
->expectsOutput('No empty transaction journals.') ->expectsOutput('No empty transaction journals.')
->assertExitCode(0); ->assertExitCode(0);
// verify both are gone // verify both are gone

View File

@@ -50,7 +50,7 @@ class EnableCurrenciesTest extends TestCase
$count = TransactionCurrency::where('enabled', 1)->count(); $count = TransactionCurrency::where('enabled', 1)->count();
$this->artisan('firefly-iii:enable-currencies') $this->artisan('firefly-iii:enable-currencies')
->expectsOutput('All currencies are correctly enabled or disabled.') ->expectsOutput('All currencies are correctly enabled or disabled.')
->assertExitCode(0); ->assertExitCode(0);

View File

@@ -46,7 +46,7 @@ class RenameMetaFieldsTest extends TestCase
public function testHandle(): void public function testHandle(): void
{ {
$this->artisan('firefly-iii:rename-meta-fields') $this->artisan('firefly-iii:rename-meta-fields')
->expectsOutput('All meta fields are correct.') ->expectsOutput('All meta fields are correct.')
->assertExitCode(0); ->assertExitCode(0);
} }
@@ -66,7 +66,7 @@ class RenameMetaFieldsTest extends TestCase
); );
$this->artisan('firefly-iii:rename-meta-fields') $this->artisan('firefly-iii:rename-meta-fields')
->expectsOutput('Renamed 1 meta field(s).') ->expectsOutput('Renamed 1 meta field(s).')
->assertExitCode(0); ->assertExitCode(0);
// verify update // verify update

View File

@@ -61,7 +61,6 @@ class DecryptDatabaseTest extends TestCase
]); ]);
FireflyConfig::shouldReceive('get')->withArgs([Mockery::any(), false])->atLeast()->once()->andReturn(null); FireflyConfig::shouldReceive('get')->withArgs([Mockery::any(), false])->atLeast()->once()->andReturn(null);
FireflyConfig::shouldReceive('set')->withArgs([Mockery::any(), true])->atLeast()->once(); FireflyConfig::shouldReceive('set')->withArgs([Mockery::any(), true])->atLeast()->once();
@@ -113,9 +112,9 @@ class DecryptDatabaseTest extends TestCase
public function testHandleNotEncrypted(): void public function testHandleNotEncrypted(): void
{ {
// create encrypted account: // create encrypted account:
$name = 'Encrypted name'; $name = 'Encrypted name';
$iban = 'HR1723600001101234565'; $iban = 'HR1723600001101234565';
$account = Account::create( $account = Account::create(
[ [
'user_id' => 1, 'user_id' => 1,
'account_type_id' => 1, 'account_type_id' => 1,

View File

@@ -27,6 +27,7 @@ use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use FireflyIII\Repositories\Journal\JournalRepositoryInterface; use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
use FireflyIII\Repositories\Rule\RuleRepositoryInterface; use FireflyIII\Repositories\Rule\RuleRepositoryInterface;
use FireflyIII\Repositories\RuleGroup\RuleGroupRepositoryInterface; use FireflyIII\Repositories\RuleGroup\RuleGroupRepositoryInterface;
use FireflyIII\Repositories\User\UserRepositoryInterface;
use FireflyIII\TransactionRules\Engine\RuleEngine; use FireflyIII\TransactionRules\Engine\RuleEngine;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
use Log; use Log;
@@ -59,6 +60,7 @@ class ApplyRulesTest extends TestCase
$collector = $this->mock(GroupCollectorInterface::class); $collector = $this->mock(GroupCollectorInterface::class);
$accountRepos = $this->mock(AccountRepositoryInterface::class); $accountRepos = $this->mock(AccountRepositoryInterface::class);
$ruleEngine = $this->mock(RuleEngine::class); $ruleEngine = $this->mock(RuleEngine::class);
$userRepos = $this->mock(UserRepositoryInterface::class);
// data // data
$asset = $this->getRandomAsset(); $asset = $this->getRandomAsset();
@@ -69,6 +71,7 @@ class ApplyRulesTest extends TestCase
$rules = new Collection([$rule]); $rules = new Collection([$rule]);
// expected calls: // expected calls:
$userRepos->shouldReceive('findNull')->atLeast()->once()->andReturn($this->user());
$ruleRepos->shouldReceive('setUser')->atLeast()->once(); $ruleRepos->shouldReceive('setUser')->atLeast()->once();
$ruleGroupRepos->shouldReceive('setUser')->atLeast()->once(); $ruleGroupRepos->shouldReceive('setUser')->atLeast()->once();
$accountRepos->shouldReceive('setUser')->atLeast()->once(); $accountRepos->shouldReceive('setUser')->atLeast()->once();
@@ -109,7 +112,7 @@ class ApplyRulesTest extends TestCase
* *
* @covers \FireflyIII\Console\Commands\Tools\ApplyRules * @covers \FireflyIII\Console\Commands\Tools\ApplyRules
*/ */
public function testHandEmptye(): void public function testHandEmpty(): void
{ {
$ruleRepos = $this->mock(RuleRepositoryInterface::class); $ruleRepos = $this->mock(RuleRepositoryInterface::class);
$ruleGroupRepos = $this->mock(RuleGroupRepositoryInterface::class); $ruleGroupRepos = $this->mock(RuleGroupRepositoryInterface::class);
@@ -117,6 +120,7 @@ class ApplyRulesTest extends TestCase
$collector = $this->mock(GroupCollectorInterface::class); $collector = $this->mock(GroupCollectorInterface::class);
$accountRepos = $this->mock(AccountRepositoryInterface::class); $accountRepos = $this->mock(AccountRepositoryInterface::class);
$ruleEngine = $this->mock(RuleEngine::class); $ruleEngine = $this->mock(RuleEngine::class);
$userRepos = $this->mock(UserRepositoryInterface::class);
// data // data
$asset = $this->getRandomAsset(); $asset = $this->getRandomAsset();
@@ -125,6 +129,7 @@ class ApplyRulesTest extends TestCase
$groups = new Collection([$group]); $groups = new Collection([$group]);
// expected calls: // expected calls:
$userRepos->shouldReceive('findNull')->atLeast()->once()->andReturn($this->user());
$ruleRepos->shouldReceive('setUser')->atLeast()->once(); $ruleRepos->shouldReceive('setUser')->atLeast()->once();
$ruleGroupRepos->shouldReceive('setUser')->atLeast()->once(); $ruleGroupRepos->shouldReceive('setUser')->atLeast()->once();
$accountRepos->shouldReceive('setUser')->atLeast()->once(); $accountRepos->shouldReceive('setUser')->atLeast()->once();
@@ -172,6 +177,7 @@ class ApplyRulesTest extends TestCase
$collector = $this->mock(GroupCollectorInterface::class); $collector = $this->mock(GroupCollectorInterface::class);
$accountRepos = $this->mock(AccountRepositoryInterface::class); $accountRepos = $this->mock(AccountRepositoryInterface::class);
$ruleEngine = $this->mock(RuleEngine::class); $ruleEngine = $this->mock(RuleEngine::class);
$userRepos = $this->mock(UserRepositoryInterface::class);
// data // data
$asset = $this->getRandomAsset(); $asset = $this->getRandomAsset();
@@ -181,6 +187,7 @@ class ApplyRulesTest extends TestCase
$rules = new Collection([$rule]); $rules = new Collection([$rule]);
// expected calls: // expected calls:
$userRepos->shouldReceive('findNull')->atLeast()->once()->andReturn($this->user());
$ruleRepos->shouldReceive('setUser')->atLeast()->once(); $ruleRepos->shouldReceive('setUser')->atLeast()->once();
$ruleGroupRepos->shouldReceive('setUser')->atLeast()->once(); $ruleGroupRepos->shouldReceive('setUser')->atLeast()->once();
$accountRepos->shouldReceive('setUser')->atLeast()->once(); $accountRepos->shouldReceive('setUser')->atLeast()->once();
@@ -227,6 +234,7 @@ class ApplyRulesTest extends TestCase
$collector = $this->mock(GroupCollectorInterface::class); $collector = $this->mock(GroupCollectorInterface::class);
$accountRepos = $this->mock(AccountRepositoryInterface::class); $accountRepos = $this->mock(AccountRepositoryInterface::class);
$ruleEngine = $this->mock(RuleEngine::class); $ruleEngine = $this->mock(RuleEngine::class);
$userRepos = $this->mock(UserRepositoryInterface::class);
// data // data
$asset = $this->getRandomAsset(); $asset = $this->getRandomAsset();
@@ -238,6 +246,7 @@ class ApplyRulesTest extends TestCase
$rules = new Collection([$activeRule]); $rules = new Collection([$activeRule]);
// expected calls: // expected calls:
$userRepos->shouldReceive('findNull')->atLeast()->once()->andReturn($this->user());
$ruleRepos->shouldReceive('setUser')->atLeast()->once(); $ruleRepos->shouldReceive('setUser')->atLeast()->once();
$ruleGroupRepos->shouldReceive('setUser')->atLeast()->once(); $ruleGroupRepos->shouldReceive('setUser')->atLeast()->once();
$accountRepos->shouldReceive('setUser')->atLeast()->once(); $accountRepos->shouldReceive('setUser')->atLeast()->once();
@@ -287,6 +296,7 @@ class ApplyRulesTest extends TestCase
$collector = $this->mock(GroupCollectorInterface::class); $collector = $this->mock(GroupCollectorInterface::class);
$accountRepos = $this->mock(AccountRepositoryInterface::class); $accountRepos = $this->mock(AccountRepositoryInterface::class);
$ruleEngine = $this->mock(RuleEngine::class); $ruleEngine = $this->mock(RuleEngine::class);
$userRepos = $this->mock(UserRepositoryInterface::class);
$activeGroup = $this->user()->ruleGroups()->where('active', 1)->inRandomOrder()->first(); $activeGroup = $this->user()->ruleGroups()->where('active', 1)->inRandomOrder()->first();
$inactiveGroup = $this->user()->ruleGroups()->where('active', 0)->inRandomOrder()->first(); $inactiveGroup = $this->user()->ruleGroups()->where('active', 0)->inRandomOrder()->first();
@@ -299,6 +309,7 @@ class ApplyRulesTest extends TestCase
$rules = new Collection([$rule]); $rules = new Collection([$rule]);
// expected calls: // expected calls:
$userRepos->shouldReceive('findNull')->atLeast()->once()->andReturn($this->user());
$ruleRepos->shouldReceive('setUser')->atLeast()->once(); $ruleRepos->shouldReceive('setUser')->atLeast()->once();
$ruleGroupRepos->shouldReceive('setUser')->atLeast()->once(); $ruleGroupRepos->shouldReceive('setUser')->atLeast()->once();
$accountRepos->shouldReceive('setUser')->atLeast()->once(); $accountRepos->shouldReceive('setUser')->atLeast()->once();
@@ -348,8 +359,10 @@ class ApplyRulesTest extends TestCase
$this->mock(GroupCollectorInterface::class); $this->mock(GroupCollectorInterface::class);
$this->mock(AccountRepositoryInterface::class); $this->mock(AccountRepositoryInterface::class);
$this->mock(RuleEngine::class); $this->mock(RuleEngine::class);
$userRepos = $this->mock(UserRepositoryInterface::class);
// expected calls: // expected calls:
$userRepos->shouldReceive('findNull')->atLeast()->once()->andReturn($this->user());
$ruleRepos->shouldReceive('setUser')->atLeast()->once(); $ruleRepos->shouldReceive('setUser')->atLeast()->once();
$ruleGroupRepos->shouldReceive('setUser')->atLeast()->once(); $ruleGroupRepos->shouldReceive('setUser')->atLeast()->once();
@@ -374,15 +387,17 @@ class ApplyRulesTest extends TestCase
{ {
$ruleRepos = $this->mock(RuleRepositoryInterface::class); $ruleRepos = $this->mock(RuleRepositoryInterface::class);
$ruleGroupRepos = $this->mock(RuleGroupRepositoryInterface::class); $ruleGroupRepos = $this->mock(RuleGroupRepositoryInterface::class);
$accountRepos = $this->mock(AccountRepositoryInterface::class);
$userRepos = $this->mock(UserRepositoryInterface::class);
$this->mock(RuleEngine::class);
$this->mock(JournalRepositoryInterface::class); $this->mock(JournalRepositoryInterface::class);
$this->mock(GroupCollectorInterface::class); $this->mock(GroupCollectorInterface::class);
$accountRepos = $this->mock(AccountRepositoryInterface::class);
$this->mock(RuleEngine::class);
// data // data
$expense = $this->getRandomExpense(); $expense = $this->getRandomExpense();
// expected calls: // expected calls:
$userRepos->shouldReceive('findNull')->atLeast()->once()->andReturn($this->user());
$ruleRepos->shouldReceive('setUser')->atLeast()->once(); $ruleRepos->shouldReceive('setUser')->atLeast()->once();
$ruleGroupRepos->shouldReceive('setUser')->atLeast()->once(); $ruleGroupRepos->shouldReceive('setUser')->atLeast()->once();
$accountRepos->shouldReceive('setUser')->atLeast()->once(); $accountRepos->shouldReceive('setUser')->atLeast()->once();

View File

@@ -50,7 +50,7 @@ class BudgetLimitCurrencyTest extends TestCase
BudgetLimit::whereNull('transaction_currency_id')->forceDelete(); BudgetLimit::whereNull('transaction_currency_id')->forceDelete();
$this->artisan('firefly-iii:bl-currency') $this->artisan('firefly-iii:bl-currency')
->expectsOutput('All budget limits are correct.') ->expectsOutput('All budget limits are correct.')
->assertExitCode(0); ->assertExitCode(0);
} }

View File

@@ -57,6 +57,8 @@ class MigrateToGroupsTest extends TestCase
public function testHandle(): void public function testHandle(): void
{ {
$journalRepos = $this->mock(JournalRepositoryInterface::class); $journalRepos = $this->mock(JournalRepositoryInterface::class);
$service = $this->mock(JournalDestroyService::class);
$groupFactory = $this->mock(TransactionGroupFactory::class);
// mock calls: // mock calls:
$journalRepos->shouldReceive('getSplitJournals') $journalRepos->shouldReceive('getSplitJournals')
@@ -85,9 +87,12 @@ class MigrateToGroupsTest extends TestCase
public function testHandleNoGroup(): void public function testHandleNoGroup(): void
{ {
$journalRepos = $this->mock(JournalRepositoryInterface::class); $journalRepos = $this->mock(JournalRepositoryInterface::class);
$asset = $this->getRandomAsset(); $service = $this->mock(JournalDestroyService::class);
$expense = $this->getRandomExpense(); $groupFactory = $this->mock(TransactionGroupFactory::class);
$journal = TransactionJournal::create(
$asset = $this->getRandomAsset();
$expense = $this->getRandomExpense();
$journal = TransactionJournal::create(
[ [
'user_id' => 1, 'user_id' => 1,
'transaction_currency_id' => 1, 'transaction_currency_id' => 1,
@@ -97,7 +102,7 @@ class MigrateToGroupsTest extends TestCase
'date' => '2019-01-01', 'date' => '2019-01-01',
] ]
); );
$one = Transaction::create( $one = Transaction::create(
[ [
'transaction_journal_id' => $journal->id, 'transaction_journal_id' => $journal->id,
'account_id' => $asset->id, 'account_id' => $asset->id,
@@ -105,7 +110,7 @@ class MigrateToGroupsTest extends TestCase
'identifier' => 1, 'identifier' => 1,
] ]
); );
$two = Transaction::create( $two = Transaction::create(
[ [
'transaction_journal_id' => $journal->id, 'transaction_journal_id' => $journal->id,
'account_id' => $expense->id, 'account_id' => $expense->id,
@@ -113,7 +118,7 @@ class MigrateToGroupsTest extends TestCase
'identifier' => 1, 'identifier' => 1,
] ]
); );
$array = $journal->toArray(); $array = $journal->toArray();
// mock calls: // mock calls:
$journalRepos->shouldReceive('getSplitJournals') $journalRepos->shouldReceive('getSplitJournals')

View File

@@ -140,7 +140,7 @@ class TransactionIdentifierTest extends TestCase
// assume all is well. // assume all is well.
$this->artisan('firefly-iii:transaction-identifiers') $this->artisan('firefly-iii:transaction-identifiers')
->expectsOutput('Fixed 2 split journal transaction identifier(s).') ->expectsOutput('Fixed 2 split journal transaction identifier(s).')
->assertExitCode(0); ->assertExitCode(0);
// see results: // see results:

View File

@@ -75,7 +75,8 @@ class PiggyBankEventFactoryTest extends TestCase
* @covers \FireflyIII\Factory\PiggyBankEventFactory * @covers \FireflyIII\Factory\PiggyBankEventFactory
*/ */
public function testCreateNoPiggy(): void public function testCreateNoPiggy(): void
{ $this->markTestIncomplete('Needs to be rewritten for v4.8.0'); {
$this->markTestIncomplete('Needs to be rewritten for v4.8.0');
return; return;
/** @var TransactionJournal $transfer */ /** @var TransactionJournal $transfer */
@@ -93,7 +94,8 @@ class PiggyBankEventFactoryTest extends TestCase
* @covers \FireflyIII\Factory\PiggyBankEventFactory * @covers \FireflyIII\Factory\PiggyBankEventFactory
*/ */
public function testCreateNoRep(): void public function testCreateNoRep(): void
{ $this->markTestIncomplete('Needs to be rewritten for v4.8.0'); {
$this->markTestIncomplete('Needs to be rewritten for v4.8.0');
return; return;
/** @var TransactionJournal $transfer */ /** @var TransactionJournal $transfer */
@@ -115,7 +117,8 @@ class PiggyBankEventFactoryTest extends TestCase
* @covers \FireflyIII\Factory\PiggyBankEventFactory * @covers \FireflyIII\Factory\PiggyBankEventFactory
*/ */
public function testCreateNotTransfer(): void public function testCreateNotTransfer(): void
{ $this->markTestIncomplete('Needs to be rewritten for v4.8.0'); {
$this->markTestIncomplete('Needs to be rewritten for v4.8.0');
return; return;
/** @var TransactionJournal $deposit */ /** @var TransactionJournal $deposit */
@@ -131,7 +134,8 @@ class PiggyBankEventFactoryTest extends TestCase
* @covers \FireflyIII\Factory\PiggyBankEventFactory * @covers \FireflyIII\Factory\PiggyBankEventFactory
*/ */
public function testCreateSuccess(): void public function testCreateSuccess(): void
{ $this->markTestIncomplete('Needs to be rewritten for v4.8.0'); {
$this->markTestIncomplete('Needs to be rewritten for v4.8.0');
return; return;
/** @var TransactionJournal $transfer */ /** @var TransactionJournal $transfer */

View File

@@ -49,7 +49,8 @@ class TransactionJournalMetaFactoryTest extends TestCase
* @covers \FireflyIII\Factory\TransactionJournalMetaFactory * @covers \FireflyIII\Factory\TransactionJournalMetaFactory
*/ */
public function testUpdateOrCreateBasic(): void public function testUpdateOrCreateBasic(): void
{ $this->markTestIncomplete('Needs to be rewritten for v4.8.0'); {
$this->markTestIncomplete('Needs to be rewritten for v4.8.0');
return; return;
/** @var TransactionJournal $journal */ /** @var TransactionJournal $journal */
@@ -72,7 +73,8 @@ class TransactionJournalMetaFactoryTest extends TestCase
* @covers \FireflyIII\Factory\TransactionJournalMetaFactory * @covers \FireflyIII\Factory\TransactionJournalMetaFactory
*/ */
public function testUpdateOrCreateDate(): void public function testUpdateOrCreateDate(): void
{ $this->markTestIncomplete('Needs to be rewritten for v4.8.0'); {
$this->markTestIncomplete('Needs to be rewritten for v4.8.0');
return; return;
/** @var TransactionJournal $journal */ /** @var TransactionJournal $journal */
@@ -95,7 +97,8 @@ class TransactionJournalMetaFactoryTest extends TestCase
* @covers \FireflyIII\Factory\TransactionJournalMetaFactory * @covers \FireflyIII\Factory\TransactionJournalMetaFactory
*/ */
public function testUpdateOrCreateDeleteExisting(): void public function testUpdateOrCreateDeleteExisting(): void
{ $this->markTestIncomplete('Needs to be rewritten for v4.8.0'); {
$this->markTestIncomplete('Needs to be rewritten for v4.8.0');
return; return;
/** @var TransactionJournal $journal */ /** @var TransactionJournal $journal */
@@ -125,7 +128,8 @@ class TransactionJournalMetaFactoryTest extends TestCase
* @covers \FireflyIII\Factory\TransactionJournalMetaFactory * @covers \FireflyIII\Factory\TransactionJournalMetaFactory
*/ */
public function testUpdateOrCreateEmpty(): void public function testUpdateOrCreateEmpty(): void
{ $this->markTestIncomplete('Needs to be rewritten for v4.8.0'); {
$this->markTestIncomplete('Needs to be rewritten for v4.8.0');
return; return;
/** @var TransactionJournal $journal */ /** @var TransactionJournal $journal */
@@ -148,7 +152,8 @@ class TransactionJournalMetaFactoryTest extends TestCase
* @covers \FireflyIII\Factory\TransactionJournalMetaFactory * @covers \FireflyIII\Factory\TransactionJournalMetaFactory
*/ */
public function testUpdateOrCreateExistingEmpty(): void public function testUpdateOrCreateExistingEmpty(): void
{ $this->markTestIncomplete('Needs to be rewritten for v4.8.0'); {
$this->markTestIncomplete('Needs to be rewritten for v4.8.0');
return; return;
/** @var TransactionJournal $journal */ /** @var TransactionJournal $journal */

View File

@@ -24,6 +24,7 @@ declare(strict_types=1);
namespace Tests\Unit\Import\Storage; namespace Tests\Unit\Import\Storage;
use Carbon\Carbon; use Carbon\Carbon;
use Exception;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Helpers\Collector\TransactionCollector; use FireflyIII\Helpers\Collector\TransactionCollector;
use FireflyIII\Helpers\Collector\TransactionCollectorInterface; use FireflyIII\Helpers\Collector\TransactionCollectorInterface;
@@ -620,7 +621,7 @@ class ImportArrayStorageTest extends TestCase
/** /**
* @return array * @return array
* @throws \Exception * @throws Exception
*/ */
private function singleTransfer(): array private function singleTransfer(): array
{ {
@@ -669,7 +670,7 @@ class ImportArrayStorageTest extends TestCase
/** /**
* @return array * @return array
* @throws \Exception * @throws Exception
*/ */
private function singleWithdrawal(): array private function singleWithdrawal(): array
{ {

View File

@@ -835,7 +835,8 @@ class BinderTest extends TestCase
* @covers \FireflyIII\Support\Binder\JournalList * @covers \FireflyIII\Support\Binder\JournalList
*/ */
public function testJournalList(): void public function testJournalList(): void
{ $this->markTestIncomplete('Needs to be rewritten for v4.8.0'); {
$this->markTestIncomplete('Needs to be rewritten for v4.8.0');
return; return;
Route::middleware(Binder::class)->any( Route::middleware(Binder::class)->any(
@@ -854,7 +855,8 @@ class BinderTest extends TestCase
* @covers \FireflyIII\Support\Binder\JournalList * @covers \FireflyIII\Support\Binder\JournalList
*/ */
public function testJournalListEmpty(): void public function testJournalListEmpty(): void
{ $this->markTestIncomplete('Needs to be rewritten for v4.8.0'); {
$this->markTestIncomplete('Needs to be rewritten for v4.8.0');
return; return;
Route::middleware(Binder::class)->any( Route::middleware(Binder::class)->any(

View File

@@ -498,8 +498,8 @@ class ImportTransactionTest extends TestCase
*/ */
public function testCalculateAmountNeg(): void public function testCalculateAmountNeg(): void
{ {
$importTransaction = new ImportTransaction; $importTransaction = new ImportTransaction;
$importTransaction->amount = '2.99'; $importTransaction->amount = '2.99';
$importTransaction->modifiers['generic-debit-credit'] = 'D'; $importTransaction->modifiers['generic-debit-credit'] = 'D';
try { try {
$this->assertEquals('-2.99', $importTransaction->calculateAmount()); $this->assertEquals('-2.99', $importTransaction->calculateAmount());
@@ -635,8 +635,8 @@ class ImportTransactionTest extends TestCase
*/ */
public function testForeignAmountModNeg(): void public function testForeignAmountModNeg(): void
{ {
$importTransaction = new ImportTransaction; $importTransaction = new ImportTransaction;
$importTransaction->foreignAmount = '6.77'; $importTransaction->foreignAmount = '6.77';
$importTransaction->modifiers['generic-debit-credit'] = 'D'; $importTransaction->modifiers['generic-debit-credit'] = 'D';
$this->assertEquals('-6.77', $importTransaction->calculateForeignAmount()); $this->assertEquals('-6.77', $importTransaction->calculateForeignAmount());
} }
@@ -648,8 +648,8 @@ class ImportTransactionTest extends TestCase
*/ */
public function testForeignAmountModPos(): void public function testForeignAmountModPos(): void
{ {
$importTransaction = new ImportTransaction; $importTransaction = new ImportTransaction;
$importTransaction->foreignAmount = '-5.77'; $importTransaction->foreignAmount = '-5.77';
$importTransaction->modifiers['generic-debit-credit'] = 'C'; $importTransaction->modifiers['generic-debit-credit'] = 'C';
$this->assertEquals('5.77', $importTransaction->calculateForeignAmount()); $this->assertEquals('5.77', $importTransaction->calculateForeignAmount());
} }

View File

@@ -93,7 +93,8 @@ class ConvertToDepositTest extends TestCase
* @covers \FireflyIII\TransactionRules\Actions\ConvertToDeposit * @covers \FireflyIII\TransactionRules\Actions\ConvertToDeposit
*/ */
public function testActWithdrawal() public function testActWithdrawal()
{$this->markTestIncomplete('Needs to be rewritten for v4.8.0'); {
$this->markTestIncomplete('Needs to be rewritten for v4.8.0');
return; return;
$revenue = $this->getRandomRevenue(); $revenue = $this->getRandomRevenue();

View File

@@ -55,7 +55,8 @@ class ConvertToTransferTest extends TestCase
* @covers \FireflyIII\TransactionRules\Actions\ConvertToTransfer * @covers \FireflyIII\TransactionRules\Actions\ConvertToTransfer
*/ */
public function testActDeposit(): void public function testActDeposit(): void
{$this->markTestIncomplete('Needs to be rewritten for v4.8.0'); {
$this->markTestIncomplete('Needs to be rewritten for v4.8.0');
return; return;
$deposit = $this->getRandomDeposit(); $deposit = $this->getRandomDeposit();

View File

@@ -54,7 +54,8 @@ class ConvertToWithdrawalTest extends TestCase
* @covers \FireflyIII\TransactionRules\Actions\ConvertToWithdrawal * @covers \FireflyIII\TransactionRules\Actions\ConvertToWithdrawal
*/ */
public function testActDeposit() public function testActDeposit()
{$this->markTestIncomplete('Needs to be rewritten for v4.8.0'); {
$this->markTestIncomplete('Needs to be rewritten for v4.8.0');
return; return;
$expense = $this->getRandomExpense(); $expense = $this->getRandomExpense();