Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Resubmitted:Re: REJECTED Re: [cdt-patch] Tests patch


This fixes it...

- Bogdan




 
John Camelon/Ottawa/IBM@IBMCA
Sent by: cdt-patch-admin@xxxxxxxxxxx

09/15/2003 12:02 PM

Please respond to
cdt-patch@xxxxxxxxxxx

To
cdt-patch@xxxxxxxxxxx
cc
Subject
REJECTED Re: [cdt-patch] Tests patch





Rather than getting a NPE we get a failed assertion in the same test (only
on Linux).

JohnC

cdt-patch-admin@xxxxxxxxxxx wrote on 09/15/2003 10:23:22 AM:

>
> This patch addresses a NPE that pops up on linux while running the
> indexer portion of tests of the core suite.
>
> - Bogdan
> [attachment "cdt-core-tests-patch.txt" deleted by John
Camelon/Ottawa/IBM]
_______________________________________________
cdt-patch mailing list
cdt-patch@xxxxxxxxxxx
http://dev.eclipse.org/mailman/listinfo/cdt-patch

Index: ChangeLog
===================================================================
RCS file: /home/tools/org.eclipse.cdt.core.tests/ChangeLog,v
retrieving revision 1.99
diff -u -r1.99 ChangeLog
--- ChangeLog	16 Sep 2003 14:45:34 -0000	1.99
+++ ChangeLog	16 Sep 2003 16:34:35 -0000
@@ -1,3 +1,7 @@
+2003-09-17 Bogdan Gheorghe
+	Added asserts to all index lookups in IndexManagerTests
+	Fixed testAddNewFileToIndex
+	
 2003-09-16 Hoda Amer
     Added CompleteParseASTExpressionTest.testPrimaryThis()
     
Index: indexer/org/eclipse/cdt/core/indexer/tests/IndexManagerTests.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.core.tests/indexer/org/eclipse/cdt/core/indexer/tests/IndexManagerTests.java,v
retrieving revision 1.16
diff -u -r1.16 IndexManagerTests.java
--- indexer/org/eclipse/cdt/core/indexer/tests/IndexManagerTests.java	15 Sep 2003 17:31:17 -0000	1.16
+++ indexer/org/eclipse/cdt/core/indexer/tests/IndexManagerTests.java	16 Sep 2003 16:34:36 -0000
@@ -191,9 +191,15 @@
 		indexManager.setEnabled(testProject,true);
 		Thread.sleep(1500);
 		IIndex ind = indexManager.getIndex(testProject.getFullPath(),true,true);
+		assertTrue("Index exists for project",ind != null);
+		
 		char[] prefix = "typeDecl/".toCharArray();
 		IQueryResult[] qresults = ind.queryPrefix(prefix);
 		IEntryResult[] eresults = ind.queryEntries(prefix);
+		
+		assertTrue("Query Results exist", qresults != null);
+		assertTrue("Entry Results exist", eresults != null);
+		
 		String [] queryResultModel = {"IndexedFile(1: /IndexerTestProject/mail.cpp)"};
 		String [] entryResultModel ={"EntryResult: word=typeDecl/C/Mail, refs={ 1 }", "EntryResult: word=typeDecl/C/Unknown, refs={ 1 }", "EntryResult: word=typeDecl/C/container, refs={ 1 }", "EntryResult: word=typeDecl/C/first_class, refs={ 1 }", "EntryResult: word=typeDecl/C/postcard, refs={ 1 }", "EntryResult: word=typeDecl/V/PO_Box, refs={ 1 }", "EntryResult: word=typeDecl/V/x, refs={ 1 }"};
 		
@@ -231,10 +237,13 @@
 		importFile("DocumentManager.cpp","resources/indexer/DocumentManager.cpp");
 		Thread.sleep(10000);
 		ind = indexManager.getIndex(testProjectPath,true,true);
+		
 		char[] prefix = "typeDecl/C/CDocumentManager".toCharArray();
 		String [] entryResultModel ={"EntryResult: word=typeDecl/C/CDocumentManager, refs={ 1 }"};
 		IEntryResult[] eresults =ind.queryEntries(prefix);
 		
+		assertTrue("Entry Result exists", eresults != null);
+		
 		if (eresults.length != entryResultModel.length)
 			fail("Entry Result length different from model");
 
@@ -296,6 +305,8 @@
 	 ind = indexManager.getIndex(testProjectPath,true,true);
 	 char[] prefix = "typeDecl/".toCharArray();
 	 IEntryResult[] eresults = ind.queryEntries(prefix);
+	 assertTrue("Entry result found for typdeDecl/", eresults != null);
+	 
 	 String [] entryResultBeforeModel ={"EntryResult: word=typeDecl/C/CDocumentManager, refs={ 1 }", "EntryResult: word=typeDecl/C/Mail, refs={ 2 }", "EntryResult: word=typeDecl/C/Unknown, refs={ 2 }", "EntryResult: word=typeDecl/C/container, refs={ 2 }", "EntryResult: word=typeDecl/C/first_class, refs={ 2 }", "EntryResult: word=typeDecl/C/postcard, refs={ 2 }"};
 	 if (eresults.length != entryResultBeforeModel.length)
 			fail("Entry Result length different from model");	
@@ -311,6 +322,8 @@
 	 //See if the index is still there
 	 ind = indexManager.getIndex(testProjectPath,true,true);
 	 eresults = ind.queryEntries(prefix);
+	 assertTrue("Entry exists", eresults != null);
+		
 	 String [] entryResultAfterModel ={"EntryResult: word=typeDecl/C/CDocumentManager, refs={ 1 }"};
 	 if (eresults.length != entryResultAfterModel.length)
 		fail("Entry Result length different from model");
@@ -335,10 +348,12 @@
 		assertTrue("Index exists for project",ind != null);
 	
 		IEntryResult[] typerefreesults = ind.queryEntries(IIndexConstants.TYPE_REF);
+		assertTrue("Type Ref Results exist", typerefreesults != null);
 		
 		String [] typeDeclEntryResultModel ={"EntryResult: word=typeDecl/C/Mail/Y/X/Z, refs={ 1 }","EntryResult: word=typeDecl/C/Unknown/Y/X/Z, refs={ 1 }","EntryResult: word=typeDecl/C/container/Y/X/Z, refs={ 1 }","EntryResult: word=typeDecl/C/first_class/Y/X/Z, refs={ 1 }","EntryResult: word=typeDecl/C/postcard/Y/X/Z, refs={ 1 }","EntryResult: word=typeDecl/E/test/Y/X/Z, refs={ 1 }","EntryResult: word=typeDecl/T/int32, refs={ 1 }", "EntryResult: word=typeDecl/V/PO_Box, refs={ 1 }", "EntryResult: word=typeDecl/V/x, refs={ 1 }", "EntryResult: word=typeDecl/V/x/Z, refs={ 1 }"};
 		IEntryResult[] typedeclresults =ind.queryEntries(IIndexConstants.TYPE_DECL);
-
+		assertTrue("Type Decl Results exist", typedeclresults != null);
+		
 		if (typedeclresults.length != typeDeclEntryResultModel.length)
 			fail("Entry Result length different from model for typeDecl");
 	
@@ -349,6 +364,7 @@
 	
 		String [] typeDefEntryResultModel ={"EntryResult: word=typeDecl/T/int32, refs={ 1 }"};
 		IEntryResult[] typedefresults =ind.queryEntries(IIndexConstants.TYPEDEF_DECL);
+		assertTrue("Type Def Results exist", typedefresults != null);
 		
 		if (typedefresults.length != typeDefEntryResultModel.length)
 					fail("Entry Result length different from model for typeDef");
@@ -360,6 +376,7 @@
 				
 		String [] namespaceResultModel = {"EntryResult: word=namespaceDecl/X/Z, refs={ 1 }", "EntryResult: word=namespaceDecl/Y/X/Z, refs={ 1 }", "EntryResult: word=namespaceDecl/Z, refs={ 1 }"};
 		IEntryResult[] namespaceresults =ind.queryEntries(IIndexConstants.NAMESPACE_DECL);
+		assertTrue("Namespace Results exist", namespaceresults != null);
 		
 		if (namespaceresults.length != namespaceResultModel.length)
 				fail("Entry Result length different from model for namespace");
@@ -371,7 +388,8 @@
 				
 		String [] fieldResultModel = {"EntryResult: word=fieldDecl/array/container/Y/X/Z, refs={ 1 }", "EntryResult: word=fieldDecl/bye/Y/X/Z, refs={ 1 }", "EntryResult: word=fieldDecl/cool/Y/X/Z, refs={ 1 }", "EntryResult: word=fieldDecl/hi/Y/X/Z, refs={ 1 }", "EntryResult: word=fieldDecl/index/container/Y/X/Z, refs={ 1 }", "EntryResult: word=fieldDecl/postage/Mail/Y/X/Z, refs={ 1 }", "EntryResult: word=fieldDecl/sz/container/Y/X/Z, refs={ 1 }", "EntryResult: word=fieldDecl/type/Mail/Y/X/Z, refs={ 1 }", "EntryResult: word=fieldDecl/why/Y/X/Z, refs={ 1 }"};
 		IEntryResult[] fieldresults =ind.queryEntries(IIndexConstants.FIELD_DECL);
-	
+		assertTrue("Field Results exist", fieldresults != null);
+		
 		if (fieldresults.length != fieldResultModel.length)
 				fail("Entry Result length different from model for fieldDecl");
 	
@@ -411,6 +429,7 @@
 									   
 	
 		IEntryResult[] methodresults =ind.queryEntries(IIndexConstants.METHOD_DECL);
+		assertTrue("Entry exists", methodresults != null);
 		
 		if (methodresults.length != methodResultModel.length)
 				fail("Entry Result length different from model for functionDecl");
@@ -436,7 +455,8 @@
 		  
 		  String [] typeRefEntryResultModel ={"EntryResult: word=typeRef/C/C/B/A, refs={ 1 }", "EntryResult: word=typeRef/C/ForwardA/A, refs={ 1 }", "EntryResult: word=typeRef/E/e1/B/A, refs={ 1 }", "EntryResult: word=typeRef/V/x/B/A, refs={ 1 }"};
 		  IEntryResult[] typerefresults = ind.queryEntries(IIndexConstants.TYPE_REF);
-
+		  assertTrue("Entry exists",typerefresults != null);
+		  
 		  if (typerefresults.length != typeRefEntryResultModel.length)
 			  fail("Entry Result length different from model for typeRef");
 	
@@ -447,7 +467,8 @@
 	
 		  String [] funRefEntryResultModel ={"EntryResult: word=functionRef/something/A, refs={ 1 }"};
 		  IEntryResult[] funRefresults = ind.queryEntries(IIndexConstants.FUNCTION_REF);
-		
+		  assertTrue("Entry exists",funRefresults != null);
+		  
 		  if (funRefresults.length != funRefEntryResultModel.length)
 					  fail("Entry Result length different from model for funcRef");
 	
@@ -458,7 +479,8 @@
 				
 		  String [] namespaceRefResultModel = {"EntryResult: word=namespaceRef/A, refs={ 1 }", "EntryResult: word=namespaceRef/B/A, refs={ 1 }"};
 		  IEntryResult[] namespacerefresults = ind.queryEntries(IIndexConstants.NAMESPACE_REF);
-		
+		  assertTrue("Entry exists",namespacerefresults!=null);
+		  
 		  if (namespacerefresults.length != namespaceRefResultModel.length)
 				  fail("Entry Result length different from model for namespaceRef");
 	
@@ -469,7 +491,8 @@
 				
 		  String [] fieldRefResultModel = {"EntryResult: word=fieldRef/y/C/B/A, refs={ 1 }"};
 		  IEntryResult[] fieldrefresults = ind.queryEntries(IIndexConstants.FIELD_REF);
-	
+		  assertTrue("Entry exists",fieldrefresults!=null);
+		  
 		  if (fieldrefresults.length != fieldRefResultModel.length)
 				  fail("Entry Result length different from model for fieldRef");
 	
@@ -480,7 +503,8 @@
 	
 		  String [] methodRefResultModel = {"EntryResult: word=methodRef/bar/C/B/A, refs={ 1 }"};	
 		  IEntryResult[] methodrefresults = ind.queryEntries(IIndexConstants.METHOD_REF);
-		
+		  assertTrue("Entry exists", methodrefresults != null); 
+		   
 		  if (methodrefresults.length != methodRefResultModel.length)
 				  fail("Entry Result length different from model for methodRef");
 	
@@ -505,6 +529,7 @@
 	  assertTrue("Index exists for project",ind != null);
 	
 	  IEntryResult[] macroresults = ind.queryEntries(IIndexConstants.MACRO_DECL);
+	  assertTrue("Entry exists", macroresults != null);
 	  
 	  String [] macroResultModel = {"EntryResult: word=macroDecl/CASE, refs={ 1 }", "EntryResult: word=macroDecl/MAX, refs={ 1 }", "EntryResult: word=macroDecl/PRINT, refs={ 1 }"};
 	   
@@ -570,7 +595,8 @@
 	 assertTrue("Index exists for project",ind != null);
 
 	 IEntryResult[] fwdDclResults = ind.queryEntries("typeDecl/C/ForwardA/A".toCharArray());
-  
+	 assertTrue("Entry exists",fwdDclResults != null);
+	 
 	 String [] fwdDclModel = {"EntryResult: word=typeDecl/C/ForwardA/A, refs={ 1 }"};
 	
 	 if (fwdDclResults.length != fwdDclModel.length)
@@ -582,7 +608,8 @@
 	 }
 
 	IEntryResult[] fwdDclRefResults = ind.queryEntries("typeRef/C/ForwardA/A".toCharArray());
-  
+	assertTrue("Entry exists", fwdDclRefResults!= null);
+	
 	String [] fwdDclRefModel = {"EntryResult: word=typeRef/C/ForwardA/A, refs={ 1 }"};
 
 	if (fwdDclRefResults.length != fwdDclRefModel.length)
Index: resources/indexer/DocumentManager.cpp
===================================================================
RCS file: /home/tools/org.eclipse.cdt.core.tests/resources/indexer/DocumentManager.cpp,v
retrieving revision 1.2
diff -u -r1.2 DocumentManager.cpp
--- resources/indexer/DocumentManager.cpp	26 Aug 2003 19:16:03 -0000	1.2
+++ resources/indexer/DocumentManager.cpp	16 Sep 2003 16:34:36 -0000
@@ -1,5 +1,5 @@
 //#include "StdAfx.h"
-#include "documentmanager.h"
+#include "DocumentManager.h"
 
 CDocumentManager::CDocumentManager(void)
 {

Back to the top