PMCORE-1598
This commit is contained in:
27
database/factories/TaskSchedulerFactory.php
Normal file
27
database/factories/TaskSchedulerFactory.php
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Model factory for a task scheduler
|
||||||
|
*/
|
||||||
|
use Faker\Generator as Faker;
|
||||||
|
|
||||||
|
$factory->define(\ProcessMaker\Model\TaskScheduler::class, function (Faker $faker) {
|
||||||
|
return [
|
||||||
|
'id' => G::generateUniqueID(),
|
||||||
|
'title' => $faker->title,
|
||||||
|
'startingTime' => $faker->dateTime(),
|
||||||
|
'endingTime' => $faker->dateTime(),
|
||||||
|
'everyOn' => "",
|
||||||
|
'interval' => "",
|
||||||
|
'description' => "",
|
||||||
|
'expression' => "",
|
||||||
|
'body' => "",
|
||||||
|
'type' => "",
|
||||||
|
'category' => "emails_notifications", //emails_notifications, case_actions, plugins, processmaker_sync
|
||||||
|
'system' => "",
|
||||||
|
'timezone' => "",
|
||||||
|
'enable' => "",
|
||||||
|
'creation_date' => $faker->dateTime(),
|
||||||
|
'last_update' => $faker->dateTime()
|
||||||
|
];
|
||||||
|
});
|
||||||
@@ -0,0 +1,98 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace ProcessMaker\BusinessModel;
|
||||||
|
|
||||||
|
use ProcessMaker\BusinessModel\TaskSchedulerBM;
|
||||||
|
use ProcessMaker\Model\TaskScheduler;
|
||||||
|
use Tests\TestCase;
|
||||||
|
|
||||||
|
class TaskSchedulerBMTest extends TestCase
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Test getSchedule method
|
||||||
|
*
|
||||||
|
* @covers \ProcessMaker\BusinessModel\TaskSchedulerBM::getSchedule
|
||||||
|
* @test
|
||||||
|
*/
|
||||||
|
public function it_should_test_get_schedule_method()
|
||||||
|
{
|
||||||
|
TaskScheduler::truncate();
|
||||||
|
$obj = new TaskSchedulerBM();
|
||||||
|
|
||||||
|
$res = $obj->getSchedule('emails_notifications');
|
||||||
|
$this->assertNotEmpty($res);
|
||||||
|
|
||||||
|
factory(TaskScheduler::class)->create();
|
||||||
|
|
||||||
|
$res = $obj->getSchedule('emails_notifications');
|
||||||
|
$this->assertNotEmpty(1, $res);
|
||||||
|
|
||||||
|
$res = $obj->getSchedule('case_actions');
|
||||||
|
$this->assertEmpty(0, $res);
|
||||||
|
|
||||||
|
$res = $obj->getSchedule('plugins');
|
||||||
|
$this->assertEmpty(0, $res);
|
||||||
|
|
||||||
|
$res = $obj->getSchedule('processmaker_sync');
|
||||||
|
$this->assertEmpty(0, $res);
|
||||||
|
|
||||||
|
$res = $obj->getSchedule(null);
|
||||||
|
$this->assertNotEmpty(1, $res);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test saveSchedule method
|
||||||
|
*
|
||||||
|
* @covers \ProcessMaker\BusinessModel\TaskSchedulerBM::saveSchedule
|
||||||
|
* @test
|
||||||
|
*/
|
||||||
|
public function it_should_test_save_schedule_method()
|
||||||
|
{
|
||||||
|
$obj = new TaskSchedulerBM();
|
||||||
|
|
||||||
|
$scheduler = factory(TaskScheduler::class)->create();
|
||||||
|
|
||||||
|
$request_data = [
|
||||||
|
"id" => $scheduler->id,
|
||||||
|
"title" => "ProcessMaker Events",
|
||||||
|
"enable" => "1",
|
||||||
|
"service" => "events",
|
||||||
|
"category" => "case_actions",
|
||||||
|
"file" => "workflow/engine/bin/cron.php",
|
||||||
|
"startingTime" => "0:00",
|
||||||
|
"endingTime" => "23:59",
|
||||||
|
"expression" => "* * * * *",
|
||||||
|
"description" => "Unpauses any case whose pause time has expired",
|
||||||
|
"timezone" => "",
|
||||||
|
"everyOn" => "",
|
||||||
|
'interval' => "",
|
||||||
|
'body' => "",
|
||||||
|
'type' => "",
|
||||||
|
'system' => "",
|
||||||
|
'creation_date' => date(''),
|
||||||
|
'last_update' => date('')
|
||||||
|
];
|
||||||
|
|
||||||
|
$res = $obj->saveSchedule($request_data);
|
||||||
|
$this->assertEquals([] ,$res);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test generateInitialData method
|
||||||
|
*
|
||||||
|
* @covers \ProcessMaker\BusinessModel\TaskSchedulerBM::generateInitialData
|
||||||
|
* @test
|
||||||
|
*/
|
||||||
|
public function it_should_test_generate_initial_data_method()
|
||||||
|
{
|
||||||
|
TaskScheduler::truncate();
|
||||||
|
$r = TaskScheduler::all()->toArray();
|
||||||
|
$this->assertEmpty($r);
|
||||||
|
|
||||||
|
$obj = new TaskSchedulerBM();
|
||||||
|
$obj->generateInitialData();
|
||||||
|
|
||||||
|
$r = TaskScheduler::all()->toArray();
|
||||||
|
$this->assertNotEmpty($r);
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user