mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-09-19 10:53:37 +00:00
Fix test cases.
This commit is contained in:
@@ -25,7 +25,7 @@ namespace Tests\Api\V1\Controllers;
|
|||||||
|
|
||||||
use Laravel\Passport\Passport;
|
use Laravel\Passport\Passport;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
|
use Log;
|
||||||
/**
|
/**
|
||||||
* Class AboutControllerTest
|
* Class AboutControllerTest
|
||||||
*/
|
*/
|
||||||
@@ -38,6 +38,7 @@ class AboutControllerTest extends TestCase
|
|||||||
{
|
{
|
||||||
parent::setUp();
|
parent::setUp();
|
||||||
Passport::actingAs($this->user());
|
Passport::actingAs($this->user());
|
||||||
|
Log::debug('Now in Api/AboutControllerTest.');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -29,6 +29,7 @@ use FireflyIII\Repositories\Account\AccountRepositoryInterface;
|
|||||||
use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface;
|
use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface;
|
||||||
use Laravel\Passport\Passport;
|
use Laravel\Passport\Passport;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
|
use Log;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class AccountControllerTest
|
* Class AccountControllerTest
|
||||||
@@ -42,6 +43,7 @@ class AccountControllerTest extends TestCase
|
|||||||
{
|
{
|
||||||
parent::setUp();
|
parent::setUp();
|
||||||
Passport::actingAs($this->user());
|
Passport::actingAs($this->user());
|
||||||
|
Log::debug('Now in Api/AccountControllerTest.');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -28,6 +28,7 @@ use FireflyIII\Models\Bill;
|
|||||||
use FireflyIII\Repositories\Bill\BillRepositoryInterface;
|
use FireflyIII\Repositories\Bill\BillRepositoryInterface;
|
||||||
use Illuminate\Pagination\LengthAwarePaginator;
|
use Illuminate\Pagination\LengthAwarePaginator;
|
||||||
use Laravel\Passport\Passport;
|
use Laravel\Passport\Passport;
|
||||||
|
use Log;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -42,6 +43,7 @@ class BillControllerTest extends TestCase
|
|||||||
{
|
{
|
||||||
parent::setUp();
|
parent::setUp();
|
||||||
Passport::actingAs($this->user());
|
Passport::actingAs($this->user());
|
||||||
|
Log::debug('Now in Api/BillControllerTest.');
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
File diff suppressed because it is too large
Load Diff
@@ -32,6 +32,7 @@ use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface;
|
|||||||
use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
|
use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
|
||||||
use Illuminate\Support\Collection;
|
use Illuminate\Support\Collection;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
|
use Log;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class ConfigurationControllerTest
|
* Class ConfigurationControllerTest
|
||||||
@@ -42,6 +43,15 @@ use Tests\TestCase;
|
|||||||
*/
|
*/
|
||||||
class ReconcileControllerTest extends TestCase
|
class ReconcileControllerTest extends TestCase
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public function setUp()
|
||||||
|
{
|
||||||
|
parent::setUp();
|
||||||
|
Log::debug('Now in Feature/Controllers::ReconcileControllerTest.');
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @covers \FireflyIII\Http\Controllers\Account\ReconcileController::edit
|
* @covers \FireflyIII\Http\Controllers\Account\ReconcileController::edit
|
||||||
*/
|
*/
|
||||||
|
@@ -24,6 +24,7 @@ namespace Tests\Feature\Controllers\Admin;
|
|||||||
|
|
||||||
use FireflyConfig;
|
use FireflyConfig;
|
||||||
use FireflyIII\Models\Configuration;
|
use FireflyIII\Models\Configuration;
|
||||||
|
use Log;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -35,6 +36,15 @@ use Tests\TestCase;
|
|||||||
*/
|
*/
|
||||||
class ConfigurationControllerTest extends TestCase
|
class ConfigurationControllerTest extends TestCase
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public function setUp()
|
||||||
|
{
|
||||||
|
parent::setUp();
|
||||||
|
Log::debug('Now in Feature/Controllers/Admin/ConfigurationControllerTest.');
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @covers \FireflyIII\Http\Controllers\Admin\ConfigurationController::index
|
* @covers \FireflyIII\Http\Controllers\Admin\ConfigurationController::index
|
||||||
* @covers \FireflyIII\Http\Controllers\Admin\ConfigurationController::__construct
|
* @covers \FireflyIII\Http\Controllers\Admin\ConfigurationController::__construct
|
||||||
|
@@ -24,6 +24,7 @@ namespace Tests\Feature\Controllers\Admin;
|
|||||||
|
|
||||||
use Event;
|
use Event;
|
||||||
use FireflyIII\Events\AdminRequestedTestMessage;
|
use FireflyIII\Events\AdminRequestedTestMessage;
|
||||||
|
use Log;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -35,6 +36,15 @@ use Tests\TestCase;
|
|||||||
*/
|
*/
|
||||||
class HomeControllerTest extends TestCase
|
class HomeControllerTest extends TestCase
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public function setUp()
|
||||||
|
{
|
||||||
|
parent::setUp();
|
||||||
|
Log::debug('Now in Feature/Controllers/Admin/HomeControllerTest.');
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @covers \FireflyIII\Http\Controllers\Admin\HomeController::index
|
* @covers \FireflyIII\Http\Controllers\Admin\HomeController::index
|
||||||
* @covers \FireflyIII\Http\Controllers\Admin\HomeController::__construct
|
* @covers \FireflyIII\Http\Controllers\Admin\HomeController::__construct
|
||||||
|
@@ -26,7 +26,7 @@ use FireflyIII\Models\LinkType;
|
|||||||
use FireflyIII\Repositories\LinkType\LinkTypeRepositoryInterface;
|
use FireflyIII\Repositories\LinkType\LinkTypeRepositoryInterface;
|
||||||
use Illuminate\Support\Collection;
|
use Illuminate\Support\Collection;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
|
use Log;
|
||||||
/**
|
/**
|
||||||
* Class LinkControllerTest
|
* Class LinkControllerTest
|
||||||
*
|
*
|
||||||
@@ -36,6 +36,15 @@ use Tests\TestCase;
|
|||||||
*/
|
*/
|
||||||
class LinkControllerTest extends TestCase
|
class LinkControllerTest extends TestCase
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public function setUp()
|
||||||
|
{
|
||||||
|
parent::setUp();
|
||||||
|
Log::debug('Now in Feature/Controllers/Admin/LinkControllerTest.');
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @covers \FireflyIII\Http\Controllers\Admin\LinkController::__construct
|
* @covers \FireflyIII\Http\Controllers\Admin\LinkController::__construct
|
||||||
* @covers \FireflyIII\Http\Controllers\Admin\LinkController::create
|
* @covers \FireflyIII\Http\Controllers\Admin\LinkController::create
|
||||||
|
@@ -30,6 +30,7 @@ use FireflyIII\Services\Github\Object\Release;
|
|||||||
use FireflyIII\Services\Github\Request\UpdateRequest;
|
use FireflyIII\Services\Github\Request\UpdateRequest;
|
||||||
use Mockery;
|
use Mockery;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
|
use Log;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class UpdateControllerTest
|
* Class UpdateControllerTest
|
||||||
@@ -40,6 +41,15 @@ use Tests\TestCase;
|
|||||||
*/
|
*/
|
||||||
class UpdateControllerTest extends TestCase
|
class UpdateControllerTest extends TestCase
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public function setUp()
|
||||||
|
{
|
||||||
|
parent::setUp();
|
||||||
|
Log::debug('Now in Feature/Controllers/Admin/UpdateControllerTest.');
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @covers \FireflyIII\Http\Controllers\Admin\UpdateController::index
|
* @covers \FireflyIII\Http\Controllers\Admin\UpdateController::index
|
||||||
* @covers \FireflyIII\Http\Controllers\Admin\UpdateController::__construct
|
* @covers \FireflyIII\Http\Controllers\Admin\UpdateController::__construct
|
||||||
|
@@ -25,7 +25,7 @@ namespace Tests\Feature\Controllers\Admin;
|
|||||||
use FireflyIII\Repositories\User\UserRepositoryInterface;
|
use FireflyIII\Repositories\User\UserRepositoryInterface;
|
||||||
use Illuminate\Support\Collection;
|
use Illuminate\Support\Collection;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
|
use Log;
|
||||||
/**
|
/**
|
||||||
* Class UserControllerTest
|
* Class UserControllerTest
|
||||||
*
|
*
|
||||||
@@ -35,6 +35,15 @@ use Tests\TestCase;
|
|||||||
*/
|
*/
|
||||||
class UserControllerTest extends TestCase
|
class UserControllerTest extends TestCase
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public function setUp()
|
||||||
|
{
|
||||||
|
parent::setUp();
|
||||||
|
Log::debug('Now in Feature/Controllers/Admin/UserControllerTest.');
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @covers \FireflyIII\Http\Controllers\Admin\UserController::delete
|
* @covers \FireflyIII\Http\Controllers\Admin\UserController::delete
|
||||||
*/
|
*/
|
||||||
|
@@ -24,6 +24,7 @@ namespace Tests\Feature\Controllers\Auth;
|
|||||||
|
|
||||||
use FireflyIII\Repositories\User\UserRepositoryInterface;
|
use FireflyIII\Repositories\User\UserRepositoryInterface;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
|
use Log;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class ForgotPasswordControllerTest
|
* Class ForgotPasswordControllerTest
|
||||||
@@ -34,6 +35,15 @@ use Tests\TestCase;
|
|||||||
*/
|
*/
|
||||||
class ForgotPasswordControllerTest extends TestCase
|
class ForgotPasswordControllerTest extends TestCase
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public function setUp()
|
||||||
|
{
|
||||||
|
parent::setUp();
|
||||||
|
Log::debug('Now in Feature/Controllers/Auth/ForgotPasswordControllerTest.');
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @covers \FireflyIII\Http\Controllers\Auth\ForgotPasswordController::__construct
|
* @covers \FireflyIII\Http\Controllers\Auth\ForgotPasswordController::__construct
|
||||||
* @covers \FireflyIII\Http\Controllers\Auth\ForgotPasswordController::sendResetLinkEmail
|
* @covers \FireflyIII\Http\Controllers\Auth\ForgotPasswordController::sendResetLinkEmail
|
||||||
|
@@ -26,6 +26,7 @@ use FireflyIII\Models\Preference;
|
|||||||
use Google2FA;
|
use Google2FA;
|
||||||
use Preferences;
|
use Preferences;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
|
use Log;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class TwoFactorControllerTest
|
* Class TwoFactorControllerTest
|
||||||
@@ -36,6 +37,15 @@ use Tests\TestCase;
|
|||||||
*/
|
*/
|
||||||
class TwoFactorControllerTest extends TestCase
|
class TwoFactorControllerTest extends TestCase
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public function setUp()
|
||||||
|
{
|
||||||
|
parent::setUp();
|
||||||
|
Log::debug('Now in Feature/Controllers/Auth/TwoFactorControllerTest.');
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @covers \FireflyIII\Http\Controllers\Auth\TwoFactorController::index
|
* @covers \FireflyIII\Http\Controllers\Auth\TwoFactorController::index
|
||||||
*/
|
*/
|
||||||
|
@@ -29,6 +29,7 @@ use FireflyIII\Models\Transaction;
|
|||||||
use FireflyIII\Models\TransactionJournal;
|
use FireflyIII\Models\TransactionJournal;
|
||||||
use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
|
use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
|
||||||
use FireflyIII\Repositories\Journal\JournalTaskerInterface;
|
use FireflyIII\Repositories\Journal\JournalTaskerInterface;
|
||||||
|
use FireflyIII\Repositories\LinkType\LinkTypeRepositoryInterface;
|
||||||
use Illuminate\Pagination\LengthAwarePaginator;
|
use Illuminate\Pagination\LengthAwarePaginator;
|
||||||
use Illuminate\Support\Collection;
|
use Illuminate\Support\Collection;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
@@ -270,9 +271,10 @@ class TransactionControllerTest extends TestCase
|
|||||||
public function testShow()
|
public function testShow()
|
||||||
{
|
{
|
||||||
// mock stuff
|
// mock stuff
|
||||||
$repository = $this->mock(JournalRepositoryInterface::class);
|
|
||||||
$tasker = $this->mock(JournalTaskerInterface::class);
|
$tasker = $this->mock(JournalTaskerInterface::class);
|
||||||
$repository->shouldReceive('first')->once()->andReturn(new TransactionJournal);
|
$linkRepos = $this->mock(LinkTypeRepositoryInterface::class);
|
||||||
|
$linkRepos->shouldReceive('get')->andReturn(new Collection);
|
||||||
|
$linkRepos->shouldReceive('getLinks')->andReturn(new Collection);
|
||||||
|
|
||||||
$tasker->shouldReceive('getPiggyBankEvents')->andReturn(new Collection);
|
$tasker->shouldReceive('getPiggyBankEvents')->andReturn(new Collection);
|
||||||
$tasker->shouldReceive('getTransactionsOverview')->andReturn([]);
|
$tasker->shouldReceive('getTransactionsOverview')->andReturn([]);
|
||||||
@@ -289,9 +291,10 @@ class TransactionControllerTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testShowOpeningBalance()
|
public function testShowOpeningBalance()
|
||||||
{
|
{
|
||||||
// mock stuff
|
$tasker = $this->mock(JournalTaskerInterface::class);
|
||||||
$repository = $this->mock(JournalRepositoryInterface::class);
|
$linkRepos = $this->mock(LinkTypeRepositoryInterface::class);
|
||||||
$repository->shouldReceive('first')->once()->andReturn(new TransactionJournal);
|
$linkRepos->shouldReceive('get')->andReturn(new Collection);
|
||||||
|
$linkRepos->shouldReceive('getLinks')->andReturn(new Collection);
|
||||||
|
|
||||||
$this->be($this->user());
|
$this->be($this->user());
|
||||||
$journal = $this->user()->transactionJournals()->where('transaction_type_id', 4)->first();
|
$journal = $this->user()->transactionJournals()->where('transaction_type_id', 4)->first();
|
||||||
|
@@ -26,6 +26,11 @@ namespace Tests\Unit\Import\FileProcessor;
|
|||||||
use FireflyIII\Import\FileProcessor\CsvProcessor;
|
use FireflyIII\Import\FileProcessor\CsvProcessor;
|
||||||
use FireflyIII\Import\Specifics\AbnAmroDescription;
|
use FireflyIII\Import\Specifics\AbnAmroDescription;
|
||||||
use FireflyIII\Models\ImportJob;
|
use FireflyIII\Models\ImportJob;
|
||||||
|
use FireflyIII\Repositories\Account\AccountRepositoryInterface;
|
||||||
|
use FireflyIII\Repositories\Bill\BillRepositoryInterface;
|
||||||
|
use FireflyIII\Repositories\Budget\BudgetRepositoryInterface;
|
||||||
|
use FireflyIII\Repositories\Category\CategoryRepositoryInterface;
|
||||||
|
use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface;
|
||||||
use FireflyIII\Repositories\ImportJob\ImportJobRepositoryInterface;
|
use FireflyIII\Repositories\ImportJob\ImportJobRepositoryInterface;
|
||||||
use Mockery;
|
use Mockery;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
@@ -61,6 +66,18 @@ class CsvProcessorTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testRunBadRole()
|
public function testRunBadRole()
|
||||||
{
|
{
|
||||||
|
$accountRepos = $this->mock(AccountRepositoryInterface::class);
|
||||||
|
$budRepos = $this->mock(BudgetRepositoryInterface::class);
|
||||||
|
$jobRepos = $this->mock(ImportJobRepositoryInterface::class);
|
||||||
|
$catRepos = $this->mock(CategoryRepositoryInterface::class);
|
||||||
|
$billRepos = $this->mock(BillRepositoryInterface::class);
|
||||||
|
$currencyRepos = $this->mock(CurrencyRepositoryInterface::class);
|
||||||
|
|
||||||
|
$accountRepos->shouldReceive('setUser');
|
||||||
|
$budRepos->shouldReceive('setUser');
|
||||||
|
$catRepos->shouldReceive('setUser');
|
||||||
|
$billRepos->shouldReceive('setUser');
|
||||||
|
|
||||||
// data
|
// data
|
||||||
$config = [
|
$config = [
|
||||||
'column-roles' => [
|
'column-roles' => [
|
||||||
@@ -72,16 +89,15 @@ class CsvProcessorTest extends TestCase
|
|||||||
$csvFile = '20170101,-12.34,"Some description"';
|
$csvFile = '20170101,-12.34,"Some description"';
|
||||||
|
|
||||||
// mock stuff
|
// mock stuff
|
||||||
$repository = $this->mock(ImportJobRepositoryInterface::class);
|
|
||||||
$repository->shouldReceive('setUser')->withArgs([Mockery::any()])->once();
|
$jobRepos->shouldReceive('setUser')->withArgs([Mockery::any()])->once();
|
||||||
$repository->shouldReceive('getConfiguration')->andReturn($config);
|
$jobRepos->shouldReceive('getConfiguration')->andReturn($config);
|
||||||
$repository->shouldReceive('uploadFileContents')->withArgs([Mockery::any()])->andReturn($csvFile)->once();
|
$jobRepos->shouldReceive('uploadFileContents')->withArgs([Mockery::any()])->andReturn($csvFile)->once();
|
||||||
//$repository->shouldReceive('getExtendedStatus')->once()->andReturn([]);
|
$jobRepos->shouldReceive('addStepsDone')->twice();
|
||||||
//$repository->shouldReceive('setExtendedStatus')->once()->andReturn($job);
|
|
||||||
$repository->shouldReceive('addStepsDone')->twice();
|
|
||||||
|
|
||||||
// mock stuff for this single row:
|
// mock stuff for this single row:
|
||||||
$repository->shouldReceive('countByHash')->once()->withArgs([Mockery::any()])->andReturn(0);
|
$jobRepos->shouldReceive('countByHash')->once()->withArgs([Mockery::any()])->andReturn(0);
|
||||||
|
|
||||||
$processor = new CsvProcessor();
|
$processor = new CsvProcessor();
|
||||||
$processor->setJob($job);
|
$processor->setJob($job);
|
||||||
$processor->run();
|
$processor->run();
|
||||||
@@ -223,6 +239,18 @@ class CsvProcessorTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testRunSingle()
|
public function testRunSingle()
|
||||||
{
|
{
|
||||||
|
$accountRepos = $this->mock(AccountRepositoryInterface::class);
|
||||||
|
$budRepos = $this->mock(BudgetRepositoryInterface::class);
|
||||||
|
$jobRepos = $this->mock(ImportJobRepositoryInterface::class);
|
||||||
|
$catRepos = $this->mock(CategoryRepositoryInterface::class);
|
||||||
|
$billRepos = $this->mock(BillRepositoryInterface::class);
|
||||||
|
$currencyRepos = $this->mock(CurrencyRepositoryInterface::class);
|
||||||
|
|
||||||
|
$accountRepos->shouldReceive('setUser');
|
||||||
|
$budRepos->shouldReceive('setUser');
|
||||||
|
$catRepos->shouldReceive('setUser');
|
||||||
|
$billRepos->shouldReceive('setUser');
|
||||||
|
|
||||||
// data
|
// data
|
||||||
$config = [];
|
$config = [];
|
||||||
$job = $this->getJob($config);
|
$job = $this->getJob($config);
|
||||||
@@ -230,15 +258,13 @@ class CsvProcessorTest extends TestCase
|
|||||||
$extended = ['steps' => 0, 'done' => 0];
|
$extended = ['steps' => 0, 'done' => 0];
|
||||||
|
|
||||||
// mock stuff
|
// mock stuff
|
||||||
$repository = $this->mock(ImportJobRepositoryInterface::class);
|
$jobRepos->shouldReceive('setUser')->withArgs([Mockery::any()])->once();
|
||||||
$repository->shouldReceive('setUser')->withArgs([Mockery::any()])->once();
|
$jobRepos->shouldReceive('getConfiguration')->andReturn($config);
|
||||||
$repository->shouldReceive('getConfiguration')->andReturn($config);
|
$jobRepos->shouldReceive('uploadFileContents')->withArgs([Mockery::any()])->andReturn($csvFile)->once();
|
||||||
$repository->shouldReceive('uploadFileContents')->withArgs([Mockery::any()])->andReturn($csvFile)->once();
|
|
||||||
// $repository->shouldReceive('getExtendedStatus')->once()->andReturn([]);
|
|
||||||
// $repository->shouldReceive('setExtendedStatus')->once()->andReturn($job);
|
|
||||||
// mock stuff for this single row:
|
// mock stuff for this single row:
|
||||||
$repository->shouldReceive('countByHash')->once()->withArgs([Mockery::any()])->andReturn(0);
|
$jobRepos->shouldReceive('countByHash')->once()->withArgs([Mockery::any()])->andReturn(0);
|
||||||
$repository->shouldReceive('addStepsDone')->times(3)->withArgs([Mockery::any(), 1]);
|
$jobRepos->shouldReceive('addStepsDone')->times(3)->withArgs([Mockery::any(), 1]);
|
||||||
$processor = new CsvProcessor();
|
$processor = new CsvProcessor();
|
||||||
$processor->setJob($job);
|
$processor->setJob($job);
|
||||||
$processor->run();
|
$processor->run();
|
||||||
@@ -260,6 +286,18 @@ class CsvProcessorTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testRunSpecific()
|
public function testRunSpecific()
|
||||||
{
|
{
|
||||||
|
$accountRepos = $this->mock(AccountRepositoryInterface::class);
|
||||||
|
$budRepos = $this->mock(BudgetRepositoryInterface::class);
|
||||||
|
$jobRepos = $this->mock(ImportJobRepositoryInterface::class);
|
||||||
|
$catRepos = $this->mock(CategoryRepositoryInterface::class);
|
||||||
|
$billRepos = $this->mock(BillRepositoryInterface::class);
|
||||||
|
$currencyRepos = $this->mock(CurrencyRepositoryInterface::class);
|
||||||
|
|
||||||
|
$accountRepos->shouldReceive('setUser');
|
||||||
|
$budRepos->shouldReceive('setUser');
|
||||||
|
$catRepos->shouldReceive('setUser');
|
||||||
|
$billRepos->shouldReceive('setUser');
|
||||||
|
|
||||||
// data
|
// data
|
||||||
$config = [
|
$config = [
|
||||||
'specifics' => ['AbnAmroDescription' => 1],
|
'specifics' => ['AbnAmroDescription' => 1],
|
||||||
@@ -270,15 +308,12 @@ class CsvProcessorTest extends TestCase
|
|||||||
$extended = ['steps' => 0, 'done' => 0];
|
$extended = ['steps' => 0, 'done' => 0];
|
||||||
|
|
||||||
// mock stuff
|
// mock stuff
|
||||||
$repository = $this->mock(ImportJobRepositoryInterface::class);
|
$jobRepos->shouldReceive('setUser')->withArgs([Mockery::any()])->once();
|
||||||
$repository->shouldReceive('setUser')->withArgs([Mockery::any()])->once();
|
$jobRepos->shouldReceive('getConfiguration')->andReturn($config);
|
||||||
$repository->shouldReceive('getConfiguration')->andReturn($config);
|
$jobRepos->shouldReceive('uploadFileContents')->withArgs([Mockery::any()])->andReturn($csvFile)->once();
|
||||||
$repository->shouldReceive('uploadFileContents')->withArgs([Mockery::any()])->andReturn($csvFile)->once();
|
|
||||||
// $repository->shouldReceive('getExtendedStatus')->once()->andReturn([]);
|
|
||||||
// $repository->shouldReceive('setExtendedStatus')->once()->andReturn($job);
|
|
||||||
// mock stuff for this single row:
|
// mock stuff for this single row:
|
||||||
$repository->shouldReceive('countByHash')->once()->withArgs([Mockery::any()])->andReturn(0);
|
$jobRepos->shouldReceive('countByHash')->once()->withArgs([Mockery::any()])->andReturn(0);
|
||||||
$repository->shouldReceive('addStepsDone')->times(3)->withArgs([Mockery::any(), 1]);
|
$jobRepos->shouldReceive('addStepsDone')->times(3)->withArgs([Mockery::any(), 1]);
|
||||||
|
|
||||||
// mock specific:
|
// mock specific:
|
||||||
$specific = $this->mock(AbnAmroDescription::class);
|
$specific = $this->mock(AbnAmroDescription::class);
|
||||||
|
@@ -1230,17 +1230,20 @@ class BinderTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testTagList()
|
public function testTagList()
|
||||||
{
|
{
|
||||||
|
$tagRepos = $this->mock(TagRepositoryInterface::class);
|
||||||
|
$tagRepos->shouldReceive('setUser');
|
||||||
|
$tags = $this->user()->tags()->whereIn('id', [1, 2])->get(['tags.*']);
|
||||||
|
$tagRepos->shouldReceive('get')->once()->andReturn($tags);
|
||||||
|
|
||||||
Route::middleware(Binder::class)->any(
|
Route::middleware(Binder::class)->any(
|
||||||
'/_test/binder/{tagList}', function (Collection $tags) {
|
'/_test/binder/{tagList}', function (Collection $tags) {
|
||||||
return 'count: ' . $tags->count();
|
return 'count: ' . $tags->count();
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
$tags = $this->user()->tags()->whereIn('id', [1, 2])->get(['tags.*']);
|
|
||||||
$names = join(',', $tags->pluck('tag')->toArray());
|
$names = join(',', $tags->pluck('tag')->toArray());
|
||||||
|
|
||||||
$repository = $this->mock(TagRepositoryInterface::class);
|
|
||||||
$repository->shouldReceive('setUser');
|
|
||||||
$repository->shouldReceive('get')->once()->andReturn($tags);
|
|
||||||
|
|
||||||
$this->be($this->user());
|
$this->be($this->user());
|
||||||
$response = $this->get('/_test/binder/' . $names);
|
$response = $this->get('/_test/binder/' . $names);
|
||||||
@@ -1256,6 +1259,10 @@ class BinderTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testTagListEmpty()
|
public function testTagListEmpty()
|
||||||
{
|
{
|
||||||
|
$tagRepos = $this->mock(TagRepositoryInterface::class);
|
||||||
|
$tagRepos->shouldReceive('setUser');
|
||||||
|
$tagRepos->shouldReceive('get')->once()->andReturn(new Collection());
|
||||||
|
|
||||||
Route::middleware(Binder::class)->any(
|
Route::middleware(Binder::class)->any(
|
||||||
'/_test/binder/{tagList}', function (Collection $tags) {
|
'/_test/binder/{tagList}', function (Collection $tags) {
|
||||||
return 'count: ' . $tags->count();
|
return 'count: ' . $tags->count();
|
||||||
|
@@ -24,7 +24,9 @@ namespace Tests\Unit\TransactionRules\Actions;
|
|||||||
|
|
||||||
use FireflyIII\Models\RuleAction;
|
use FireflyIII\Models\RuleAction;
|
||||||
use FireflyIII\Models\TransactionJournal;
|
use FireflyIII\Models\TransactionJournal;
|
||||||
|
use FireflyIII\Repositories\Budget\BudgetRepositoryInterface;
|
||||||
use FireflyIII\TransactionRules\Actions\SetBudget;
|
use FireflyIII\TransactionRules\Actions\SetBudget;
|
||||||
|
use Illuminate\Support\Collection;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -41,6 +43,10 @@ class SetBudgetTest extends TestCase
|
|||||||
// get journal, remove all budgets
|
// get journal, remove all budgets
|
||||||
$journal = TransactionJournal::find(12);
|
$journal = TransactionJournal::find(12);
|
||||||
$budget = $journal->user->budgets()->first();
|
$budget = $journal->user->budgets()->first();
|
||||||
|
$budgetRepos = $this->mock(BudgetRepositoryInterface::class);
|
||||||
|
$budgetRepos->shouldReceive('setUser');
|
||||||
|
$budgetRepos->shouldReceive('getActiveBudgets')->andReturn(new Collection([$budget]));
|
||||||
|
|
||||||
$journal->budgets()->detach();
|
$journal->budgets()->detach();
|
||||||
$this->assertEquals(0, $journal->budgets()->count());
|
$this->assertEquals(0, $journal->budgets()->count());
|
||||||
|
|
||||||
|
@@ -24,6 +24,7 @@ namespace Tests\Unit\TransactionRules\Actions;
|
|||||||
|
|
||||||
use FireflyIII\Models\RuleAction;
|
use FireflyIII\Models\RuleAction;
|
||||||
use FireflyIII\Models\TransactionJournal;
|
use FireflyIII\Models\TransactionJournal;
|
||||||
|
use FireflyIII\Repositories\Category\CategoryRepositoryInterface;
|
||||||
use FireflyIII\TransactionRules\Actions\SetCategory;
|
use FireflyIII\TransactionRules\Actions\SetCategory;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
|
|
||||||
|
@@ -28,6 +28,7 @@ use FireflyIII\Models\RuleAction;
|
|||||||
use FireflyIII\Models\Transaction;
|
use FireflyIII\Models\Transaction;
|
||||||
use FireflyIII\Models\TransactionJournal;
|
use FireflyIII\Models\TransactionJournal;
|
||||||
use FireflyIII\Models\TransactionType;
|
use FireflyIII\Models\TransactionType;
|
||||||
|
use FireflyIII\Repositories\Account\AccountRepositoryInterface;
|
||||||
use FireflyIII\TransactionRules\Actions\SetDestinationAccount;
|
use FireflyIII\TransactionRules\Actions\SetDestinationAccount;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
|
|
||||||
@@ -47,6 +48,7 @@ class SetDestinationAccountTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testActDepositExisting()
|
public function testActDepositExisting()
|
||||||
{
|
{
|
||||||
|
$accountRepos = $this->mock(AccountRepositoryInterface::class);
|
||||||
$type = TransactionType::whereType(TransactionType::DEPOSIT)->first();
|
$type = TransactionType::whereType(TransactionType::DEPOSIT)->first();
|
||||||
$journal = TransactionJournal::where('transaction_type_id', $type->id)->first();
|
$journal = TransactionJournal::where('transaction_type_id', $type->id)->first();
|
||||||
$destinationTr = $journal->transactions()->where('amount', '>', 0)->first();
|
$destinationTr = $journal->transactions()->where('amount', '>', 0)->first();
|
||||||
@@ -56,6 +58,10 @@ class SetDestinationAccountTest extends TestCase
|
|||||||
$account = $user->accounts()->where('account_type_id', $accountType->id)->where('id', '!=', $destination->id)->first();
|
$account = $user->accounts()->where('account_type_id', $accountType->id)->where('id', '!=', $destination->id)->first();
|
||||||
$this->assertNotEquals($destination->id, $account->id);
|
$this->assertNotEquals($destination->id, $account->id);
|
||||||
|
|
||||||
|
// find account? Return account:
|
||||||
|
$accountRepos->shouldReceive('setUser');
|
||||||
|
$accountRepos->shouldReceive('findByName')->andReturn($account);
|
||||||
|
|
||||||
// fire the action:
|
// fire the action:
|
||||||
$ruleAction = new RuleAction;
|
$ruleAction = new RuleAction;
|
||||||
$ruleAction->action_value = $account->name;
|
$ruleAction->action_value = $account->name;
|
||||||
@@ -71,34 +77,6 @@ class SetDestinationAccountTest extends TestCase
|
|||||||
$this->assertEquals($newDestination->id, $account->id);
|
$this->assertEquals($newDestination->id, $account->id);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Give deposit new asset account (will fail)
|
|
||||||
*
|
|
||||||
* @covers \FireflyIII\TransactionRules\Actions\SetDestinationAccount::__construct()
|
|
||||||
* @covers \FireflyIII\TransactionRules\Actions\SetDestinationAccount::act()
|
|
||||||
* @covers \FireflyIII\TransactionRules\Actions\SetDestinationAccount::findAssetAccount()
|
|
||||||
*/
|
|
||||||
public function testActDepositNew()
|
|
||||||
{
|
|
||||||
$type = TransactionType::whereType(TransactionType::DEPOSIT)->first();
|
|
||||||
$journal = TransactionJournal::where('transaction_type_id', $type->id)->first();
|
|
||||||
$destinationTr = $journal->transactions()->where('amount', '>', 0)->first();
|
|
||||||
$destination = $destinationTr->account;
|
|
||||||
|
|
||||||
// fire the action:
|
|
||||||
$ruleAction = new RuleAction;
|
|
||||||
$ruleAction->action_value = 'Some new asset ' . rand(1, 1000);
|
|
||||||
$action = new SetDestinationAccount($ruleAction);
|
|
||||||
$result = $action->act($journal);
|
|
||||||
$this->assertFalse($result);
|
|
||||||
|
|
||||||
// test journal for still having old account
|
|
||||||
$journal = TransactionJournal::find($journal->id);
|
|
||||||
$destinationTr = $journal->transactions()->where('amount', '>', 0)->first();
|
|
||||||
$newDestination = $destinationTr->account;
|
|
||||||
$this->assertEquals($destination->id, $newDestination->id);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Give withdrawal existing expense account.
|
* Give withdrawal existing expense account.
|
||||||
*
|
*
|
||||||
@@ -108,6 +86,7 @@ class SetDestinationAccountTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testActWithdrawalExisting()
|
public function testActWithdrawalExisting()
|
||||||
{
|
{
|
||||||
|
$accountRepos = $this->mock(AccountRepositoryInterface::class);
|
||||||
$type = TransactionType::whereType(TransactionType::WITHDRAWAL)->first();
|
$type = TransactionType::whereType(TransactionType::WITHDRAWAL)->first();
|
||||||
$journal = TransactionJournal::where('transaction_type_id', $type->id)->first();
|
$journal = TransactionJournal::where('transaction_type_id', $type->id)->first();
|
||||||
$destinationTr = $journal->transactions()->where('amount', '>', 0)->first();
|
$destinationTr = $journal->transactions()->where('amount', '>', 0)->first();
|
||||||
@@ -117,6 +96,10 @@ class SetDestinationAccountTest extends TestCase
|
|||||||
$account = $user->accounts()->where('account_type_id', $accountType->id)->where('id', '!=', $destination->id)->first();
|
$account = $user->accounts()->where('account_type_id', $accountType->id)->where('id', '!=', $destination->id)->first();
|
||||||
$this->assertNotEquals($destination->id, $account->id);
|
$this->assertNotEquals($destination->id, $account->id);
|
||||||
|
|
||||||
|
// find account? Return account:
|
||||||
|
$accountRepos->shouldReceive('setUser');
|
||||||
|
$accountRepos->shouldReceive('findByName')->andReturn($account);
|
||||||
|
|
||||||
// fire the action:
|
// fire the action:
|
||||||
$ruleAction = new RuleAction;
|
$ruleAction = new RuleAction;
|
||||||
$ruleAction->action_value = $account->name;
|
$ruleAction->action_value = $account->name;
|
||||||
@@ -132,34 +115,6 @@ class SetDestinationAccountTest extends TestCase
|
|||||||
$this->assertEquals($newDestination->id, $account->id);
|
$this->assertEquals($newDestination->id, $account->id);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Give withdrawal new expense account.
|
|
||||||
*
|
|
||||||
* @covers \FireflyIII\TransactionRules\Actions\SetDestinationAccount::__construct()
|
|
||||||
* @covers \FireflyIII\TransactionRules\Actions\SetDestinationAccount::act()
|
|
||||||
* @covers \FireflyIII\TransactionRules\Actions\SetDestinationAccount::findExpenseAccount
|
|
||||||
*/
|
|
||||||
public function testActWithdrawalNew()
|
|
||||||
{
|
|
||||||
$type = TransactionType::whereType(TransactionType::WITHDRAWAL)->first();
|
|
||||||
$journal = TransactionJournal::where('transaction_type_id', $type->id)->first();
|
|
||||||
$destinationTr = $journal->transactions()->where('amount', '>', 0)->first();
|
|
||||||
$destination = $destinationTr->account;
|
|
||||||
|
|
||||||
// fire the action:
|
|
||||||
$ruleAction = new RuleAction;
|
|
||||||
$ruleAction->action_value = 'Some new expense ' . rand(1, 1000);
|
|
||||||
$action = new SetDestinationAccount($ruleAction);
|
|
||||||
$result = $action->act($journal);
|
|
||||||
$this->assertTrue($result);
|
|
||||||
|
|
||||||
// test journal for new account
|
|
||||||
$journal = TransactionJournal::find($journal->id);
|
|
||||||
$destinationTr = $journal->transactions()->where('amount', '>', 0)->first();
|
|
||||||
$newDestination = $destinationTr->account;
|
|
||||||
$this->assertNotEquals($destination->id, $newDestination->id);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Test this on a split journal.
|
* Test this on a split journal.
|
||||||
*
|
*
|
||||||
@@ -168,10 +123,15 @@ class SetDestinationAccountTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testSplitJournal()
|
public function testSplitJournal()
|
||||||
{
|
{
|
||||||
|
$accountRepos = $this->mock(AccountRepositoryInterface::class);
|
||||||
$transaction = Transaction::orderBy('count', 'DESC')->groupBy('transaction_journal_id')
|
$transaction = Transaction::orderBy('count', 'DESC')->groupBy('transaction_journal_id')
|
||||||
->get(['transaction_journal_id', DB::raw('COUNT(transaction_journal_id) as count')])
|
->get(['transaction_journal_id', DB::raw('COUNT(transaction_journal_id) as count')])
|
||||||
->first();
|
->first();
|
||||||
$journal = TransactionJournal::find($transaction->transaction_journal_id);
|
$journal = TransactionJournal::find($transaction->transaction_journal_id);
|
||||||
|
|
||||||
|
// mock
|
||||||
|
$accountRepos->shouldReceive('setUser');
|
||||||
|
|
||||||
// fire the action:
|
// fire the action:
|
||||||
$ruleAction = new RuleAction;
|
$ruleAction = new RuleAction;
|
||||||
$ruleAction->action_value = 'Some new asset ' . rand(1, 1000);
|
$ruleAction->action_value = 'Some new asset ' . rand(1, 1000);
|
||||||
|
@@ -28,6 +28,7 @@ use FireflyIII\Models\RuleAction;
|
|||||||
use FireflyIII\Models\Transaction;
|
use FireflyIII\Models\Transaction;
|
||||||
use FireflyIII\Models\TransactionJournal;
|
use FireflyIII\Models\TransactionJournal;
|
||||||
use FireflyIII\Models\TransactionType;
|
use FireflyIII\Models\TransactionType;
|
||||||
|
use FireflyIII\Repositories\Account\AccountRepositoryInterface;
|
||||||
use FireflyIII\TransactionRules\Actions\SetSourceAccount;
|
use FireflyIII\TransactionRules\Actions\SetSourceAccount;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
|
|
||||||
@@ -45,6 +46,9 @@ class SetSourceAccountTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testActDepositExistingUpdated()
|
public function testActDepositExistingUpdated()
|
||||||
{
|
{
|
||||||
|
$accountRepos = $this->mock(AccountRepositoryInterface::class);
|
||||||
|
|
||||||
|
|
||||||
$type = TransactionType::whereType(TransactionType::DEPOSIT)->first();
|
$type = TransactionType::whereType(TransactionType::DEPOSIT)->first();
|
||||||
$journal = TransactionJournal::where('transaction_type_id', $type->id)->first();
|
$journal = TransactionJournal::where('transaction_type_id', $type->id)->first();
|
||||||
$sourceTr = $journal->transactions()->where('amount', '<', 0)->first();
|
$sourceTr = $journal->transactions()->where('amount', '<', 0)->first();
|
||||||
@@ -54,6 +58,10 @@ class SetSourceAccountTest extends TestCase
|
|||||||
$account = $user->accounts()->where('account_type_id', $accountType->id)->where('id', '!=', $source->id)->first();
|
$account = $user->accounts()->where('account_type_id', $accountType->id)->where('id', '!=', $source->id)->first();
|
||||||
$this->assertNotEquals($source->id, $account->id);
|
$this->assertNotEquals($source->id, $account->id);
|
||||||
|
|
||||||
|
// find account? Return account:
|
||||||
|
$accountRepos->shouldReceive('setUser');
|
||||||
|
$accountRepos->shouldReceive('findByName')->andReturn($account);
|
||||||
|
|
||||||
// fire the action:
|
// fire the action:
|
||||||
$ruleAction = new RuleAction;
|
$ruleAction = new RuleAction;
|
||||||
$ruleAction->action_value = $account->name;
|
$ruleAction->action_value = $account->name;
|
||||||
@@ -69,34 +77,6 @@ class SetSourceAccountTest extends TestCase
|
|||||||
$this->assertEquals($newSource->id, $account->id);
|
$this->assertEquals($newSource->id, $account->id);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Give deposit new revenue account.
|
|
||||||
*
|
|
||||||
* @covers \FireflyIII\TransactionRules\Actions\SetSourceAccount::__construct()
|
|
||||||
* @covers \FireflyIII\TransactionRules\Actions\SetSourceAccount::act()
|
|
||||||
* @covers \FireflyIII\TransactionRules\Actions\SetSourceAccount::findRevenueAccount
|
|
||||||
*/
|
|
||||||
public function testActDepositNewUpdated()
|
|
||||||
{
|
|
||||||
$type = TransactionType::whereType(TransactionType::DEPOSIT)->first();
|
|
||||||
$journal = TransactionJournal::where('transaction_type_id', $type->id)->first();
|
|
||||||
$sourceTr = $journal->transactions()->where('amount', '<', 0)->first();
|
|
||||||
$source = $sourceTr->account;
|
|
||||||
|
|
||||||
// fire the action:
|
|
||||||
$ruleAction = new RuleAction;
|
|
||||||
$ruleAction->action_value = 'Some new revenue ' . rand(1, 1000);
|
|
||||||
$action = new SetSourceAccount($ruleAction);
|
|
||||||
$result = $action->act($journal);
|
|
||||||
$this->assertTrue($result);
|
|
||||||
|
|
||||||
// test journal for new account
|
|
||||||
$journal = TransactionJournal::find($journal->id);
|
|
||||||
$sourceTr = $journal->transactions()->where('amount', '<', 0)->first();
|
|
||||||
$newSource = $sourceTr->account;
|
|
||||||
$this->assertNotEquals($source->id, $newSource->id);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Give withdrawal existing asset account.
|
* Give withdrawal existing asset account.
|
||||||
*
|
*
|
||||||
@@ -106,6 +86,7 @@ class SetSourceAccountTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testActWithdrawalExistingUpdated()
|
public function testActWithdrawalExistingUpdated()
|
||||||
{
|
{
|
||||||
|
$accountRepos = $this->mock(AccountRepositoryInterface::class);
|
||||||
$type = TransactionType::whereType(TransactionType::WITHDRAWAL)->first();
|
$type = TransactionType::whereType(TransactionType::WITHDRAWAL)->first();
|
||||||
$journal = TransactionJournal::where('transaction_type_id', $type->id)->first();
|
$journal = TransactionJournal::where('transaction_type_id', $type->id)->first();
|
||||||
$sourceTr = $journal->transactions()->where('amount', '<', 0)->first();
|
$sourceTr = $journal->transactions()->where('amount', '<', 0)->first();
|
||||||
@@ -115,6 +96,10 @@ class SetSourceAccountTest extends TestCase
|
|||||||
$account = $user->accounts()->where('account_type_id', $accountType->id)->where('id', '!=', $source->id)->first();
|
$account = $user->accounts()->where('account_type_id', $accountType->id)->where('id', '!=', $source->id)->first();
|
||||||
$this->assertNotEquals($source->id, $account->id);
|
$this->assertNotEquals($source->id, $account->id);
|
||||||
|
|
||||||
|
|
||||||
|
$accountRepos->shouldReceive('setUser');
|
||||||
|
$accountRepos->shouldReceive('findByName')->andReturn($account);
|
||||||
|
|
||||||
// fire the action:
|
// fire the action:
|
||||||
$ruleAction = new RuleAction;
|
$ruleAction = new RuleAction;
|
||||||
$ruleAction->action_value = $account->name;
|
$ruleAction->action_value = $account->name;
|
||||||
@@ -130,34 +115,6 @@ class SetSourceAccountTest extends TestCase
|
|||||||
$this->assertEquals($newSource->id, $account->id);
|
$this->assertEquals($newSource->id, $account->id);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Give withdrawal new asset account (will fail)
|
|
||||||
*
|
|
||||||
* @covers \FireflyIII\TransactionRules\Actions\SetSourceAccount::__construct()
|
|
||||||
* @covers \FireflyIII\TransactionRules\Actions\SetSourceAccount::act()
|
|
||||||
* @covers \FireflyIII\TransactionRules\Actions\SetSourceAccount::findAssetAccount()
|
|
||||||
*/
|
|
||||||
public function testActWithdrawalNew()
|
|
||||||
{
|
|
||||||
$type = TransactionType::whereType(TransactionType::WITHDRAWAL)->first();
|
|
||||||
$journal = TransactionJournal::where('transaction_type_id', $type->id)->first();
|
|
||||||
$sourceTr = $journal->transactions()->where('amount', '<', 0)->first();
|
|
||||||
$source = $sourceTr->account;
|
|
||||||
|
|
||||||
// fire the action:
|
|
||||||
$ruleAction = new RuleAction;
|
|
||||||
$ruleAction->action_value = 'Some new asset ' . rand(1, 1000);
|
|
||||||
$action = new SetSourceAccount($ruleAction);
|
|
||||||
$result = $action->act($journal);
|
|
||||||
$this->assertFalse($result);
|
|
||||||
|
|
||||||
// test journal for still having old account
|
|
||||||
$journal = TransactionJournal::find($journal->id);
|
|
||||||
$sourceTr = $journal->transactions()->where('amount', '<', 0)->first();
|
|
||||||
$newSource = $sourceTr->account;
|
|
||||||
$this->assertEquals($source->id, $newSource->id);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Test this on a split journal.
|
* Test this on a split journal.
|
||||||
*
|
*
|
||||||
@@ -166,10 +123,14 @@ class SetSourceAccountTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testSplitJournal()
|
public function testSplitJournal()
|
||||||
{
|
{
|
||||||
|
$accountRepos = $this->mock(AccountRepositoryInterface::class);
|
||||||
$transaction = Transaction::orderBy('count', 'DESC')->groupBy('transaction_journal_id')
|
$transaction = Transaction::orderBy('count', 'DESC')->groupBy('transaction_journal_id')
|
||||||
->get(['transaction_journal_id', DB::raw('COUNT(transaction_journal_id) as count')])
|
->get(['transaction_journal_id', DB::raw('COUNT(transaction_journal_id) as count')])
|
||||||
->first();
|
->first();
|
||||||
$journal = TransactionJournal::find($transaction->transaction_journal_id);
|
$journal = TransactionJournal::find($transaction->transaction_journal_id);
|
||||||
|
|
||||||
|
// mock
|
||||||
|
$accountRepos->shouldReceive('setUser');
|
||||||
// fire the action:
|
// fire the action:
|
||||||
$ruleAction = new RuleAction;
|
$ruleAction = new RuleAction;
|
||||||
$ruleAction->action_value = 'Some new asset ' . rand(1, 1000);
|
$ruleAction->action_value = 'Some new asset ' . rand(1, 1000);
|
||||||
|
@@ -23,6 +23,7 @@ declare(strict_types=1);
|
|||||||
namespace Tests\Unit\TransactionRules\Triggers;
|
namespace Tests\Unit\TransactionRules\Triggers;
|
||||||
|
|
||||||
use FireflyIII\Models\TransactionJournal;
|
use FireflyIII\Models\TransactionJournal;
|
||||||
|
use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
|
||||||
use FireflyIII\TransactionRules\Triggers\AmountExactly;
|
use FireflyIII\TransactionRules\Triggers\AmountExactly;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
|
|
||||||
@@ -36,7 +37,11 @@ class AmountExactlyTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testTriggeredExact()
|
public function testTriggeredExact()
|
||||||
{
|
{
|
||||||
|
$journalRepos = $this->mock(JournalRepositoryInterface::class);
|
||||||
|
$journalRepos->shouldReceive('setUser');
|
||||||
|
$journalRepos->shouldReceive('getJournalTotal')->andReturn('12.34');
|
||||||
$journal = new TransactionJournal;
|
$journal = new TransactionJournal;
|
||||||
|
$journal->user = $this->user();
|
||||||
$journal->destination_amount = '12.34';
|
$journal->destination_amount = '12.34';
|
||||||
$trigger = AmountExactly::makeFromStrings('12.340', false);
|
$trigger = AmountExactly::makeFromStrings('12.340', false);
|
||||||
$result = $trigger->triggered($journal);
|
$result = $trigger->triggered($journal);
|
||||||
@@ -48,7 +53,11 @@ class AmountExactlyTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testTriggeredNotExact()
|
public function testTriggeredNotExact()
|
||||||
{
|
{
|
||||||
|
$journalRepos = $this->mock(JournalRepositoryInterface::class);
|
||||||
|
$journalRepos->shouldReceive('setUser');
|
||||||
|
$journalRepos->shouldReceive('getJournalTotal')->andReturn('12.34');
|
||||||
$journal = new TransactionJournal;
|
$journal = new TransactionJournal;
|
||||||
|
$journal->user = $this->user();
|
||||||
$journal->destination_amount = '12.35';
|
$journal->destination_amount = '12.35';
|
||||||
$trigger = AmountExactly::makeFromStrings('12.340', false);
|
$trigger = AmountExactly::makeFromStrings('12.340', false);
|
||||||
$result = $trigger->triggered($journal);
|
$result = $trigger->triggered($journal);
|
||||||
|
@@ -23,6 +23,7 @@ declare(strict_types=1);
|
|||||||
namespace Tests\Unit\TransactionRules\Triggers;
|
namespace Tests\Unit\TransactionRules\Triggers;
|
||||||
|
|
||||||
use FireflyIII\Models\TransactionJournal;
|
use FireflyIII\Models\TransactionJournal;
|
||||||
|
use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
|
||||||
use FireflyIII\TransactionRules\Triggers\AmountLess;
|
use FireflyIII\TransactionRules\Triggers\AmountLess;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
|
|
||||||
@@ -36,8 +37,13 @@ class AmountLessTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testTriggeredExact()
|
public function testTriggeredExact()
|
||||||
{
|
{
|
||||||
|
$journalRepos = $this->mock(JournalRepositoryInterface::class);
|
||||||
|
$journalRepos->shouldReceive('setUser');
|
||||||
|
$journalRepos->shouldReceive('getJournalTotal')->andReturn('12.35');
|
||||||
|
|
||||||
$journal = new TransactionJournal;
|
$journal = new TransactionJournal;
|
||||||
$journal->destination_amount = '12.35';
|
$journal->destination_amount = '12.35';
|
||||||
|
$journal->user = $this->user();
|
||||||
$trigger = AmountLess::makeFromStrings('12.35', false);
|
$trigger = AmountLess::makeFromStrings('12.35', false);
|
||||||
$result = $trigger->triggered($journal);
|
$result = $trigger->triggered($journal);
|
||||||
$this->assertFalse($result);
|
$this->assertFalse($result);
|
||||||
@@ -48,8 +54,13 @@ class AmountLessTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testTriggeredLess()
|
public function testTriggeredLess()
|
||||||
{
|
{
|
||||||
|
$journalRepos = $this->mock(JournalRepositoryInterface::class);
|
||||||
|
$journalRepos->shouldReceive('setUser');
|
||||||
|
$journalRepos->shouldReceive('getJournalTotal')->andReturn('12.34');
|
||||||
|
|
||||||
$journal = new TransactionJournal;
|
$journal = new TransactionJournal;
|
||||||
$journal->destination_amount = '12.34';
|
$journal->destination_amount = '12.34';
|
||||||
|
$journal->user = $this->user();
|
||||||
$trigger = AmountLess::makeFromStrings('12.50', false);
|
$trigger = AmountLess::makeFromStrings('12.50', false);
|
||||||
$result = $trigger->triggered($journal);
|
$result = $trigger->triggered($journal);
|
||||||
$this->assertTrue($result);
|
$this->assertTrue($result);
|
||||||
@@ -60,8 +71,13 @@ class AmountLessTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testTriggeredNotLess()
|
public function testTriggeredNotLess()
|
||||||
{
|
{
|
||||||
|
$journalRepos = $this->mock(JournalRepositoryInterface::class);
|
||||||
|
$journalRepos->shouldReceive('setUser');
|
||||||
|
$journalRepos->shouldReceive('getJournalTotal')->andReturn('12.35');
|
||||||
|
|
||||||
$journal = new TransactionJournal;
|
$journal = new TransactionJournal;
|
||||||
$journal->destination_amount = '12.35';
|
$journal->destination_amount = '12.35';
|
||||||
|
$journal->user = $this->user();
|
||||||
$trigger = AmountLess::makeFromStrings('12.00', false);
|
$trigger = AmountLess::makeFromStrings('12.00', false);
|
||||||
$result = $trigger->triggered($journal);
|
$result = $trigger->triggered($journal);
|
||||||
$this->assertFalse($result);
|
$this->assertFalse($result);
|
||||||
|
@@ -23,6 +23,7 @@ declare(strict_types=1);
|
|||||||
namespace Tests\Unit\TransactionRules\Triggers;
|
namespace Tests\Unit\TransactionRules\Triggers;
|
||||||
|
|
||||||
use FireflyIII\Models\TransactionJournal;
|
use FireflyIII\Models\TransactionJournal;
|
||||||
|
use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
|
||||||
use FireflyIII\TransactionRules\Triggers\AmountMore;
|
use FireflyIII\TransactionRules\Triggers\AmountMore;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
|
|
||||||
@@ -36,7 +37,12 @@ class AmountMoreTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testTriggeredExact()
|
public function testTriggeredExact()
|
||||||
{
|
{
|
||||||
|
$journalRepos = $this->mock(JournalRepositoryInterface::class);
|
||||||
|
$journalRepos->shouldReceive('setUser');
|
||||||
|
$journalRepos->shouldReceive('getJournalTotal')->andReturn('12.35');
|
||||||
|
|
||||||
$journal = new TransactionJournal;
|
$journal = new TransactionJournal;
|
||||||
|
$journal->user = $this->user();
|
||||||
$journal->destination_amount = '12.35';
|
$journal->destination_amount = '12.35';
|
||||||
$trigger = AmountMore::makeFromStrings('12.35', false);
|
$trigger = AmountMore::makeFromStrings('12.35', false);
|
||||||
$result = $trigger->triggered($journal);
|
$result = $trigger->triggered($journal);
|
||||||
@@ -48,7 +54,12 @@ class AmountMoreTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testTriggeredMore()
|
public function testTriggeredMore()
|
||||||
{
|
{
|
||||||
|
$journalRepos = $this->mock(JournalRepositoryInterface::class);
|
||||||
|
$journalRepos->shouldReceive('setUser');
|
||||||
|
$journalRepos->shouldReceive('getJournalTotal')->andReturn('12.34');
|
||||||
|
|
||||||
$journal = new TransactionJournal;
|
$journal = new TransactionJournal;
|
||||||
|
$journal->user = $this->user();
|
||||||
$journal->destination_amount = '12.34';
|
$journal->destination_amount = '12.34';
|
||||||
$trigger = AmountMore::makeFromStrings('12.10', false);
|
$trigger = AmountMore::makeFromStrings('12.10', false);
|
||||||
$result = $trigger->triggered($journal);
|
$result = $trigger->triggered($journal);
|
||||||
@@ -60,7 +71,12 @@ class AmountMoreTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testTriggeredNotMore()
|
public function testTriggeredNotMore()
|
||||||
{
|
{
|
||||||
|
$journalRepos = $this->mock(JournalRepositoryInterface::class);
|
||||||
|
$journalRepos->shouldReceive('setUser');
|
||||||
|
$journalRepos->shouldReceive('getJournalTotal')->andReturn('12.35');
|
||||||
|
|
||||||
$journal = new TransactionJournal;
|
$journal = new TransactionJournal;
|
||||||
|
$journal->user = $this->user();
|
||||||
$journal->destination_amount = '12.35';
|
$journal->destination_amount = '12.35';
|
||||||
$trigger = AmountMore::makeFromStrings('12.50', false);
|
$trigger = AmountMore::makeFromStrings('12.50', false);
|
||||||
$result = $trigger->triggered($journal);
|
$result = $trigger->triggered($journal);
|
||||||
|
@@ -29,6 +29,7 @@ use FireflyIII\Models\AccountMeta;
|
|||||||
use FireflyIII\Models\Note;
|
use FireflyIII\Models\Note;
|
||||||
use FireflyIII\Models\Transaction;
|
use FireflyIII\Models\Transaction;
|
||||||
use FireflyIII\Models\TransactionJournal;
|
use FireflyIII\Models\TransactionJournal;
|
||||||
|
use FireflyIII\Repositories\Account\AccountRepositoryInterface;
|
||||||
use FireflyIII\Transformers\AccountTransformer;
|
use FireflyIII\Transformers\AccountTransformer;
|
||||||
use Symfony\Component\HttpFoundation\ParameterBag;
|
use Symfony\Component\HttpFoundation\ParameterBag;
|
||||||
use Tests\TestCase;
|
use Tests\TestCase;
|
||||||
@@ -45,6 +46,10 @@ class AccountTransformerTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testBasic()
|
public function testBasic()
|
||||||
{
|
{
|
||||||
|
$accountRepos = $this->mock(AccountRepositoryInterface::class);
|
||||||
|
$accountRepos->shouldReceive('setUser');
|
||||||
|
$accountRepos->shouldReceive('getOpeningBalanceAmount')->andReturn(null);
|
||||||
|
$accountRepos->shouldReceive('getOpeningBalanceDate')->andReturn(null);
|
||||||
// make new account:
|
// make new account:
|
||||||
$account = Account::create(
|
$account = Account::create(
|
||||||
[
|
[
|
||||||
@@ -76,6 +81,10 @@ class AccountTransformerTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testBasicDate()
|
public function testBasicDate()
|
||||||
{
|
{
|
||||||
|
$accountRepos = $this->mock(AccountRepositoryInterface::class);
|
||||||
|
$accountRepos->shouldReceive('setUser');
|
||||||
|
$accountRepos->shouldReceive('getOpeningBalanceAmount')->andReturn(null);
|
||||||
|
$accountRepos->shouldReceive('getOpeningBalanceDate')->andReturn(null);
|
||||||
// make new account:
|
// make new account:
|
||||||
$account = Account::create(
|
$account = Account::create(
|
||||||
[
|
[
|
||||||
@@ -108,6 +117,10 @@ class AccountTransformerTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testCCDataAsset()
|
public function testCCDataAsset()
|
||||||
{
|
{
|
||||||
|
$accountRepos = $this->mock(AccountRepositoryInterface::class);
|
||||||
|
$accountRepos->shouldReceive('setUser');
|
||||||
|
$accountRepos->shouldReceive('getOpeningBalanceAmount')->andReturn(null);
|
||||||
|
$accountRepos->shouldReceive('getOpeningBalanceDate')->andReturn(null);
|
||||||
// make new account:
|
// make new account:
|
||||||
$account = Account::create(
|
$account = Account::create(
|
||||||
[
|
[
|
||||||
@@ -262,6 +275,10 @@ class AccountTransformerTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testOpeningBalance()
|
public function testOpeningBalance()
|
||||||
{
|
{
|
||||||
|
$accountRepos = $this->mock(AccountRepositoryInterface::class);
|
||||||
|
$accountRepos->shouldReceive('setUser');
|
||||||
|
$accountRepos->shouldReceive('getOpeningBalanceAmount')->andReturn('45.67');
|
||||||
|
$accountRepos->shouldReceive('getOpeningBalanceDate')->andReturn('2018-01-01');
|
||||||
// make new account:
|
// make new account:
|
||||||
$account = Account::create(
|
$account = Account::create(
|
||||||
[
|
[
|
||||||
@@ -313,6 +330,10 @@ class AccountTransformerTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testWithCurrency()
|
public function testWithCurrency()
|
||||||
{
|
{
|
||||||
|
$accountRepos = $this->mock(AccountRepositoryInterface::class);
|
||||||
|
$accountRepos->shouldReceive('setUser');
|
||||||
|
$accountRepos->shouldReceive('getOpeningBalanceAmount')->andReturn(null);
|
||||||
|
$accountRepos->shouldReceive('getOpeningBalanceDate')->andReturn(null);
|
||||||
// make new account:
|
// make new account:
|
||||||
$account = Account::create(
|
$account = Account::create(
|
||||||
[
|
[
|
||||||
@@ -352,6 +373,10 @@ class AccountTransformerTest extends TestCase
|
|||||||
*/
|
*/
|
||||||
public function testWithNotes()
|
public function testWithNotes()
|
||||||
{
|
{
|
||||||
|
$accountRepos = $this->mock(AccountRepositoryInterface::class);
|
||||||
|
$accountRepos->shouldReceive('setUser');
|
||||||
|
$accountRepos->shouldReceive('getOpeningBalanceAmount')->andReturn(null);
|
||||||
|
$accountRepos->shouldReceive('getOpeningBalanceDate')->andReturn(null);
|
||||||
// make new account:
|
// make new account:
|
||||||
$account = Account::create(
|
$account = Account::create(
|
||||||
[
|
[
|
||||||
|
Reference in New Issue
Block a user