|
From: Christopher W. <caw...@us...> - 2005-09-18 15:10:18
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/internal/ui In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28268/src/org/rubypeople/rdt/internal/ui Modified Files: TC_RubyViewerFilter.java Added Files: TC_RubyFileMatcher.java Log Message: recognize "Rakefile" as a ruby file. recognize ".yml" files as ruby related. read first line of a file (if it is unknwon if it's ruby related) and check for '#!' and 'ruby'. If they're there, assume the file is a ruby file. (NOTE: This may slow down opening/creating a ruby project when the project has a large set of 'unknown' files [don't match normal names or extensions for ruby]) Index: TC_RubyViewerFilter.java =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/internal/ui/TC_RubyViewerFilter.java,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** TC_RubyViewerFilter.java 12 Mar 2005 15:41:31 -0000 1.6 --- TC_RubyViewerFilter.java 18 Sep 2005 15:10:09 -0000 1.7 *************** *** 64,67 **** --- 64,85 ---- } + public void testFilterShowsYMLFiles() throws Exception { + IProject project = ResourceTools.createProject("TCRubyViewerFilter"); + IFile file = project.getFile("TCRubyViewerFilterFile.yml"); + assertTrue(filter.select(null, null, file)); + } + + public void testFilterShowsRakefiles() throws Exception { + IProject project = ResourceTools.createProject("TCRubyViewerFilter"); + IFile file = project.getFile("Rakefile"); + assertTrue(filter.select(null, null, file)); + } + + public void testFilterShowsGemFiles() throws Exception { + IProject project = ResourceTools.createProject("TCRubyViewerFilter"); + IFile file = project.getFile("TCRubyViewerFilterFile.gem"); + assertTrue(filter.select(null, null, file)); + } + public void testFilterShowsFolders() throws Exception { IProject project = ResourceTools.createProject("TCRubyViewerFilter"); --- NEW FILE: TC_RubyFileMatcher.java --- package org.rubypeople.rdt.internal.ui; import junit.framework.TestCase; import org.rubypeople.eclipse.shams.resources.ShamFile; public class TC_RubyFileMatcher extends TestCase { private RubyFileMatcher matcher; protected void setUp() throws Exception { super.setUp(); matcher = new RubyFileMatcher(); } public void testHasRubyEditorAssociationIfContainsRubyShebang() { ShamFile file = new ShamFile("fake", false); file.setContents("#! /usr/local/bin/ruby\nputs 'Hello World!'\n"); assertTrue(matcher.hasRubyEditorAssociation(file)); } public void testRakefileHasRubyEditorAssociation() { ShamFile file = new ShamFile("Rakefile", false); assertTrue(matcher.hasRubyEditorAssociation(file)); } public void testGemHasRubyEditorAssociation() { ShamFile file = new ShamFile("syntax.gem", false); assertTrue(matcher.hasRubyEditorAssociation(file)); } public void testGemspecHasRubyEditorAssociation() { ShamFile file = new ShamFile("syntax.gemspec", false); assertTrue(matcher.hasRubyEditorAssociation(file)); } public void testYAMLHasRubyEditorAssociation() { ShamFile file = new ShamFile("database.yml", false); assertTrue(matcher.hasRubyEditorAssociation(file)); } public void testRHTMLHasRubyEditorAssociation() { ShamFile file = new ShamFile("index.rhtml", false); assertTrue(matcher.hasRubyEditorAssociation(file)); } // TODO Test that a user can add new files which are associated } |