PMC-1150
This commit is contained in:
@@ -5,53 +5,92 @@ namespace Tests\unit\workflow\engine\src\ProcessMaker\Model;
|
||||
use G;
|
||||
use Illuminate\Foundation\Testing\DatabaseTransactions;
|
||||
use ProcessMaker\Model\Process;
|
||||
use ProcessMaker\Model\ProcessCategory;
|
||||
use ProcessMaker\Model\Task;
|
||||
use ProcessMaker\Model\User;
|
||||
use Tests\TestCase;
|
||||
|
||||
/**
|
||||
* @coversDefaultClass ProcessMaker\BusinessModel\Model\Process
|
||||
*/
|
||||
|
||||
class ProcessTest extends TestCase
|
||||
{
|
||||
use DatabaseTransactions;
|
||||
|
||||
/**
|
||||
* Test belongs to PRO_ID
|
||||
*
|
||||
* @covers \ProcessMaker\Model\Process::tasks()
|
||||
* @test
|
||||
*/
|
||||
public function it_has_tasks()
|
||||
{
|
||||
$process = factory(Process::class)->create([
|
||||
'PRO_ID' => function () {
|
||||
return factory(Task::class)->create()->PRO_ID;
|
||||
}
|
||||
]);
|
||||
$this->assertInstanceOf(Task::class, $process->tasks);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test belongs to PRO_CREATE_USER
|
||||
*
|
||||
* @covers \ProcessMaker\Model\Process::creator()
|
||||
* @test
|
||||
*/
|
||||
public function it_has_a_creator()
|
||||
{
|
||||
$process = factory(Process::class)->create([
|
||||
'PRO_CREATE_USER' => function () {
|
||||
return factory(User::class)->create()->USR_UID;
|
||||
}
|
||||
]);
|
||||
$this->assertInstanceOf(User::class, $process->creator);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test belongs to PRO_CREATE_USER
|
||||
*
|
||||
* @covers \ProcessMaker\Model\Process::category()
|
||||
* @test
|
||||
*/
|
||||
public function it_has_an_category()
|
||||
{
|
||||
$process = factory(Process::class)->create([
|
||||
'PRO_CATEGORY' => function () {
|
||||
return factory(ProcessCategory::class)->create()->CATEGORY_UID;
|
||||
}
|
||||
]);
|
||||
$this->assertInstanceOf(ProcessCategory::class, $process->category);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test it returns all the processes for an specific user
|
||||
* @covers \ProcessMaker\Model\Process::getProcessList
|
||||
*
|
||||
* @covers \ProcessMaker\Model\Process::getProcessList()
|
||||
* @test
|
||||
*/
|
||||
public function it_should_return_all_the_processes_for_an_specific_user()
|
||||
{
|
||||
//Create user
|
||||
$user1 = factory(User::class)->create();
|
||||
$user2 = factory(User::class)->create();
|
||||
//Create process
|
||||
$process1 = factory(Process::class)->create(
|
||||
['PRO_CREATE_USER' => $user1['USR_UID']]
|
||||
);
|
||||
$process2 = factory(Process::class)->create(
|
||||
['PRO_CREATE_USER' => $user2['USR_UID']]
|
||||
);
|
||||
|
||||
$process = factory(Process::class, 2)->states('foreign_keys')->create([]);
|
||||
//Create a Process object
|
||||
$process = new Process();
|
||||
$pro = new Process();
|
||||
//Call the getProcessList() method
|
||||
$res = $process->getProcessList('', $user2['USR_UID']);
|
||||
|
||||
$res = $pro->getProcessList('', $process[0]->PRO_CREATE_USER);
|
||||
//Assert the result is not empty
|
||||
$this->assertNotEmpty($res);
|
||||
//Assert there's one result
|
||||
$this->assertCount(1, $res);
|
||||
//Assert that the process returned is the one looked for
|
||||
$this->assertEquals($process2['PRO_UID'], $res[0]['PRO_UID']);
|
||||
//Assert the process that was not searched is not in the result
|
||||
$this->assertNotEquals($process1['PRO_UID'], $res[0]['PRO_UID']);
|
||||
$this->assertEquals($process[0]->PRO_UID, $res[0]['PRO_UID']);
|
||||
}
|
||||
|
||||
/**
|
||||
* Tests that it returns the processes in an specific category
|
||||
* @covers \ProcessMaker\Model\Process::getProcessList
|
||||
*
|
||||
* @covers \ProcessMaker\Model\Process::getProcessList()
|
||||
* @test
|
||||
*/
|
||||
public function it_should_return_the_processes_in_an_specific_category()
|
||||
@@ -62,23 +101,19 @@ class ProcessTest extends TestCase
|
||||
//Create user
|
||||
$user = factory(User::class)->create();
|
||||
//Create process
|
||||
$process1 = factory(Process::class)->create(
|
||||
[
|
||||
'PRO_CREATE_USER' => $user['USR_UID'],
|
||||
'PRO_CATEGORY' => $catUid1
|
||||
]
|
||||
);
|
||||
$process2 = factory(Process::class)->create(
|
||||
[
|
||||
'PRO_CREATE_USER' => $user['USR_UID'],
|
||||
'PRO_CATEGORY' => $catUid2
|
||||
]
|
||||
);
|
||||
$process1 = factory(Process::class)->create([
|
||||
'PRO_CREATE_USER' => $user['USR_UID'],
|
||||
'PRO_CATEGORY' => $catUid1
|
||||
]);
|
||||
$process2 = factory(Process::class)->create([
|
||||
'PRO_CREATE_USER' => $user['USR_UID'],
|
||||
'PRO_CATEGORY' => $catUid2
|
||||
]);
|
||||
|
||||
//Create a Process object
|
||||
$process = new Process();
|
||||
$pro = new Process();
|
||||
//Call the getProcessList() method
|
||||
$res = $process->getProcessList($process1['PRO_CATEGORY'], $user['USR_UID']);
|
||||
$res = $pro->getProcessList($process1['PRO_CATEGORY'], $user['USR_UID']);
|
||||
|
||||
//Assert the result is not empty
|
||||
$this->assertNotEmpty($res);
|
||||
@@ -92,7 +127,8 @@ class ProcessTest extends TestCase
|
||||
|
||||
/**
|
||||
* Tests that it returns an empty array if no processes where found
|
||||
* @covers \ProcessMaker\Model\Process::getProcessList
|
||||
*
|
||||
* @covers \ProcessMaker\Model\Process::getProcessList()
|
||||
* @test
|
||||
*/
|
||||
public function it_should_return_empty_if_no_processes_where_found()
|
||||
@@ -110,7 +146,8 @@ class ProcessTest extends TestCase
|
||||
|
||||
/**
|
||||
* Test it returns all the processes in status active
|
||||
* @covers \ProcessMaker\Model\Process::getProcessList
|
||||
*
|
||||
* @covers \ProcessMaker\Model\Process::getProcessList()
|
||||
* @test
|
||||
*/
|
||||
public function it_should_return_all_the_processes_in_status_active()
|
||||
@@ -118,24 +155,18 @@ class ProcessTest extends TestCase
|
||||
//Create user
|
||||
$user = factory(User::class)->create();
|
||||
//Create process
|
||||
$process1 = factory(Process::class)->create(
|
||||
[
|
||||
'PRO_CREATE_USER' => $user['USR_UID'],
|
||||
'PRO_STATUS' => 'ACTIVE'
|
||||
]
|
||||
);
|
||||
$process2 = factory(Process::class)->create(
|
||||
[
|
||||
'PRO_CREATE_USER' => $user['USR_UID'],
|
||||
'PRO_STATUS' => 'INACTIVE'
|
||||
]
|
||||
);
|
||||
$process3 = factory(Process::class)->create(
|
||||
[
|
||||
'PRO_CREATE_USER' => $user['USR_UID'],
|
||||
'PRO_STATUS' => 'DISABLED'
|
||||
]
|
||||
);
|
||||
$process1 = factory(Process::class)->create([
|
||||
'PRO_CREATE_USER' => $user['USR_UID'],
|
||||
'PRO_STATUS' => 'ACTIVE'
|
||||
]);
|
||||
$process2 = factory(Process::class)->create([
|
||||
'PRO_CREATE_USER' => $user['USR_UID'],
|
||||
'PRO_STATUS' => 'INACTIVE'
|
||||
]);
|
||||
$process3 = factory(Process::class)->create([
|
||||
'PRO_CREATE_USER' => $user['USR_UID'],
|
||||
'PRO_STATUS' => 'DISABLED'
|
||||
]);
|
||||
|
||||
//Create a Process object
|
||||
$process = new Process();
|
||||
|
||||
Reference in New Issue
Block a user