searchengine/cpix/tsrc/cpixunittest/src/pdftests.cpp
changeset 24 65456528cac2
parent 7 a5fbfefd615f
equal deleted inserted replaced
23:d4d56f5e7c55 24:65456528cac2
    34 #include "itk.h"
    34 #include "itk.h"
    35 
    35 
    36 #include "config.h"
    36 #include "config.h"
    37 #include "testutils.h"
    37 #include "testutils.h"
    38 #include "suggestion.h"
    38 #include "suggestion.h"
    39 #include "std_log_result.h"
    39 
    40 
    40 
    41 const char * PdfDocsToIndex[8] = {
    41 const char * PdfDocsToIndex[8] = {
    42     "c:\\data\\cpixunittestcorpus\\pdf\\ctutor.pdf",
    42     "c:\\data\\cpixunittestcorpus\\pdf\\ctutor.pdf",
    43 	"c:\\data\\cpixunittestcorpus\\pdf\\geology.pdf",
    43 	"c:\\data\\cpixunittestcorpus\\pdf\\geology.pdf",
    44 	"c:\\data\\cpixunittestcorpus\\pdf\\samplepdf.pdf",
    44 	"c:\\data\\cpixunittestcorpus\\pdf\\samplepdf.pdf",
    76     cpix_Analyzer* analyzer = cpix_CreateSimpleAnalyzer(&result); 
    76     cpix_Analyzer* analyzer = cpix_CreateSimpleAnalyzer(&result); 
    77     
    77     
    78     if ( cpix_Failed( &result) ) 
    78     if ( cpix_Failed( &result) ) 
    79         {
    79         {
    80             ITK_PANIC("Analyzer could not be created");
    80             ITK_PANIC("Analyzer could not be created");
    81             assert_failed = 1;
    81             
    82         }
    82         }
    83     
    83     
    84     for (int i = 0; PdfDocsToIndex[i]; i++) 
    84     for (int i = 0; PdfDocsToIndex[i]; i++) 
    85     {
    85     {
    86         util->indexFile( PdfDocsToIndex[i], analyzer, testMgr ); 
    86         util->indexFile( PdfDocsToIndex[i], analyzer, testMgr ); 
    96                                                     analyzer );
    96                                                     analyzer );
    97         if (queryParser == NULL)
    97         if (queryParser == NULL)
    98             {
    98             {
    99                 cpix_Analyzer_destroy( analyzer );
    99                 cpix_Analyzer_destroy( analyzer );
   100                 ITK_PANIC("Could not create query parser");
   100                 ITK_PANIC("Could not create query parser");
   101                 assert_failed = 1;
   101                 
   102             }
   102             }
   103         
   103         
   104         std::wostringstream queryString;
   104 
   105         queryString<<L"adobe";
   105         cpix_Query* query = cpix_QueryParser_parse(queryParser,PdfSearchParameters[i]);
   106         cpix_Query* query = cpix_QueryParser_parse(queryParser,
       
   107                                                    queryString.str().c_str());
       
   108         if (cpix_Failed(queryParser)
   106         if (cpix_Failed(queryParser)
   109             || query == NULL)
   107             || query == NULL)
   110             {
   108             {
   111                 cpix_Analyzer_destroy(analyzer);
   109                 cpix_Analyzer_destroy(analyzer);
   112                 cpix_ClearError(queryParser);
   110                 cpix_ClearError(queryParser);
   113                 cpix_QueryParser_destroy(queryParser);
   111                 cpix_QueryParser_destroy(queryParser);
   114                 ITK_PANIC("Could not parse query string");
   112                 ITK_PANIC("Could not parse query string");
   115                 assert_failed = 1;
   113        
   116             }
   114             }
   117        
   115        
   118         cpix_Hits
   116         cpix_Hits
   119             * hits = cpix_IdxDb_search(util->idxDb(),
   117             * hits = cpix_IdxDb_search(util->idxDb(),
   120                                        query );
   118                                        query );
   121         
   119         
   122         int32_t hitsLength = cpix_Hits_length(hits);
   120         int32_t hitsLength = cpix_Hits_length(hits);
   123                  
   121                  
   124         wprintf(L"Results for %S:\n", PdfSearchParameters[i]);
   122         wprintf(L"Results for %S, and the hit len is : %d\n", PdfSearchParameters[i], hitsLength);
   125         
   123         
   126         Suggestion::printSuggestions(hits,
       
   127                                      testMgr);        
       
   128         printf("\n"); 
       
   129         
   124         
   130         cpix_Analyzer_destroy(analyzer);
       
   131         cpix_Hits_destroy( hits );
   125         cpix_Hits_destroy( hits );
   132         cpix_Query_destroy( query );
   126         cpix_Query_destroy( query );
   133         cpix_QueryParser_destroy(queryParser);
   127         cpix_QueryParser_destroy(queryParser);
   134         
   128         
   135     }
   129     }
       
   130     cpix_Analyzer_destroy(analyzer);
   136 
   131 
   137 }
   132 }
   138 // int32_t hitsLength = cpix_Hits_length(hits);
   133 // int32_t hitsLength = cpix_Hits_length(hits);
   139 void CreateSimplePdfSearch(Itk::TestMgr * testMgr) 
   134 void CreateSimplePdfSearch(Itk::TestMgr * testMgr) 
   140 {
   135 {
   141     char *xml_file = (char*)__FUNCTION__;
   136     
   142     assert_failed = 0;
       
   143     pdfTestAppclassFilteredTermSearch(testMgr, LPDFAPPCLASS);
   137     pdfTestAppclassFilteredTermSearch(testMgr, LPDFAPPCLASS);
   144     testResultXml(xml_file);
   138    
   145 }
   139 }
   146 
   140 
   147 
   141 
   148 Itk::TesterBase * CreatePdfSearchTests()
   142 Itk::TesterBase * CreatePdfSearchTests()
   149 {
   143 {