[Pydev-cvs] org.python.pydev/tests/org/python/pydev/editor/correctionassist/heuristics AssistCreateI
Brought to you by:
fabioz
From: Fabio Z. <fa...@us...> - 2005-04-15 15:52:27
|
Update of /cvsroot/pydev/org.python.pydev/tests/org/python/pydev/editor/correctionassist/heuristics In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6735/tests/org/python/pydev/editor/correctionassist/heuristics Modified Files: AssistCreateInModuleTest.java Log Message: Index: AssistCreateInModuleTest.java =================================================================== RCS file: /cvsroot/pydev/org.python.pydev/tests/org/python/pydev/editor/correctionassist/heuristics/AssistCreateInModuleTest.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** AssistCreateInModuleTest.java 14 Apr 2005 13:12:19 -0000 1.4 --- AssistCreateInModuleTest.java 15 Apr 2005 15:52:16 -0000 1.5 *************** *** 11,14 **** --- 11,15 ---- import org.eclipse.jface.text.BadLocationException; import org.eclipse.jface.text.Document; + import org.eclipse.jface.text.IRegion; import org.eclipse.jface.text.TextSelection; import org.python.pydev.editor.actions.PyAction; *************** *** 53,65 **** "assist.NewMethod(a,b)"; - Document doc = new Document(d); - PySelection ps = new PySelection(doc, new TextSelection(doc, d.length(), 0)); - String sel = PyAction.getLineWithoutComments(ps); - - assertEquals(true, assist.isValid(ps, sel)); - List props = assist.getProps(ps, null, null, nature, null); - assertEquals(1, props.size()); - SourceModuleProposal p = (SourceModuleProposal) props.get(0); - String res = "\n" + "def NewMethod(a,b):\n" + --- 54,57 ---- *************** *** 69,109 **** " '''\n"+ " "; ! ! assertEquals(res, p.getReplacementStr()); ! assertEquals("testAssist.assist", p.module.getName()); } /** * @throws BadLocationException - * */ ! public void testAssistMethod2() throws BadLocationException { ! assist = new AssistCreateMethodInModule(); ! String d = ""+ ! "from testAssist import assist\n" + ! "NewMethod(a,b)"; ! ! Document doc = new Document(d); ! PySelection ps = new PySelection(doc, new TextSelection(doc, d.length(), 0)); String sel = PyAction.getLineWithoutComments(ps); ! assertEquals(true, assist.isValid(ps, sel)); ! List props = assist.getProps(ps, null, null, nature, null); ! assertEquals(1, props.size()); ! SourceModuleProposal p = (SourceModuleProposal) props.get(0); ! ! String res = "\n" + ! "def NewMethod(a,b):\n" + ! " '''\n"+ ! " @param a:\n"+ ! " @param b:\n"+ ! " '''\n"+ ! " "; ! ! assertEquals(res, p.getReplacementStr()); ! assertEquals(null, p.module.getFile()); ! assertEquals("", p.module.getName()); } /** * @throws BadLocationException --- 61,117 ---- " '''\n"+ " "; ! ! checkCreateMethod(d, res, "testAssist.assist", true, -1); ! ! d = ""+ ! "from testAssist import assist\n" + ! "NewMethod(a,b)"; ! checkCreateMethod(d, res, "", true, -1); ! ! d = ""+ ! "class NewClass(object): \n" + ! " \n" + ! " def NewMethod(a,b): \n" + ! " pass \n"; ! checkCreateMethod(d, res, "", false, 0); ! checkCreateMethod(d, res, "", false, 2); } + /** + * @param docStr + * @param res + * @param moduleName + * @param isValid + * @param line: offset is set to the end of the passed line * @throws BadLocationException */ ! private void checkCreateMethod(String docStr, String res, String moduleName, boolean isValid, int line) throws BadLocationException { ! Document doc = new Document(docStr); ! ! int offset = 0; ! if (line == -1){ ! offset = docStr.length(); ! }else{ ! IRegion lineInformation = doc.getLineInformation(line); ! offset = lineInformation.getOffset() + lineInformation.getLength(); ! } ! ! PySelection ps = new PySelection(doc, new TextSelection(doc, offset, 0)); String sel = PyAction.getLineWithoutComments(ps); ! assertEquals(isValid, assist.isValid(ps, sel)); ! if(isValid){ ! List props = assist.getProps(ps, null, null, nature, null); ! assertEquals(1, props.size()); ! SourceModuleProposal p = (SourceModuleProposal) props.get(0); ! ! ! assertEquals(res, p.getReplacementStr()); ! assertEquals(moduleName, p.module.getName()); ! } } + /** * @throws BadLocationException *************** *** 117,121 **** int nProps = 1; assist = new AssistCreateClassInModule(); ! checkAssistClass(docStr, moduleName, nProps); --- 125,129 ---- int nProps = 1; assist = new AssistCreateClassInModule(); ! checkAssistClass(docStr, moduleName, nProps,-1,0); *************** *** 125,129 **** "from testAssist import assist\n" + "newClass = NewClass(a,b)"; ! checkAssistClass(docStr, moduleName, nProps); } --- 133,143 ---- "from testAssist import assist\n" + "newClass = NewClass(a,b)"; ! checkAssistClass(docStr, moduleName, nProps,-1,0); ! ! //same as before... different sel ! docStr = ""+ ! "from testAssist import assist\n" + //30 chars ! "assist.Ignore(NewClass(a,b)) "; //from 14 to +13 ! checkAssistClass(docStr, moduleName, nProps,30+14,13); } *************** *** 134,140 **** * @throws BadLocationException */ ! private void checkAssistClass(String docStr, String moduleName, int nProps) throws BadLocationException { Document doc = new Document(docStr); ! PySelection ps = new PySelection(doc, new TextSelection(doc, docStr.length(), 0)); String sel = PyAction.getLineWithoutComments(ps); --- 148,156 ---- * @throws BadLocationException */ ! private void checkAssistClass(String docStr, String moduleName, int nProps, int selStart, int selLength) throws BadLocationException { ! if (selStart == -1) ! selStart = docStr.length(); Document doc = new Document(docStr); ! PySelection ps = new PySelection(doc, new TextSelection(doc, selStart, selLength)); String sel = PyAction.getLineWithoutComments(ps); |