View | Details | Raw Unified | Return to bug 232880 | Differences between
and this patch

Collapse All | Expand All

(-)src/org/eclipse/jdt/core/tests/model/ResolveTests2.java (+80 lines)
Lines 936-939 Link Here
936
		this.deleteProject("PS2");
936
		this.deleteProject("PS2");
937
	}
937
	}
938
}
938
}
939
//https://bugs.eclipse.org/bugs/show_bug.cgi?id=232880
940
public void testBug232880j() throws Exception {
941
	String outputDirectory = Util.getOutputDirectory();
942
	String externalJar1 = outputDirectory + File.separator + "bug232880a.jar"; //$NON-NLS-1$
943
	String externalJar2 = outputDirectory + File.separator + "bug232880b.jar"; //$NON-NLS-1$
944
	try {
945
		
946
		// create external jar 1
947
		Util.createJar(
948
				new String[] {
949
					"test1/IResource.java", //$NON-NLS-1$
950
					"package test1;\n" + //$NON-NLS-1$
951
					"public class IResource {\n" + //$NON-NLS-1$
952
					"}" //$NON-NLS-1$
953
				},
954
				new HashMap(),
955
				externalJar1);
956
		
957
		// create external jar 2
958
		String source2 =
959
			"package test2;\n" + //$NON-NLS-1$
960
			"import test1.IResource;\n" + //$NON-NLS-1$
961
			"public class IJavaElement {\n" + //$NON-NLS-1$
962
			"	// iresource\n" + //$NON-NLS-1$
963
			"	IResource foo() {return null;}\n" + //$NON-NLS-1$
964
			"}"; //$NON-NLS-1$
965
		
966
		Util.createJar(
967
				new String[] {
968
					"test2/IJavaElement.java", //$NON-NLS-1$
969
					source2
970
				},
971
				null,
972
				new HashMap(),
973
				new String[]{externalJar1},
974
				externalJar2);
975
976
		// create P1
977
		IJavaProject project1 = this.createJavaProject(
978
			"PS1",
979
			new String[]{"src"},
980
			new String[]{"JCL_LIB", externalJar2},
981
			 "bin");
982
		
983
		this.createFolder("/PS1/attachment/test2");
984
		this.createFile(
985
				"/PS1/attachment/test2/IJavaElement.java",
986
				source2);
987
		
988
		IPackageFragmentRoot root = project1.getPackageFragmentRoot(externalJar2);
989
		attachSource(root, "/PS1/attachment/", "");
990
		
991
		// create P2
992
		this.createJavaProject(
993
			"PS2",
994
			new String[]{"src"},
995
			new String[]{"JCL_LIB", externalJar1},
996
			 "bin");
997
998
		waitUntilIndexesReady();
999
1000
		// do code select
1001
		IClassFile cf = getClassFile("PS1", externalJar2, "test2", "IJavaElement.class");
1002
		
1003
		IJavaElement[] elements = codeSelect(cf, "iresource", "iresource");
1004
1005
		assertElementsEqual(
1006
			"Unexpected elements",
1007
			"",
1008
			elements
1009
		);
1010
	} finally {
1011
		this.deleteExternalFile(externalJar1);
1012
		this.deleteExternalFile(externalJar2);
1013
		refreshExternalArchives(getJavaProject("PS1")); // workaround for https://bugs.eclipse.org/bugs/show_bug.cgi?id=250083
1014
		refreshExternalArchives(getJavaProject("PS2")); // workaround for https://bugs.eclipse.org/bugs/show_bug.cgi?id=250083
1015
		this.deleteProject("PS1");
1016
		this.deleteProject("PS2");
1017
	}
1018
}
939
}
1019
}
(-)codeassist/org/eclipse/jdt/internal/codeassist/SelectionEngine.java (-2 / +2 lines)
Lines 738-745 Link Here
738
				new BasicSearchEngine(workingCopies).searchAllTypeNames(
738
				new BasicSearchEngine(workingCopies).searchAllTypeNames(
739
					null,
739
					null,
740
					SearchPattern.R_EXACT_MATCH,
740
					SearchPattern.R_EXACT_MATCH,
741
					CharOperation.toLowerCase(prefix),
741
					prefix,
742
					SearchPattern.R_EXACT_MATCH,
742
					SearchPattern.R_EXACT_MATCH | SearchPattern.R_CASE_SENSITIVE,
743
					IJavaSearchConstants.TYPE,
743
					IJavaSearchConstants.TYPE,
744
					scope,
744
					scope,
745
					requestorWrapper,
745
					requestorWrapper,

Return to bug 232880