This fixes the tests.

This commit is contained in:
James Cole 2016-12-27 15:46:52 +01:00
parent be201e811d
commit 349d254193
6 changed files with 41 additions and 19 deletions

View File

@ -26,7 +26,6 @@ use FireflyIII\Repositories\ExportJob\ExportJobRepositoryInterface;
use FireflyIII\Repositories\ExportJob\ExportJobRepositoryInterface as EJRI;
use Preferences;
use Response;
use Storage;
use View;
/**
@ -145,7 +144,7 @@ class ExportController extends Controller
'job' => $job,
];
$job->change('export_status_make_exporter');
$jobs->changeStatus($job, 'export_status_make_exporter');
/** @var ProcessorInterface $processor */
$processor = app(ProcessorInterface::class, [$settings]);
@ -153,47 +152,46 @@ class ExportController extends Controller
/*
* Collect journals:
*/
$job->change('export_status_collecting_journals');
$jobs->changeStatus($job, 'export_status_collecting_journals');
$processor->collectJournals();
$job->change('export_status_collected_journals');
$jobs->changeStatus($job, 'export_status_collected_journals');
/*
* Transform to exportable entries:
*/
$job->change('export_status_converting_to_export_format');
$jobs->changeStatus($job, 'export_status_converting_to_export_format');
$processor->convertJournals();
$job->change('export_status_converted_to_export_format');
$jobs->changeStatus($job, 'export_status_converted_to_export_format');
/*
* Transform to (temporary) file:
*/
$job->change('export_status_creating_journal_file');
$jobs->changeStatus($job, 'export_status_creating_journal_file');
$processor->exportJournals();
$job->change('export_status_created_journal_file');
$jobs->changeStatus($job, 'export_status_created_journal_file');
/*
* Collect attachments, if applicable.
*/
if ($settings['includeAttachments']) {
$job->change('export_status_collecting_attachments');
$jobs->changeStatus($job, 'export_status_collecting_attachments');
$processor->collectAttachments();
$job->change('export_status_collected_attachments');
$jobs->changeStatus($job, 'export_status_collected_attachments');
}
/*
* Collect old uploads
*/
if ($settings['includeOldUploads']) {
$job->change('export_status_collecting_old_uploads');
$jobs->changeStatus($job, 'export_status_collecting_old_uploads');
$processor->collectOldUploads();
$job->change('export_status_collected_old_uploads');
$jobs->changeStatus($job, 'export_status_collected_old_uploads');
}
/*
* Create ZIP file:
*/
$job->change('export_status_creating_zip_file');
$jobs->changeStatus($job, 'export_status_creating_zip_file');
$processor->createZipFile();
$job->change('export_status_created_zip_file');
$job->change('export_status_finished');
$jobs->changeStatus($job, 'export_status_created_zip_file');
$jobs->changeStatus($job, 'export_status_finished');
return Response::json('ok');
}

View File

@ -39,6 +39,19 @@ class ExportJobRepository implements ExportJobRepositoryInterface
$this->user = $user;
}
/**
* @param ExportJob $job
* @param string $status
*
* @return bool
*/
public function changeStatus(ExportJob $job, string $status): bool
{
$job->change($status);
return true;
}
/**
* @return bool
*/

View File

@ -32,6 +32,14 @@ interface ExportJobRepositoryInterface
*/
public function create(): ExportJob;
/**
* @param ExportJob $job
* @param string $status
*
* @return bool
*/
public function changeStatus(ExportJob $job, string $status): bool;
/**
* @param ExportJob $job
*

View File

@ -49,11 +49,8 @@ class FireflyConfig
*/
public function get($name, $default = null)
{
Log::debug('Now in FFConfig::get()', ['name' => $name]);
$fullName = 'ff-config-' . $name;
if (Cache::has($fullName)) {
Log::debug('Return cache.');
return Cache::get($fullName);
}

View File

@ -81,6 +81,7 @@ then
echo "Will not reset database"
fi
echo "Copy test database over original"
# take database from copy:
cp $DATABASECOPY $DATABASE

View File

@ -9,6 +9,7 @@
* See the LICENSE file for details.
*/
use FireflyIII\Export\Processor;
use FireflyIII\Models\ExportJob;
use FireflyIII\Repositories\ExportJob\ExportJobRepositoryInterface;
/**
@ -83,6 +84,10 @@ class ExportControllerTest extends TestCase
$processor->shouldReceive('exportJournals')->once();
$processor->shouldReceive('createZipFile')->once();
$repository = $this->mock(ExportJobRepositoryInterface::class);
$repository->shouldReceive('changeStatus')->andReturn(true);
$repository->shouldReceive('findByKey')->andReturn(new ExportJob);
$this->be($this->user());
$this->call('post', route('export.export'), $data);