def test_merge_library_required_at_the_top_of_multiple_files(self): paths_to_test_files = [ os.path.join(self.test_env_dir, 'dir11', 'file1.js'), os.path.join(self.test_env_dir, 'dir21', 'file2.js'), os.path.join(self.test_env_dir, 'dir31', 'file3.js'), os.path.join(self.test_env_dir, 'dir41', 'file4.js') ] helpers.clean_up_files(paths_to_test_files) helpers.create_file_with_content( paths_to_test_files[0], '//= require file2\n//= require file3\n// This is file 1\n') helpers.create_file_with_content( paths_to_test_files[1], '//= require file4\n// This is file 2\n') helpers.create_file_with_content( paths_to_test_files[2], '//= require file4\n// This is file 3\n') helpers.create_file_with_content(paths_to_test_files[3], '// This is file 4\n') file1_resource = Resource(paths_to_test_files[0]) actual_merged_content = file1_resource.merge_requirements_from_paths( Paths(self.test_env_dir, include_cwd=False), previously_merged=[]) self.assertEqual( '// This is file 4\n// This is file 2\n// This is file 3\n// This is file 1\n', actual_merged_content) helpers.clean_up_files(paths_to_test_files)
def test_merge_recursive_requirements_in_global_path(self): paths_to_test_files = [ os.path.join(self.test_env_dir, 'dir1', 'file1.js'), os.path.join(self.test_env_dir, 'dir2', 'file2.js'), os.path.join(self.test_env_dir, 'dir3', 'file3.js')] helpers.clean_up_files(paths_to_test_files) helpers.create_file_with_content(paths_to_test_files[0], '// This is file 1\n//= require FILE2') helpers.create_file_with_content(paths_to_test_files[1], '// This is file 2\n//= require file3') helpers.create_file_with_content(paths_to_test_files[2], '// This is file 3') file1_resource = Resource(paths_to_test_files[0]) actual_merged_content = file1_resource.merge_requirements_from_paths(Paths(self.test_env_dir, include_cwd=False), previously_merged=[]) self.assertEqual('// This is file 1\n// This is file 2\n// This is file 3', actual_merged_content) helpers.clean_up_files(paths_to_test_files)
def test_merge_js_requirements_favors_shallow_upward_matches(self): paths_to_test_files = [ os.path.join(self.test_env_dir, 'dir1', 'dir2', 'dir3', 'file1.js'), os.path.join(self.test_env_dir, 'dir1', 'dir2', 'file2.js'), os.path.join(self.test_env_dir, 'dir1', 'file2.js')] helpers.clean_up_files(paths_to_test_files) helpers.create_file_with_content(paths_to_test_files[0], '// This is file 1\n//= require FILE2') helpers.create_file_with_content(paths_to_test_files[1], '// This is NEAR file 2') helpers.create_file_with_content(paths_to_test_files[2], '// This is FAR file 2') file1_resource = Resource(paths_to_test_files[0]) actual_merged_content = file1_resource.merge_requirements_from_paths(Paths(self.test_env_dir, include_cwd=False), previously_merged=[]) self.assertEqual('// This is file 1\n// This is NEAR file 2', actual_merged_content)
def test_merge_library_required_at_the_top_of_multiple_files(self): paths_to_test_files = [ os.path.join(self.test_env_dir, 'dir11', 'file1.js'), os.path.join(self.test_env_dir, 'dir21', 'file2.js'), os.path.join(self.test_env_dir, 'dir31', 'file3.js'), os.path.join(self.test_env_dir, 'dir41', 'file4.js')] helpers.clean_up_files(paths_to_test_files) helpers.create_file_with_content(paths_to_test_files[0], '//= require file2\n//= require file3\n// This is file 1\n') helpers.create_file_with_content(paths_to_test_files[1], '//= require file4\n// This is file 2\n') helpers.create_file_with_content(paths_to_test_files[2], '//= require file4\n// This is file 3\n') helpers.create_file_with_content(paths_to_test_files[3], '// This is file 4\n') file1_resource = Resource(paths_to_test_files[0]) actual_merged_content = file1_resource.merge_requirements_from_paths(Paths(self.test_env_dir, include_cwd=False), previously_merged=[]) self.assertEqual('// This is file 4\n// This is file 2\n// This is file 3\n// This is file 1\n', actual_merged_content) helpers.clean_up_files(paths_to_test_files)
def test_merge_css_requirements_in_local_path(self): paths_to_test_files = [ os.path.join(self.test_env_dir, 'dir1', 'file1.css'), os.path.join(self.test_env_dir, 'dir1', 'file2.css'), os.path.join(self.test_env_dir, 'dir2', 'file2.css')] helpers.clean_up_files(paths_to_test_files) helpers.create_file_with_content(paths_to_test_files[0], '/* This is file 1 */\n@import url("FiLe2.css")') helpers.create_file_with_content(paths_to_test_files[1], '/* This is LOCAL file 2 */') helpers.create_file_with_content(paths_to_test_files[2], '/* This is GLOBAL file 2 */') file1_resource = Resource(paths_to_test_files[0]) actual_merged_content = file1_resource.merge_requirements_from_paths(Paths(self.test_env_dir, include_cwd=False), previously_merged=[]) self.assertEqual('/* This is file 1 */\n/* This is LOCAL file 2 */', actual_merged_content) helpers.clean_up_files(paths_to_test_files)
def test_merge_requirements_in_global_path(self): paths_to_test_files = [ os.path.join(self.test_env_dir, 'dir1', 'file1.js'), os.path.join(self.test_env_dir, 'dir2', 'file2.js') ] helpers.clean_up_files(paths_to_test_files) helpers.create_file_with_content( paths_to_test_files[0], '// This is file 1\n//= require FILE2') helpers.create_file_with_content(paths_to_test_files[1], '// This is file 2') file1_resource = Resource(paths_to_test_files[0]) actual_merged_content = file1_resource.merge_requirements_from_paths( Paths(self.test_env_dir, include_cwd=False), previously_merged=[]) self.assertEqual('// This is file 1\n// This is file 2', actual_merged_content) helpers.clean_up_files(paths_to_test_files)
def test_merge_css_requirements_in_local_path(self): paths_to_test_files = [ os.path.join(self.test_env_dir, 'dir1', 'file1.css'), os.path.join(self.test_env_dir, 'dir1', 'file2.css'), os.path.join(self.test_env_dir, 'dir2', 'file2.css') ] helpers.clean_up_files(paths_to_test_files) helpers.create_file_with_content( paths_to_test_files[0], '/* This is file 1 */\n@import url("FiLe2.css")') helpers.create_file_with_content(paths_to_test_files[1], '/* This is LOCAL file 2 */') helpers.create_file_with_content(paths_to_test_files[2], '/* This is GLOBAL file 2 */') file1_resource = Resource(paths_to_test_files[0]) actual_merged_content = file1_resource.merge_requirements_from_paths( Paths(self.test_env_dir, include_cwd=False), previously_merged=[]) self.assertEqual('/* This is file 1 */\n/* This is LOCAL file 2 */', actual_merged_content) helpers.clean_up_files(paths_to_test_files)