package com.python.pydev.analysis.search_index; import org.eclipse.core.resources.IFile; import org.eclipse.jface.text.Document; import org.eclipse.jface.text.IDocument; import org.eclipse.search.ui.text.AbstractTextSearchResult; import org.python.pydev.core.ModulesKey; import org.python.pydev.plugin.nature.FileStub2; import junit.framework.TestCase; public class SearchIndexQueryTest extends TestCase { public void testSearchQuery() throws Exception { PySearchIndexQuery query = new PySearchIndexQuery("my"); String text = "rara\nmy\nnomyno\nmy"; IDocument doc = new Document(text); IFile f = new FileStub2("stub") { @Override public long getModificationStamp() { return 0; } }; AbstractTextSearchResult searchResult = new PySearchResult(null); query.createMatches(doc, text, query.createStringMatcher(), f, searchResult, new ModulesKey("my", null)); assertEquals(2, searchResult.getMatchCount()); } public void testSearchQuery2() throws Exception { PySearchIndexQuery query = new PySearchIndexQuery("*my"); String text = "rara\nmy\nnomyno\nmy"; IDocument doc = new Document(text); IFile f = new FileStub2("stub") { @Override public long getModificationStamp() { return 0; } }; AbstractTextSearchResult searchResult = new PySearchResult(null); query.createMatches(doc, text, query.createStringMatcher(), f, searchResult, new ModulesKey("my", null)); assertEquals(2, searchResult.getMatchCount()); } public void testSearchQuery3() throws Exception { PySearchIndexQuery query = new PySearchIndexQuery("*my*"); String text = "rara\nmy\nnomyno\nmy"; IDocument doc = new Document(text); IFile f = new FileStub2("stub") { @Override public long getModificationStamp() { return 0; } }; AbstractTextSearchResult searchResult = new PySearchResult(null); query.createMatches(doc, text, query.createStringMatcher(), f, searchResult, new ModulesKey("my", null)); assertEquals(3, searchResult.getMatchCount()); } }