2 require_once 'include/dir_inc.php';
4 class Bug37692Test extends Sugar_PHPUnit_Framework_TestCase {
11 $this->modules = array('Project');
12 $this->has_dir = array();
14 foreach($this->modules as $module) {
15 if(!file_exists("custom/modules/{$module}/metadata")){
16 mkdir_recursive("custom/modules/{$module}/metadata", true);
19 if(file_exists("custom/modules/{$module}")) {
20 $this->has_dir[$module] = true;
23 $files = array('editviewdefs','detailviewdefs');
24 foreach($files as $file) {
25 if(file_exists("custom/modules/{$module}/metadata/{$file}")) {
26 copy("custom/modules/{$module}/metadata/{$file}.php", "custom/modules/{$module}/metadata/{$file}.php.bak");
29 if(file_exists("custom/modules/{$module}/metadata/{$file}.php.suback.php")) {
30 copy("custom/modules/{$module}/metadata/{$file}.php.suback.php", "custom/modules/{$module}/metadata/{$file}.php.suback.bak");
33 if(file_exists("tests/modules/UpgradeWizard/SugarMerge/od_metadata_files/custom/modules/{$module}/metadata/{$file}.php")) {
34 copy("tests/modules/UpgradeWizard/SugarMerge/od_metadata_files/custom/modules/{$module}/metadata/{$file}.php", "custom/modules/{$module}/metadata/{$file}.php");
43 foreach($this->modules as $module) {
44 if(!$this->has_dir[$module]) {
45 rmdir_recursive("custom/modules/{$module}");
47 $files = array('editviewdefs','detailviewdefs');
48 foreach($files as $file) {
49 if(file_exists("custom/modules/{$module}/metadata/{$file}.php.bak")) {
50 copy("custom/modules/{$module}/metadata/{$file}.php.bak", "custom/modules/{$module}/metadata/{$file}.php");
51 unlink("custom/modules/{$module}/metadata/{$file}.php.bak");
52 } else if(file_exists("custom/modules/{$module}/metadata/{$file}.php")) {
53 unlink("custom/modules/{$module}/metadata/{$file}.php");
56 if(file_exists("custom/modules/{$module}/metadata/{$module}.php.suback.bak")) {
57 copy("custom/modules/{$module}/metadata/{$file}.php.suback.bak", "custom/modules/{$module}/metadata/{$file}.php.suback.php");
58 unlink("custom/modules/{$module}/metadata/{$file}.php.suback.bak");
59 } else if(file_exists("custom/modules/{$module}/metadata/{$file}.php.suback.php")) {
60 unlink("custom/modules/{$module}/metadata/{$file}.php.suback.php");
68 function test_project_merge() {
69 require_once('modules/UpgradeWizard/SugarMerge/SugarMerge.php');
70 $sugar_merge = new SugarMerge('tests/modules/UpgradeWizard/SugarMerge/od_metadata_files/custom');
71 $sugar_merge->mergeModule('Project');
72 $this->assertTrue(file_exists('custom/modules/Project/metadata/detailviewdefs.php.suback.php'));
73 $this->assertTrue(file_exists('custom/modules/Project/metadata/editviewdefs.php.suback.php'));
74 require('custom/modules/Project/metadata/detailviewdefs.php');
75 $this->assertTrue(isset($viewdefs['Project']['DetailView']['panels']['lbl_panel_1']), 'Assert that the original panel index is preserved');
76 require('custom/modules/Project/metadata/editviewdefs.php');
77 $this->assertTrue(isset($viewdefs['Project']['EditView']['panels']['default']), 'Assert that the original panel index is preserved');