Merged in cochalo/processmaker (pull request #280)

Correccion y phpUnits para DEPARTMENTS
This commit is contained in:
erik ao
2014-03-07 12:07:09 -04:00
3 changed files with 89 additions and 5 deletions

View File

@@ -412,7 +412,7 @@ class Department extends BaseDepartment
$criteria->add( DepartmentPeer::DEP_PARENT, $DepParent, Criteria::EQUAL );
$con = Propel::getConnection( DepartmentPeer::DATABASE_NAME );
$objects = DepartmentPeer::doSelect( $criteria, $con );
global $RBAC;
$oUsers = new Users();
foreach ($objects as $oDepartment) {
$node = array ();
@@ -426,7 +426,7 @@ class Department extends BaseDepartment
$manager = $oDepartment->getDepManager();
if ($manager != '') {
$UserUID = $RBAC->load( $manager );
$UserUID = $oUsers->load($manager);
$node['DEP_MANAGER_USERNAME'] = isset( $UserUID['USR_USERNAME'] ) ? $UserUID['USR_USERNAME'] : '';
$node['DEP_MANAGER_FIRSTNAME'] = isset( $UserUID['USR_FIRSTNAME'] ) ? $UserUID['USR_FIRSTNAME'] : '';
$node['DEP_MANAGER_LASTNAME'] = isset( $UserUID['USR_LASTNAME'] ) ? $UserUID['USR_LASTNAME'] : '';

View File

@@ -48,8 +48,8 @@ class Department
$criteria->add( DepartmentPeer::DEP_UID, $dep_uid, \Criteria::EQUAL );
$con = \Propel::getConnection( DepartmentPeer::DATABASE_NAME );
$objects = DepartmentPeer::doSelect( $criteria, $con );
$oUsers = new \Users();
global $RBAC;
$node = array ();
foreach ($objects as $oDepartment) {
$node['DEP_UID'] = $oDepartment->getDepUid();
@@ -62,7 +62,7 @@ class Department
$manager = $oDepartment->getDepManager();
if ($manager != '') {
$UserUID = $RBAC->load( $manager );
$UserUID = $oUsers->load($manager);
$node['DEP_MANAGER_USERNAME'] = isset( $UserUID['USR_USERNAME'] ) ? $UserUID['USR_USERNAME'] : '';
$node['DEP_MANAGER_FIRSTNAME'] = isset( $UserUID['USR_FIRSTNAME'] ) ? $UserUID['USR_FIRSTNAME'] : '';
$node['DEP_MANAGER_LASTNAME'] = isset( $UserUID['USR_LASTNAME'] ) ? $UserUID['USR_LASTNAME'] : '';
@@ -110,7 +110,7 @@ class Department
if (isset($dep_data['DEP_PARENT']) && $dep_data['DEP_PARENT'] != '') {
Validator::depUid($dep_data['DEP_PARENT'], 'dep_parent');
}
if (isset($dep_data['DEP_MANAGER']) && $dep_data['DEP_PARENT'] != '') {
if (isset($dep_data['DEP_MANAGER']) && $dep_data['DEP_MANAGER'] != '') {
Validator::usrUid($dep_data['DEP_MANAGER'], 'dep_manager');
}
if (isset($dep_data['DEP_STATUS'])) {

View File

@@ -16,10 +16,94 @@ if (!class_exists("Propel")) {
*/
class DepartmentTest extends \PHPUnit_Framework_TestCase
{
public function testSaveDepartment()
{
$oDepartment = new \BusinessModel\Department();
////////// Create department parent
$dep1 = array (
'dep_title' => 'departamento padre'
);
$arrayDepartments = $oDepartment->saveDepartment($dep1);
$this->assertTrue(isset($arrayDepartments['dep_uid']));
$this->assertEquals($arrayDepartments['dep_parent'], '');
$this->assertEquals($arrayDepartments['dep_title'], 'departamento padre');
$this->assertEquals($arrayDepartments['dep_status'], 'ACTIVE');
$this->assertEquals($arrayDepartments['dep_manager'], '');
$this->assertEquals($arrayDepartments['has_children'], 0);
////////// Create department child
$dep1Uid = $arrayDepartments['dep_uid'];
$dep2 = array (
'dep_parent' => $dep1Uid,
'dep_manager' => '00000000000000000000000000000001',
'dep_title' => 'departamento hijo1',
'dep_status' => 'INACTIVE'
);
$arrayDepartments2 = $oDepartment->saveDepartment($dep2);
$this->assertTrue(isset($arrayDepartments2['dep_uid']));
$this->assertEquals($arrayDepartments2['dep_parent'], $dep1Uid);
$this->assertEquals($arrayDepartments2['dep_title'], 'departamento hijo1');
$this->assertEquals($arrayDepartments2['dep_status'], 'INACTIVE');
$this->assertEquals($arrayDepartments2['dep_manager'], '00000000000000000000000000000001');
$this->assertEquals($arrayDepartments2['has_children'], 0);
////////// Update department parent
$depUp1 = array (
'dep_uid' => $dep1Uid,
'dep_title' => 'DepPadre',
'dep_manager' => '00000000000000000000000000000001'
);
$oDepartment->saveDepartment($depUp1, false);
$dep2Uid = $arrayDepartments2['dep_uid'];
$depUp2 = array (
'dep_uid' => $dep2Uid,
'dep_title' => 'DepHijo',
'dep_manager' => '',
);
$oDepartment->saveDepartment($depUp2, false);
}
public function testGetDepartments()
{
$oDepartment = new \BusinessModel\Department();
$arrayDepartments = $oDepartment->getDepartments();
$this->assertTrue(is_array($arrayDepartments));
$this->assertEquals(count($arrayDepartments), 1);
$this->assertTrue(is_array($arrayDepartments[0]['dep_children']));
$this->assertEquals(count($arrayDepartments[0]['dep_children']), 1);
}
public function testGetDepartment()
{
$oDepartment = new \BusinessModel\Department();
$arrayDepartments = $oDepartment->getDepartments();
$depIdPadre = $arrayDepartments[0]['dep_uid'];
$depIdChild = $arrayDepartments[0]['dep_children'][0]['dep_uid'];
$oDepartment = new \BusinessModel\Department();
$dataPadre = $oDepartment->getDepartment($depIdPadre);
$dataChild = $oDepartment->getDepartment($depIdChild);
$this->assertTrue(is_array($dataPadre));
$this->assertEquals($dataPadre['dep_title'], 'DepPadre');
$this->assertEquals($dataPadre['dep_manager'], '00000000000000000000000000000001');
$this->assertTrue(is_array($dataChild));
$this->assertEquals($dataChild['dep_title'], 'DepHijo');
$this->assertEquals($dataChild['dep_manager'], '');
}
public function testDeleteDepartment()
{
$oDepartment = new \BusinessModel\Department();
$arrayDepartments = $oDepartment->getDepartments();
$dataDepChild = $arrayDepartments[0]['dep_children'];
$oDepartment->deleteDepartment($dataDepChild[0]['dep_uid']);
$oDepartment->deleteDepartment($arrayDepartments[0]['dep_uid']);
$arrayDepartments = $oDepartment->getDepartments();
$this->assertEquals(count($arrayDepartments), 0);
}
}