PMCORE-1214
This commit is contained in:
@@ -3,10 +3,12 @@
|
||||
namespace Tests\unit\workflow\engine\src\ProcessMaker\BusinessModel\Cases;
|
||||
|
||||
use G;
|
||||
use Illuminate\Foundation\Testing\DatabaseTransactions;
|
||||
use ProcessMaker\BusinessModel\Cases\AbstractCases;
|
||||
use ProcessMaker\Model\Application;
|
||||
use ProcessMaker\Model\Process;
|
||||
use ProcessMaker\Model\ProcessCategory;
|
||||
use ProcessMaker\Model\Task;
|
||||
use ProcessMaker\Model\User;
|
||||
use Tests\TestCase;
|
||||
|
||||
@@ -15,6 +17,8 @@ use Tests\TestCase;
|
||||
*/
|
||||
class AbstractCasesTest extends TestCase
|
||||
{
|
||||
use DatabaseTransactions;
|
||||
|
||||
/**
|
||||
* This check the getter and setter related to the category
|
||||
*
|
||||
@@ -52,6 +56,22 @@ class AbstractCasesTest extends TestCase
|
||||
$this->assertEquals($process->PRO_ID, $actual);
|
||||
}
|
||||
|
||||
/**
|
||||
* This check the getter and setter related to the task
|
||||
*
|
||||
* @covers \ProcessMaker\BusinessModel\Cases\AbstractCases::setTaskId()
|
||||
* @covers \ProcessMaker\BusinessModel\Cases\AbstractCases::getTaskId()
|
||||
* @test
|
||||
*/
|
||||
public function it_return_set_get_task()
|
||||
{
|
||||
$task = factory(Task::class)->create();
|
||||
$absCases = new AbstractCases();
|
||||
$absCases->setTaskId($task->TAS_ID);
|
||||
$actual = $absCases->getTaskId();
|
||||
$this->assertEquals($task->TAS_ID, $actual);
|
||||
}
|
||||
|
||||
/**
|
||||
* This check the getter and setter related to the user
|
||||
*
|
||||
@@ -73,6 +93,61 @@ class AbstractCasesTest extends TestCase
|
||||
$this->assertEquals($users->USR_ID, $actual);
|
||||
}
|
||||
|
||||
/**
|
||||
* This check the getter and setter related to the priority
|
||||
*
|
||||
* @covers \ProcessMaker\BusinessModel\Cases\AbstractCases::setPriority()
|
||||
* @covers \ProcessMaker\BusinessModel\Cases\AbstractCases::getPriority()
|
||||
* @test
|
||||
*/
|
||||
public function it_return_set_get_priority()
|
||||
{
|
||||
$absCases = new AbstractCases();
|
||||
$arguments = [1 => 'VL', 2 => 'L', 3 => 'N', 4 => 'H', 5 => 'VH'];
|
||||
$index = array_rand($arguments);
|
||||
$absCases->setPriority($index);
|
||||
$actual = $absCases->getPriority();
|
||||
$this->assertEquals($index, $actual);
|
||||
}
|
||||
|
||||
/**
|
||||
* This check the getter and setter related to the case number
|
||||
*
|
||||
* @covers \ProcessMaker\BusinessModel\Cases\AbstractCases::setCaseNumber()
|
||||
* @covers \ProcessMaker\BusinessModel\Cases\AbstractCases::getCaseNumber()
|
||||
* @test
|
||||
*/
|
||||
public function it_return_set_get_case_number()
|
||||
{
|
||||
$case = factory(Application::class)->create();
|
||||
$absCases = new AbstractCases();
|
||||
$absCases->setCaseNumber($case->APP_NUMBER);
|
||||
$actual = $absCases->getCaseNumber();
|
||||
$this->assertEquals($case->APP_NUMBER, $actual);
|
||||
}
|
||||
|
||||
/**
|
||||
* This check the getter and setter related to the range of case number
|
||||
*
|
||||
* @covers \ProcessMaker\BusinessModel\Cases\AbstractCases::setRangeCaseNumber()
|
||||
* @covers \ProcessMaker\BusinessModel\Cases\AbstractCases::getFromCaseNumber()
|
||||
* @covers \ProcessMaker\BusinessModel\Cases\AbstractCases::getToCaseNumber()
|
||||
* @test
|
||||
*/
|
||||
public function it_return_set_get_range_case_number()
|
||||
{
|
||||
$case1 = factory(Application::class)->create();
|
||||
$case2 = factory(Application::class)->create([
|
||||
'APP_NUMBER' => $case1->APP_NUMBER + 1
|
||||
]);
|
||||
$absCases = new AbstractCases();
|
||||
$absCases->setRangeCaseNumber($case1->APP_NUMBER, $case2->APP_NUMBER);
|
||||
$from = $absCases->getFromCaseNumber();
|
||||
$to = $absCases->getToCaseNumber();
|
||||
$this->assertEquals($case1->APP_NUMBER, $from);
|
||||
$this->assertEquals($case2->APP_NUMBER, $to);
|
||||
}
|
||||
|
||||
/**
|
||||
* This check the getter and setter related to the search
|
||||
*
|
||||
@@ -306,7 +381,12 @@ class AbstractCasesTest extends TestCase
|
||||
$properties = [
|
||||
'category' => G::generateUniqueID(),
|
||||
'process' => G::generateUniqueID(),
|
||||
'task' => rand(),
|
||||
'user' => G::generateUniqueID(),
|
||||
'priority' => 1,
|
||||
'caseNumber' => rand(),
|
||||
'caseNumberFrom' => rand(),
|
||||
'caseNumberTo' => rand(),
|
||||
'search' => G::generateUniqueID(),
|
||||
'caseLink' => G::generateUniqueID(),
|
||||
'appUidCheck' => [G::generateUniqueID()],
|
||||
@@ -323,8 +403,18 @@ class AbstractCasesTest extends TestCase
|
||||
$this->assertEquals($properties['category'], $actual);
|
||||
$actual = $absCases->getProcessUid();
|
||||
$this->assertEquals($properties['process'], $actual);
|
||||
$actual = $absCases->getTaskId();
|
||||
$this->assertEquals($properties['task'], $actual);
|
||||
$actual = $absCases->getUserUid();
|
||||
$this->assertEquals($properties['user'], $actual);
|
||||
$actual = $absCases->getPriority();
|
||||
$this->assertEquals($properties['priority'], $actual);
|
||||
$actual = $absCases->getCaseNumber();
|
||||
$this->assertEquals($properties['caseNumber'], $actual);
|
||||
$actual = $absCases->getFromCaseNumber();
|
||||
$this->assertEquals($properties['caseNumberFrom'], $actual);
|
||||
$actual = $absCases->getToCaseNumber();
|
||||
$this->assertEquals($properties['caseNumberTo'], $actual);
|
||||
$actual = $absCases->getValueToSearch();
|
||||
$this->assertEquals($properties['search'], $actual);
|
||||
$actual = $absCases->getCaseUid();
|
||||
|
||||
@@ -0,0 +1,176 @@
|
||||
<?php
|
||||
|
||||
namespace Tests\unit\workflow\engine\src\ProcessMaker\BusinessModel\Cases;
|
||||
|
||||
use Illuminate\Foundation\Testing\DatabaseTransactions;
|
||||
use ProcessMaker\BusinessModel\Cases\Search;
|
||||
use ProcessMaker\Model\Delegation;
|
||||
use Tests\TestCase;
|
||||
|
||||
/**
|
||||
* Class InboxTest
|
||||
*
|
||||
* @coversDefaultClass \ProcessMaker\BusinessModel\Cases\Search
|
||||
*/
|
||||
class SearchTest extends TestCase
|
||||
{
|
||||
use DatabaseTransactions;
|
||||
|
||||
/**
|
||||
* Set up function.
|
||||
*/
|
||||
public function setUp()
|
||||
{
|
||||
parent::setUp();
|
||||
Delegation::truncate();
|
||||
}
|
||||
|
||||
/**
|
||||
* Create participated cases factories
|
||||
*
|
||||
* @param int
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function createSearch($rows = 10)
|
||||
{
|
||||
$delegation = factory(Delegation::class, $rows)->states('foreign_keys')->create();
|
||||
|
||||
return $delegation;
|
||||
}
|
||||
|
||||
/**
|
||||
* It tests the getData method without filters
|
||||
*
|
||||
* @covers \ProcessMaker\BusinessModel\Cases\Search::getData()
|
||||
* @test
|
||||
*/
|
||||
public function it_should_test_get_data_method_without_filters()
|
||||
{
|
||||
// Create factories related to the delegation cases
|
||||
$cases = $this->createSearch();
|
||||
// Create new Search object
|
||||
$search = new Search();
|
||||
$result = $search->getData();
|
||||
// This assert that the expected numbers of results are returned
|
||||
$this->assertEquals(count($cases), count($result));
|
||||
}
|
||||
|
||||
/**
|
||||
* It tests the getData with case number
|
||||
*
|
||||
* @covers \ProcessMaker\BusinessModel\Cases\Search::getData()
|
||||
* @test
|
||||
*/
|
||||
public function it_should_test_get_data_method_with_specific_case_number()
|
||||
{
|
||||
// Create factories related to the delegation cases
|
||||
$cases = $this->createSearch();
|
||||
// Create new Search object
|
||||
$search = new Search();
|
||||
$search->setCaseNumber($cases[0]->APP_NUMBER);
|
||||
// Set order by column value
|
||||
$search->setOrderByColumn('APP_DELEGATION.APP_NUMBER');
|
||||
$result = $search->getData();
|
||||
// This assert that the expected numbers of results are returned
|
||||
$this->assertEquals($cases[0]->APP_NUMBER, $result[0]['APP_NUMBER']);
|
||||
}
|
||||
|
||||
/**
|
||||
* It tests the getData with priority
|
||||
*
|
||||
* @covers \ProcessMaker\BusinessModel\Cases\Search::getData()
|
||||
* @test
|
||||
*/
|
||||
public function it_should_test_get_data_method_with_specific_priority()
|
||||
{
|
||||
// Create factories related to the delegation cases
|
||||
$cases = $this->createSearch();
|
||||
// Create new Search object
|
||||
$search = new Search();
|
||||
$search->setPriority(3);
|
||||
// Set order by column value
|
||||
$search->setOrderByColumn('APP_DELEGATION.APP_NUMBER');
|
||||
$result = $search->getData();
|
||||
// This assert that the expected numbers of results are returned
|
||||
$this->assertEquals(3, $result[0]['DEL_PRIORITY']);
|
||||
}
|
||||
|
||||
/**
|
||||
* It tests the getData with process
|
||||
*
|
||||
* @covers \ProcessMaker\BusinessModel\Cases\Search::getData()
|
||||
* @test
|
||||
*/
|
||||
public function it_should_test_get_data_method_with_specific_process()
|
||||
{
|
||||
// Create factories related to the delegation cases
|
||||
$cases = $this->createSearch();
|
||||
// Create new Search object
|
||||
$search = new Search();
|
||||
$search->setProcessId($cases[0]->PRO_ID);
|
||||
// Set order by column value
|
||||
$search->setOrderByColumn('APP_DELEGATION.APP_NUMBER');
|
||||
$result = $search->getData();
|
||||
// This assert that the expected numbers of results are returned
|
||||
$this->assertEquals($cases[0]->PRO_ID, $result[0]['PRO_ID']);
|
||||
}
|
||||
|
||||
/**
|
||||
* It tests the getData with task
|
||||
*
|
||||
* @covers \ProcessMaker\BusinessModel\Cases\Search::getData()
|
||||
* @test
|
||||
*/
|
||||
public function it_should_test_get_data_method_with_specific_task()
|
||||
{
|
||||
// Create factories related to the delegation cases
|
||||
$cases = $this->createSearch();
|
||||
// Create new Search object
|
||||
$search = new Search();
|
||||
$search->setTaskId($cases[0]->TAS_ID);
|
||||
// Set order by column value
|
||||
$search->setOrderByColumn('APP_DELEGATION.APP_NUMBER');
|
||||
$result = $search->getData();
|
||||
// This assert that the expected numbers of results are returned
|
||||
$this->assertEquals($cases[0]->TAS_ID, $result[0]['TAS_ID']);
|
||||
}
|
||||
|
||||
/**
|
||||
* It tests the getData with user
|
||||
*
|
||||
* @covers \ProcessMaker\BusinessModel\Cases\Search::getData()
|
||||
* @test
|
||||
*/
|
||||
public function it_should_test_get_data_method_with_specific_user()
|
||||
{
|
||||
// Create factories related to the delegation cases
|
||||
$cases = $this->createSearch();
|
||||
// Create new Search object
|
||||
$search = new Search();
|
||||
$search->setUserId($cases[0]->USR_ID);
|
||||
// Set order by column value
|
||||
$search->setOrderByColumn('APP_DELEGATION.APP_NUMBER');
|
||||
$result = $search->getData();
|
||||
// This assert that the expected numbers of results are returned
|
||||
$this->assertEquals($cases[0]->USR_ID, $result[0]['USR_ID']);
|
||||
}
|
||||
|
||||
/**
|
||||
* It tests the getCounter method
|
||||
*
|
||||
* @covers \ProcessMaker\BusinessModel\Cases\Search::getCounter()
|
||||
* @test
|
||||
*/
|
||||
public function it_should_test_the_counter_for_search()
|
||||
{
|
||||
// Create factories related to the delegation cases
|
||||
$cases = $this->createSearch();
|
||||
// Create new Search object
|
||||
$search = new Search();
|
||||
// Set order by column value
|
||||
$search->setOrderByColumn('APP_DELEGATION.APP_NUMBER');
|
||||
$total = $search->getCounter();
|
||||
$this->assertEquals(count($cases), $total);;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user