Changeset 3964 for TI01-discovery


Ignore:
Timestamp:
29/05/08 17:35:36 (11 years ago)
Author:
cbyrom
Message:

Extend test suite to include 40+ new tests to properly exercise the
search web services - also add new Test Suite class to wrapper the
unit tests.

Location:
TI01-discovery/branches/ws-Discovery2-upgrade/src/unittests
Files:
1 added
1 edited

Legend:

Unmodified
Added
Removed
  • TI01-discovery/branches/ws-Discovery2-upgrade/src/unittests/ndg/testclient/discovery/DiscoveryServiceClientTest.java

    r3959 r3964  
    22 
    33import static org.junit.Assert.*; 
     4import junit.framework.TestCase; 
    45 
    56import org.junit.AfterClass; 
     
    89 
    910import ndg.services.discovery.DiscoveryServiceSkeleton; 
     11import ndg.services.discovery.Utilities; 
    1012import ndg.testclient.discovery.*; 
    1113 
    12 public class DiscoveryServiceClientTest  
     14public class DiscoveryServiceClientTest 
    1315{ 
    1416        private static DiscoveryServiceClient client = null; 
    15         private static String DOC_NAME_1 = "neodc.nerc.ac.uk__DIF__dataent_11716368890815055.xml"; 
     17        // this is the dummy doc to use for all tests - NB, it is available under resources and should be ingested 
     18        // using the oai_document_ingester.py script as a badc file 
     19        private static String DOC_NAME_1 = "dataent_berlin_DIF.xml"; 
    1620         
    1721 
     
    3034 
    3135        @Test 
    32         public void testRunSearch()  
    33         { 
    34                 String results = client.runSearch(null, "fullText", null, null, null, null, null,  
    35                                 null, null, null, null, null, null, null, null); 
    36                 assertNotNull(results); 
    37         } 
    38  
    39         @Test 
    40         public void testRunPresent()  
     36        public void testRunBasicSearch()  
     37        { 
     38                String results = client.runSearch(null, null, null, null, null, null, null,  
     39                                null, null, null, null, null, null, null, null); 
     40                assertNotNull(results); 
     41                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     42        } 
     43 
     44        @Test 
     45        public void testRunFullTextTermSearch()  
     46        { 
     47                String results = client.runSearch("Radiosonde", "fullText", null, null, null, null, null,  
     48                                null, null, null, null, null, null, null, null); 
     49                assertNotNull(results); 
     50                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     51        } 
     52 
     53        @Test 
     54        public void testEmptyFullTextTermSearch()  
     55        { 
     56                String results = client.runSearch("RadiosondeXXXXXVVVVV", "fullText", null, null, null, null, null,  
     57                                null, null, null, null, null, null, null, null); 
     58                assertNotNull(results); 
     59                assertTrue(results.contains("<urn:status>false</urn:status>")); 
     60        } 
     61 
     62        @Test 
     63        public void testRunAuthorTermSearch()  
     64        { 
     65                String results = client.runSearch("", "author", null, null, null, null, null,  
     66                                null, null, null, null, null, null, null, null); 
     67                assertNotNull(results); 
     68                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     69                fail("Not implemented yet"); 
     70        } 
     71 
     72        @Test 
     73        public void testRunParameterTermSearch()  
     74        { 
     75                String results = client.runSearch("", "parameter", null, null, null, null, null,  
     76                                null, null, null, null, null, null, null, null); 
     77                assertNotNull(results); 
     78                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     79                fail("Not implemented yet"); 
     80        } 
     81 
     82        @Test 
     83        public void testRunWrongTermTypeSearch()  
     84        { 
     85                // NB if no term has been set, the code should ignore doing term searches - so won't care about term type 
     86                String results = client.runSearch(null, "blah", null, null, null, null, null,  
     87                                null, null, null, null, null, null, null, null); 
     88                assertNotNull(results); 
     89                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     90        } 
     91 
     92        @Test 
     93        public void testRunWrongTermTypeSearchWithTerm()  
     94        { 
     95                String results = client.runSearch("blah", "blah", null, null, null, null, null,  
     96                                null, null, null, null, null, null, null, null); 
     97                assertNotNull(results); 
     98                assertTrue(results.contains("<urn:status>false</urn:status>")); 
     99        } 
     100 
     101        @Test 
     102        public void testRunMissingTermTypeSearch()  
     103        { 
     104                // NB, if no term type provided, assume full text search 
     105                String results = client.runSearch("Radiosonde", null, null, null, null, null, null,  
     106                                null, null, null, null, null, null, null, null); 
     107                assertNotNull(results); 
     108                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     109        } 
     110 
     111        @Test 
     112        public void testRunHighStartSearch()  
     113        { 
     114                // NB, this will result in no rows being returned 
     115                String results = client.runSearch(null, null, "100", null, null, null, null,  
     116                                null, null, null, null, null, null, null, null); 
     117                assertNotNull(results); 
     118                assertTrue(results.contains("<urn:status>false</urn:status>")); 
     119        } 
     120 
     121        @Test 
     122        public void testRunNegativeStartSearch()  
     123        { 
     124                String results = client.runSearch(null, null, "-55", null, null, null, null,  
     125                                null, null, null, null, null, null, null, null); 
     126                assertNotNull(results); 
     127                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     128        } 
     129 
     130        @Test 
     131        public void testRunZeroStartSearch()  
     132        { 
     133                String results = client.runSearch(null, null, "0", null, null, null, null,  
     134                                null, null, null, null, null, null, null, null); 
     135                assertNotNull(results); 
     136                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     137        } 
     138 
     139        @Test 
     140        public void testRunZeroStartSearchCompare()  
     141        { 
     142                String results = client.runSearch(null, null, "0", null, null, null, null,  
     143                                null, null, null, null, null, null, null, null); 
     144                assertNotNull(results); 
     145                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     146 
     147                String results1 = client.runSearch(null, null, null, null, null, null, null,  
     148                                null, null, null, null, null, null, null, null); 
     149                assertNotNull(results1); 
     150                assertFalse(results1.contains("<urn:status>false</urn:status>")); 
     151                 
     152                assertSame(Utilities.getSubStringCount("<urn:document>", results),  
     153                                Utilities.getSubStringCount("<urn:document>", results1)); 
     154        } 
     155 
     156        @Test 
     157        public void testRunSmallStartSearch()  
     158        { 
     159                String results = client.runSearch(null, null, "1", null, null, null, null,  
     160                                null, null, null, null, null, null, null, null); 
     161                assertNotNull(results); 
     162                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     163        } 
     164 
     165        @Test 
     166        public void testRunDifferentStartSearch()  
     167        { 
     168                String results = client.runSearch(null, null, null, null, null, null, null,  
     169                                null, null, null, null, null, null, null, null); 
     170                assertNotNull(results); 
     171                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     172 
     173                String results1 = client.runSearch(null, null, "1", null, null, null, null,  
     174                                null, null, null, null, null, null, null, null); 
     175                assertNotNull(results1); 
     176                assertFalse(results1.contains("<urn:status>false</urn:status>")); 
     177                 
     178                assertNotSame(results, results1); 
     179        } 
     180 
     181        @Test 
     182        public void testRunZeroHowManySearch()  
     183        { 
     184                String results = client.runSearch(null, null, null, "0", null, null, null,  
     185                                null, null, null, null, null, null, null, null); 
     186                assertNotNull(results); 
     187                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     188        } 
     189 
     190        @Test 
     191        public void testRunHighHowManySearch()  
     192        { 
     193                String results = client.runSearch(null, null, null, "100", null, null, null,  
     194                                null, null, null, null, null, null, null, null); 
     195                assertNotNull(results); 
     196                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     197        } 
     198 
     199        @Test 
     200        public void testRunNegativeHowManySearch()  
     201        { 
     202                String results = client.runSearch(null, null, null, "-100", null, null, null,  
     203                                null, null, null, null, null, null, null, null); 
     204                assertNotNull(results); 
     205                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     206        } 
     207 
     208        @Test 
     209        public void testRunSmallHowManySearch()  
     210        { 
     211                String results = client.runSearch(null, null, null, "2", null, null, null,  
     212                                null, null, null, null, null, null, null, null); 
     213                assertNotNull(results); 
     214                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     215                 
     216                assertEquals(Utilities.getSubStringCount("<urn:document>", results), 2); 
     217        } 
     218 
     219        @Test 
     220        public void testRunOrderBySearch()  
     221        { 
     222                String results = client.runSearch(null, null, null, null, "original_document_filename", null, null,  
     223                                null, null, null, null, null, null, null, null); 
     224                assertNotNull(results); 
     225                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     226        } 
     227 
     228        @Test 
     229        public void testRunDifferentOrderBySearch()  
     230        { 
     231                String results = client.runSearch(null, null, null, null, "original_document_id", null, null,  
     232                                null, null, null, null, null, null, null, null); 
     233                assertNotNull(results); 
     234                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     235        } 
     236 
     237        @Test 
     238        public void testRunDifferentOrderBySearchAndCompare()  
     239        { 
     240                String results = client.runSearch(null, null, null, null, "original_document_filename", null, null,  
     241                                null, null, null, null, null, null, null, null); 
     242                assertNotNull(results); 
     243                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     244 
     245                String results1 = client.runSearch(null, null, null, null, "original_document_id", null, null,  
     246                                null, null, null, null, null, null, null, null); 
     247                assertNotNull(results1); 
     248                assertFalse(results1.contains("<urn:status>false</urn:status>")); 
     249                 
     250                assertNotSame(results,results1); 
     251        } 
     252 
     253        @Test 
     254        public void testRunWrongOrderBySearch()  
     255        { 
     256                String results = client.runSearch(null, null, null, null, "blah", null, null,  
     257                                null, null, null, null, null, null, null, null); 
     258                assertNotNull(results); 
     259                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     260        } 
     261 
     262        @Test 
     263        public void testRunOrderByDirectionSearch()  
     264        { 
     265                String results = client.runSearch(null, null, null, null, null, "ascending", null,  
     266                                null, null, null, null, null, null, null, null); 
     267                assertNotNull(results); 
     268                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     269        } 
     270 
     271        @Test 
     272        public void testRunOrderByWrongDirectionSearch()  
     273        { 
     274                String results = client.runSearch(null, null, null, null, "original_document_filename", "fred", null,  
     275                                null, null, null, null, null, null, null, null); 
     276                assertNotNull(results); 
     277                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     278        } 
     279 
     280        @Test 
     281        public void testRunOrderByDirectionSearchCompare()  
     282        { 
     283                String results = client.runSearch(null, null, null, null, "original_document_filename", "ascending", null,  
     284                                null, null, null, null, null, null, null, null); 
     285                assertNotNull(results); 
     286                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     287                String results1 = client.runSearch(null, null, null, null, null, null, null,  
     288                                null, null, null, null, null, null, null, null); 
     289                assertNotNull(results1); 
     290                assertFalse(results1.contains("<urn:status>false</urn:status>")); 
     291                assertEquals(results, results1); 
     292        } 
     293 
     294        @Test 
     295        public void testRunOrderByDifferentDirectionSearch()  
     296        { 
     297                String results = client.runSearch(null, null, null, null, "original_document_filename", "descending", null,  
     298                                null, null, null, null, null, null, null, null); 
     299                assertNotNull(results); 
     300                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     301        } 
     302 
     303        @Test 
     304        public void testRunOrderByDifferentDirectionSearchCompare()  
     305        { 
     306                String results = client.runSearch(null, null, null, null, "original_document_filename", "descending", null,  
     307                                null, null, null, null, null, null, null, null); 
     308                assertNotNull(results); 
     309                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     310                String results1 = client.runSearch(null, null, null, null, "original_document_filename", "ascending", null,  
     311                                null, null, null, null, null, null, null, null); 
     312                assertNotNull(results1); 
     313                assertFalse(results1.contains("<urn:status>false</urn:status>")); 
     314                assertNotSame(results, results1); 
     315                 
     316        } 
     317 
     318        @Test 
     319        public void testRunScopeSearch()  
     320        { 
     321                String results = client.runSearch(null, null, null, null, null, null, "",  
     322                                null, null, null, null, null, null, null, null); 
     323                assertNotNull(results); 
     324                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     325        } 
     326 
     327        @Test 
     328        public void testRunWrongScopeSearch()  
     329        { 
     330                String results = client.runSearch(null, null, null, null, null, null, "blah",  
     331                                null, null, null, null, null, null, null, null); 
     332                assertNotNull(results); 
     333                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     334        } 
     335 
     336        @Test 
     337        public void testRunSpatialOperatorSearch()  
     338        { 
     339                String results = client.runSearch(null, null, null, null, null, null, null,  
     340                                "within", null, null, null, null, null, null, null); 
     341                assertNotNull(results); 
     342                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     343        } 
     344 
     345        @Test 
     346        public void testRunSpatialOperatorWithBBoxSearch()  
     347        { 
     348                String results = client.runSearch(null, null, null, null, null, null, null,  
     349                                DiscoveryServiceSkeleton.OVERLAPS_OPERATOR_TYPE, "80", "-80", "-170.", "170.", null, null, null); 
     350                assertNotNull(results); 
     351                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     352        } 
     353 
     354        @Test 
     355        public void testRunDifferentSpatialOperatorWithBBoxSearch()  
     356        { 
     357                String results = client.runSearch(null, null, null, null, null, null, null,  
     358                                DiscoveryServiceSkeleton.NO_OVERLAP_OPERATOR_TYPE, "80", "-80", "-170.", "170.", null, null, null); 
     359                assertNotNull(results); 
     360                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     361        } 
     362 
     363        @Test 
     364        public void testRunDifferentSpatialOperatorWithBBoxSearchCompare()  
     365        { 
     366                String results = client.runSearch(null, null, null, null, null, null, null,  
     367                                DiscoveryServiceSkeleton.OVERLAPS_OPERATOR_TYPE, "80", "-80", "-170.", "170.", null, null, null); 
     368                assertNotNull(results); 
     369                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     370 
     371                String results1 = client.runSearch(null, null, null, null, null, null, null,  
     372                                DiscoveryServiceSkeleton.OVERLAPS_OPERATOR_TYPE, "80", "-80", "-170.", "170.", null, null, null); 
     373                assertNotNull(results1); 
     374                assertFalse(results1.contains("<urn:status>false</urn:status>")); 
     375                 
     376                assertNotSame(results, results1); 
     377        } 
     378 
     379        @Test 
     380        public void testRunBBoxSearch()  
     381        { 
     382                String results = client.runSearch(null, null, null, null, null, null, null,  
     383                                null, "80", "-80", "-170.", "170.", null, null, null); 
     384                assertNotNull(results); 
     385                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     386        } 
     387 
     388        @Test 
     389        public void testRunWrongBBoxSearch()  
     390        { 
     391                String results = client.runSearch(null, null, null, null, null, null, null,  
     392                                null, "-90", "-80", "-170.", "170.", null, null, null); 
     393                assertNotNull(results); 
     394                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     395        } 
     396 
     397        @Test 
     398        public void testRunTemporalOperatorSearch()  
     399        { 
     400                System.out.println("Termporal operator not currently implemented??"); 
     401                String results = client.runSearch(null, null, null, null, null, null, null,  
     402                                null, null, null, null, null, "blah", null, null); 
     403                assertNotNull(results); 
     404                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     405        } 
     406 
     407        @Test 
     408        public void testRunDateRangeSearch()  
     409        { 
     410                String results = client.runSearch(null, null, null, null, null, null, null,  
     411                                null, null, null, null, null, null, "2000-02-02", "2008-02-02"); 
     412                assertNotNull(results); 
     413                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     414        } 
     415 
     416        @Test 
     417        public void testRunInvalidDateRangeSearch()  
     418        { 
     419                String results = client.runSearch(null, null, null, null, null, null, null,  
     420                                null, null, null, null, null, null, "2010-02-02", "2008-02-02"); 
     421                assertNotNull(results); 
     422                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     423        } 
     424 
     425        @Test 
     426        public void testRunNullDateStartRangeSearch()  
     427        { 
     428                String results = client.runSearch(null, null, null, null, null, null, null,  
     429                                null, null, null, null, null, null, null, "2008-02-02"); 
     430                assertNotNull(results); 
     431                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     432        } 
     433 
     434        @Test 
     435        public void testRunNullDateEndRangeSearch()  
     436        { 
     437                String results = client.runSearch(null, null, null, null, null, null, null,  
     438                                null, null, null, null, null, null, "2008-02-02", null); 
     439                assertNotNull(results); 
     440                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     441        } 
     442 
     443        @Test 
     444        public void testRunBasicPresent()  
    41445        { 
    42446                String results = client.runPresent(new String[]{DOC_NAME_1}, null); 
    43447                assertNotNull(results); 
    44         } 
    45  
    46         @Test 
    47         public void testRunGetListNames()  
     448                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     449        } 
     450 
     451        @Test 
     452        public void testRunBasicGetListNames()  
    48453        { 
    49454                String results = client.runGetListNames(); 
    50455                assertNotNull(results); 
    51         } 
    52  
    53         @Test 
    54         public void testRunGetList()  
     456                assertFalse(results.contains("<urn:status>false</urn:status>")); 
     457        } 
     458 
     459        @Test 
     460        public void testRunBasicGetList()  
    55461        { 
    56462                String results = client.runGetList(DiscoveryServiceSkeleton.LIST_NAMES[0]); 
    57463                assertNotNull(results); 
     464                assertFalse(results.contains("<urn:status>false</urn:status>")); 
    58465        } 
    59466 
Note: See TracChangeset for help on using the changeset viewer.