Author: dazarov
Date: 2011-10-14 14:39:46 -0400 (Fri, 14 Oct 2011)
New Revision: 35674
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.ui.test/src/org/jboss/tools/cdi/ui/test/CATest.java
trunk/common/plugins/org.jboss.tools.common.base.test/src/org/jboss/tools/common/base/test/contentassist/AbstractContentAssistantTestCase.java
Log:
Updated test in order to check images in Content Assistant
https://issues.jboss.org/browse/JBIDE-9897
Modified:
trunk/cdi/tests/org.jboss.tools.cdi.ui.test/src/org/jboss/tools/cdi/ui/test/CATest.java
===================================================================
---
trunk/cdi/tests/org.jboss.tools.cdi.ui.test/src/org/jboss/tools/cdi/ui/test/CATest.java 2011-10-14
18:15:12 UTC (rev 35673)
+++
trunk/cdi/tests/org.jboss.tools.cdi.ui.test/src/org/jboss/tools/cdi/ui/test/CATest.java 2011-10-14
18:39:46 UTC (rev 35674)
@@ -14,6 +14,8 @@
import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.swt.graphics.Image;
+import org.jboss.tools.cdi.core.CDIImages;
import org.jboss.tools.cdi.core.test.tck.TCKTest;
import org.jboss.tools.jst.jsp.test.ca.ContentAssistantTestCase;
@@ -26,7 +28,9 @@
private ContentAssistantTestCase caTest = new ContentAssistantTestCase();
private static final String PAGE_NAME = "WebContent/test.jsp";
private String[] beanProposals = new String[] {"example",
"example.com", "fishJBT", "game", "haddock",
"salmon", "sheep", "tunaFarm", "whitefishJBT",
"wolf"};
+ private Image[] beanImages = new Image[] {CDIImages.BEAN_CLASS_IMAGE,
CDIImages.BEAN_CLASS_IMAGE, CDIImages.BEAN_CLASS_IMAGE, CDIImages.BEAN_CLASS_IMAGE,
CDIImages.BEAN_CLASS_IMAGE, CDIImages.BEAN_CLASS_IMAGE, CDIImages.BEAN_CLASS_IMAGE,
CDIImages.BEAN_CLASS_IMAGE, CDIImages.BEAN_CLASS_IMAGE, CDIImages.BEAN_CLASS_IMAGE};
private String[] propertyProposals = new String[] {"game.value",
"game.initialize()"};
+ private Image[] propertyImages = new Image[] {CDIImages.BEAN_FIELD_IMAGE,
CDIImages.BEAN_METHOD_IMAGE};
public void setUp() {
project = ResourcesPlugin.getWorkspace().getRoot().getProject(TCKTest.PROJECT_NAME);
@@ -34,7 +38,16 @@
}
public void testEL() {
- caTest.checkProposals(PAGE_NAME, "value=\"#{", 9, beanProposals,
false);
- caTest.checkProposals(PAGE_NAME, "rendered=\"#{(game.", 18,
propertyProposals, false);
+// System.out.println("BEAN_CLASS_IMAGE - "+CDIImages.BEAN_CLASS_IMAGE);
+// System.out.println("BEAN_METHOD_IMAGE - "+CDIImages.BEAN_METHOD_IMAGE);
+// System.out.println("BEAN_FIELD_IMAGE - "+CDIImages.BEAN_FIELD_IMAGE);
+//
+// System.out.println("INJECTION_POINT_IMAGE -
"+CDIImages.INJECTION_POINT_IMAGE);
+// System.out.println("ANNOTATION_IMAGE - "+CDIImages.ANNOTATION_IMAGE);
+// System.out.println("CDI_EVENT_IMAGE - "+CDIImages.CDI_EVENT_IMAGE);
+// System.out.println("MESSAGE_BUNDLE_IMAGE -
"+CDIImages.MESSAGE_BUNDLE_IMAGE);
+
+ caTest.checkProposals(PAGE_NAME, "value=\"#{", 9, beanProposals,
beanImages, false);
+ caTest.checkProposals(PAGE_NAME, "rendered=\"#{(game.", 18,
propertyProposals, propertyImages, false);
}
}
\ No newline at end of file
Modified:
trunk/common/plugins/org.jboss.tools.common.base.test/src/org/jboss/tools/common/base/test/contentassist/AbstractContentAssistantTestCase.java
===================================================================
---
trunk/common/plugins/org.jboss.tools.common.base.test/src/org/jboss/tools/common/base/test/contentassist/AbstractContentAssistantTestCase.java 2011-10-14
18:15:12 UTC (rev 35673)
+++
trunk/common/plugins/org.jboss.tools.common.base.test/src/org/jboss/tools/common/base/test/contentassist/AbstractContentAssistantTestCase.java 2011-10-14
18:39:46 UTC (rev 35674)
@@ -23,6 +23,7 @@
import org.eclipse.jface.text.source.ISourceViewer;
import org.eclipse.jface.text.source.SourceViewer;
import org.eclipse.jface.text.source.SourceViewerConfiguration;
+import org.eclipse.swt.graphics.Image;
import org.eclipse.ui.IEditorPart;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.texteditor.ITextEditor;
@@ -80,13 +81,22 @@
}
public ICompletionProposal[] checkProposals(String fileName, int offset, String[]
proposals, boolean exactly) {
- return checkProposals(fileName, null, offset, proposals, exactly, true);
+ return checkProposals(fileName, null, offset, proposals, null, exactly, true);
}
public ICompletionProposal[] checkProposals(String fileName, String substring, int
offset, String[] proposals, boolean exactly) {
- return checkProposals(fileName, substring, offset, proposals, exactly, false);
+ return checkProposals(fileName, substring, offset, proposals, null, exactly, false);
}
- public ICompletionProposal[] checkProposals(String fileName, String substring, int
offset, String[] proposals, boolean exactly, boolean excludeELProposalsFromExactTest){
+
+ public ICompletionProposal[] checkProposals(String fileName, String substring, int
offset, String[] proposals, Image[] images, boolean exactly) {
+ return checkProposals(fileName, substring, offset, proposals, images, exactly, false);
+ }
+
+ public ICompletionProposal[] checkProposals(String fileName, String substring, int
offset, String[] proposals, Image[] images, boolean exactly, boolean
excludeELProposalsFromExactTest){
+ if(images != null){
+ assertEquals("number of images and number of proposals must be the same or images
must be null", proposals.length, images.length);
+ }
+
openEditor(fileName);
int position = 0;
@@ -111,7 +121,12 @@
sb.append("]");
int foundCounter = 0;
for (int i = 0; i < proposals.length; i++) {
- boolean found = compareProposal(proposals[i], result);
+ Image image = null;
+ if(images != null){
+ image = images[i];
+ }
+ boolean found = compareProposal(proposals[i], image, result);
+
if (found)
foundCounter++;
assertTrue("Proposal " + proposals[i] + " not found! Found
proposals: " + sb.toString(), found ); //$NON-NLS-1$ //$NON-NLS-2$
@@ -139,12 +154,12 @@
return false;
}
- public boolean compareProposal(String proposalName, ICompletionProposal[] proposals){
+ public boolean compareProposal(String proposalName, Image image, ICompletionProposal[]
proposals){
for (int i = 0; i < proposals.length; i++) {
if (isRelevantProposal(proposals[i])) {
CustomCompletionProposal ap = (CustomCompletionProposal)proposals[i];
String replacementString = ap.getReplacementString().toLowerCase();
- if (replacementString.equalsIgnoreCase(proposalName)) return true;
+ if (replacementString.equalsIgnoreCase(proposalName)) return compareImages(image,
proposals[i]);
// For a tag proposal there will be not only the the tag name but all others
characters like default attributes, tag ending characters and so on
if (replacementString.indexOf("/>") != -1) {
@@ -153,36 +168,44 @@
if (replacementString.indexOf('>') != -1) {
replacementString = replacementString.substring(0,
replacementString.indexOf('>'));
}
- if (replacementString.equalsIgnoreCase(proposalName)) return true;
+ if (replacementString.equalsIgnoreCase(proposalName)) return compareImages(image,
proposals[i]);
String[] replacementStringParts = replacementString.split(" ");
//$NON-NLS-1$
if (replacementStringParts != null && replacementStringParts.length > 0)
{
- if (replacementStringParts[0].equalsIgnoreCase(proposalName)) return true;
+ if (replacementStringParts[0].equalsIgnoreCase(proposalName)) return
compareImages(image, proposals[i]);
}
// for an attribute proposal there will be a pare of attribute-value (i.e.
attrName="attrValue")
replacementStringParts = replacementString.split("="); //$NON-NLS-1$
if (replacementStringParts != null && replacementStringParts.length > 0)
{
- if (replacementStringParts[0].equalsIgnoreCase(proposalName)) return true;
+ if (replacementStringParts[0].equalsIgnoreCase(proposalName)) return
compareImages(image, proposals[i]);
}
// for an Unclosed EL the closing character is appended to the proposal string (i.e.
person} )
// perform case insensitive compare operation
replacementStringParts = replacementString.split("}"); //$NON-NLS-1$
if (replacementStringParts != null && replacementStringParts.length > 0)
{
- if (replacementStringParts[0].equalsIgnoreCase(proposalName)) return true;
+ if (replacementStringParts[0].equalsIgnoreCase(proposalName)) return
compareImages(image, proposals[i]);
}
// For an attribute value proposal there will be the quote characters
replacementString = Utils.trimQuotes(replacementString);
- if (replacementString.equalsIgnoreCase(proposalName)) return true;
+ if (replacementString.equalsIgnoreCase(proposalName)) return compareImages(image,
proposals[i]);
} else {
- if(proposals[i].getDisplayString().toLowerCase().equals(proposalName.toLowerCase()))
return true;
+ if(proposals[i].getDisplayString().toLowerCase().equals(proposalName.toLowerCase()))
return compareImages(image, proposals[i]);
}
}
return false;
}
+
+ private boolean compareImages(Image expected, ICompletionProposal proposal){
+ if(expected != null){
+ //System.out.println("<"+proposal.getDisplayString()+">
completion proposal image - "+proposal.getImage());
+ assertEquals("<"+proposal.getDisplayString()+"> completion
proposal returns wrong image", expected, proposal.getImage());
+ }
+ return true;
+ }
public void closeEditor() {
if (editorPart != null) {