3 require_once('tests/modules/Trackers/TrackerTestUtility.php');
5 class TrackerUpgradeDashletTest extends Sugar_PHPUnit_Framework_TestCase {
7 var $defaultTrackingDashlets = array('TrackerDashlet', 'MyModulesUsedChartDashlet', 'MyTeamModulesUsedChartDashlet');
10 $this->markTestSkipped("Skipping unless otherwise specified");
12 TrackerTestUtility::setUp();
13 $GLOBALS['mod_strings'] = return_module_language($GLOBALS['current_language'], 'Home');
16 $cuser->retrieve('1');
17 $GLOBALS['current_user'] = $cuser;
19 //Set the user theme to be 'Sugar' theme since this is run for CE flavor conversions
20 $cuser->setPreference('user_theme', 'Sugar5', 0, 'global');
22 if(ACLController::checkAccess('Trackers', 'view', false, 'Tracker')) {
23 $pages = $GLOBALS['current_user']->getPreference('pages', 'Home');
24 $pages = !empty($pages) ? $pages : array();
25 $dashlets = $GLOBALS['current_user']->getPreference('dashlets', 'Home');
26 $dashlets = !empty($dashlets) ? $dashlets : array();
27 $new_dashlets = array();
29 foreach($dashlets as $id=>$dashlet) {
30 if(!in_array($dashlet['className'], $this->defaultTrackingDashlets)) {
31 $new_dashlets[$id] = $dashlet;
35 $GLOBALS['current_user']->setPreference('dashlets', $new_dashlets, 0, 'Home');
38 foreach($pages as $page) {
39 if(!empty($page['pageTitle']) && $page['pageTitle'] != 'Tracker') {
44 $GLOBALS['current_user']->setPreference('pages', $new_pages, 0, 'Home');
45 $GLOBALS['current_user']->save();
50 TrackerTestUtility::tearDown();
53 $GLOBALS['current_user'] = $user;
57 function testUpgradeTrackerDashlet() {
58 $this->upgradeUserPreferencesCopy();
60 $cuser->retrieve('1');
61 $dashlets = $cuser->getPreference('dashlets', 'Home');
64 foreach($dashlets as $id=>$dashlet) {
65 if(in_array($dashlet['className'], $this->defaultTrackingDashlets)) {
70 $this->assertEquals($countAdded, 3);
72 $pages = $cuser->getPreference('pages', 'Home');
74 foreach($pages as $id=>$page) {
75 if($page['pageTitle'] == 'Tracker') {
80 $theme = $cuser->getPreference('user_theme', 'global');
81 $this->assertTrue($theme == 'Sugar');
82 $this->assertTrue($countAdded == 1);
87 * upgradeUserPreferencesCopy
90 private function upgradeUserPreferencesCopy() {