Ignore:
Timestamp:
06/27/16 18:37:55 (8 years ago)
Author:
nanardon
Message:

Add live test for search_objects()

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/LATMOS-Accounts/live-test/10_sql.t

    r1792 r1793  
    1818    plan skip_all => 'No SQL base defined'; 
    1919} else { 
    20     plan tests => 45; # Number of test 
     20    plan tests => 65; # Number of test 
    2121} 
    2222 
     
    4848} 
    4949 
     50$base->rollback; 
    5051 
    5152{ # test: group 
     
    6263ok(!$base->get_object('group', $oid), "group $oid is actually deleted"); 
    6364} 
     65 
     66$base->rollback; 
    6467 
    6568{ # test: nethost 
     
    8083} 
    8184 
     85$base->rollback; 
     86 
    8287{ # test: netzone 
    8388my $oid = genid(); 
     
    95100} 
    96101 
     102$base->rollback; 
     103 
    97104{ # test employment 
    98105use_ok('LATMOS::Accounts::Bases::Sql::Employment'); 
     
    162169ok($base->delete_object('user', $empUser), "Deleting user $empUser"); 
    163170} 
     171 
     172$base->rollback; 
     173 
     174{  
     175    diag('Testing search'); 
     176  
     177    ok($base->create_c_object('user', 'searchuaa', 
     178        sn => "Lastnamea", 
     179        givenName => "Firstnamea", 
     180        ), "Can create user searchuaa"); 
     181    ok($base->create_c_object('user', 'searchuna', 
     182        sn => "Lastnamea", 
     183        ), "Can create user searchuna"); 
     184    ok($base->create_c_object('user', 'searchuab', 
     185        sn => "Lastnamea", 
     186        givenName => "Firstnameb", 
     187        ), "Can create user searchuab"); 
     188    ok($base->create_c_object('user', 'searchuba', 
     189        sn => "Lastnameb", 
     190        givenName => "Firstnamea", 
     191        ), "Can create user searchuba"); 
     192    ok($base->create_c_object('user', 'searchubb', 
     193        sn => "Lastnameb", 
     194        givenName => "Firstnameb", 
     195        ), "Can create user searchubb"); 
     196    ok($base->create_c_object('group', 'searchga', 
     197            member => [ 'searchuaa', 'searchuba' ], 
     198        ), "Can create group searchga"); 
     199    ok($base->create_c_object('group', 'searchgb', 
     200            member => [ 'searchuab', 'searchuba' ], 
     201        ), "Can create group searchgb"); 
     202 
     203    ok(eq_set( 
     204        [ $base->search_objects('user', 'givenName=Firstnamea') ], 
     205        [ 'searchuaa', 'searchuba' ] 
     206    ), 'Can search on single attribute'); 
     207    ok(eq_set( 
     208        [ $base->search_objects('user', 'givenName=Firstnamea', 
     209            'givenName=Firstnameb') ], 
     210        [ 'searchuaa', 'searchuba', 'searchuab', 'searchubb' ] 
     211    ), 'Can search on single attribute with 2 values'); 
     212    ok(eq_set( 
     213        [ $base->search_objects('user', 'givenName=Firstnamea||Firstnameb') ], 
     214        [ 'searchuaa', 'searchuba', 'searchuab', 'searchubb' ] 
     215    ), 'Can search on single attribute with 2 values using ||'); 
     216    ok(eq_set( 
     217        [ $base->search_objects('user', 'givenName=Firstnamea', 'sn=Lastnamea') ], 
     218        [ 'searchuaa' ] 
     219    ), 'Can search on 2 attributes'); 
     220    ok(eq_set( 
     221        [ $base->search_objects('user', 'givenName=NULL', 'sn=Lastnamea') ], 
     222        [ 'searchuna' ] 
     223    ), 'Can search on NULL attributes'); 
     224    ok(eq_set( 
     225        [ $base->search_objects('user', 'memberOf=searchga&&searchgb') ], 
     226        [ 'searchuba' ], 
     227    ), "Search using && with two values"); 
     228    ok(eq_set( 
     229        [ $base->search_objects('group', 'member.givenName=Firstnameb') ], 
     230        [ 'searchgb' ], 
     231    ), "Search using recursive search"); 
     232    ok(eq_set( 
     233        [ $base->search_objects('user', 'givenName~nameb') ], 
     234        [ 'searchuab', 'searchubb' ] 
     235    ), 'Can search using ~ operator'); 
     236 
     237    ok($base->delete_object('user', 'searchuaa'), "deleting user searchuaa"); 
     238    ok($base->delete_object('user', 'searchuna'), "deleting user searchuna"); 
     239    ok($base->delete_object('user', 'searchuba'), "deleting user searchuba"); 
     240    ok($base->delete_object('user', 'searchuab'), "deleting user searchuab"); 
     241    ok($base->delete_object('user', 'searchubb'), "deleting user searchubb"); 
     242} 
     243 
     244$base->rollback; 
Note: See TracChangeset for help on using the changeset viewer.