public function testInsertDuplicateRobotAssoc()
 {
     $myDB = DBMaker::create('botspacetest');
     Database::clearDB();
     $db = Database::getDB('botspacetest', 'C:\\xampp\\myConfig.ini');
     $beforeCount = count(RobotAssocsDB::getRobotAssocsBy());
     $robotAssocCopy = RobotAssocsDB::getRobotAssocsRowsBy('robotAssocId', 2);
     $robotAssocCopy = $robotAssocCopy[0];
     $s1 = new RobotAssoc($robotAssocCopy);
     $dupRobotAssoc = RobotAssocsDB::addRobotAssoc($s1);
     $afterCount = count(RobotAssocsDB::getRobotAssocsBy());
     $this->assertTrue(!empty($dupRobotAssoc->getError('robotAssocId')) && strcmp(Messages::getError('ROBOT_ASSOC_INVALID'), $s1->getError('robotAssocId')) == 0, 'It should have a robotAssocId error if the robot association is a duplicate');
     $this->assertEquals($afterCount, $beforeCount, 'There should be no additional robot association entries after the insertion attempt');
 }
 public static function setProfileDataForUser($userId)
 {
     $retVal = false;
     if (empty($userId) || !is_numeric($userId)) {
         return $retVal;
     }
     $user = null;
     $userData = null;
     $skillAssocs = null;
     $userRobots = null;
     $users = UsersDB::getUsersBy('userId', $userId);
     if (count($users) > 0) {
         $user = $users[0];
         if ($user->getErrorCount() != 0) {
             return $retVal;
         }
         $userDataArray = UserDataDB::getUserDataBy('userId', $userId);
         if (count($userDataArray) > 0) {
             $userData = $userDataArray[0];
         }
         if ($userData->getErrorCount() != 0) {
             return $retVal;
         }
         $skillAssocs = SkillAssocsDB::getSkillAssocsBy('userDataId', $userData->getUserDataId());
         foreach ($skillAssocs as $skillAssoc) {
             if ($skillAssoc->getErrorCount() != 0) {
                 return $retVal;
             }
         }
         $robotAssocs = RobotAssocsDB::getRobotAssocsBy('creatorId', $userData->getUserDataId());
         $userRobots = array();
         foreach ($robotAssocs as $robotAssoc) {
             $robotArray = RobotDataDB::getRobotDataBy('robotId', $robotAssoc->getRobotId());
             if (count($robotArray) > 0) {
                 array_push($userRobots, $robotArray[0]);
             }
         }
         $_SESSION['user'] = $user;
         $_SESSION['userData'] = $userData;
         $_SESSION['skillAssocs'] = $skillAssocs;
         $_SESSION['userRobots'] = $userRobots;
         $retVal = true;
     }
     return $retVal;
 }