Show
Ignore:
Timestamp:
05/18/06 18:31:30 (6 years ago)
Author:
nick
Message:

Finish list_node_all_versions support and tests

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • wiki-toolkit/trunk/t/025_list_node_all_versions.t

    r299 r300  
    66    plan skip_all => "no backends configured"; 
    77} else { 
    8     plan tests => ( 22 * scalar @Wiki::Toolkit::TestLib::wiki_info ); 
     8    plan tests => ( 56 * scalar @Wiki::Toolkit::TestLib::wiki_info ); 
    99} 
    1010 
     
    6666        is( $all_versions[3]->{'content'}, "content", "right node" ); 
    6767 
    68         # With metadata 
     68 
     69        # With metadata, but not content 
     70        @all_versions = $wiki->list_node_all_versions( 
     71                                                                name => "Cheese", 
     72                                                                with_content => 0, 
     73                                                                with_metadata => 1 
     74        ); 
     75 
     76        is( scalar @all_versions, 4, "list_node_all_versions gives the right number back" ); 
     77 
     78        # Check them 
     79        is( $all_versions[0]->{'version'}, 4, "right ordering" ); 
     80        is( $all_versions[1]->{'version'}, 3, "right ordering" ); 
     81        is( $all_versions[2]->{'version'}, 2, "right ordering" ); 
     82        is( $all_versions[3]->{'version'}, 1, "right ordering" ); 
     83        is( $all_versions[0]->{'name'}, "Cheese", "right node" ); 
     84        is( $all_versions[1]->{'name'}, "Cheese", "right node" ); 
     85        is( $all_versions[2]->{'name'}, "Cheese", "right node" ); 
     86        is( $all_versions[3]->{'name'}, "Cheese", "right node" ); 
     87        is( $all_versions[0]->{'content'}, undef, "right node" ); 
     88        is( $all_versions[1]->{'content'}, undef, "right node" ); 
     89        is( $all_versions[2]->{'content'}, undef, "right node" ); 
     90        is( $all_versions[3]->{'content'}, undef, "right node" ); 
     91 
     92        my %md_1 = (); 
     93        my %md_2 = (foo=>'bar'); 
     94        my %md_3 = (foo=>'bar',bar=>'foo'); 
     95        my %md_4 = (); 
     96 
     97        is_deeply( $all_versions[0]->{'metadata'}, \%md_4, "right metadata" ); 
     98        is_deeply( $all_versions[1]->{'metadata'}, \%md_3, "right metadata" ); 
     99        is_deeply( $all_versions[2]->{'metadata'}, \%md_2, "right metadata" ); 
     100        is_deeply( $all_versions[3]->{'metadata'}, \%md_1, "right metadata" ); 
     101 
    69102 
    70103        # With both 
    71     #is_deeply( [sort @all_nodes], [ qw( Carrots Cheese Handbags ) ], 
    72     #           "...and the right ones, too" ); 
     104        @all_versions = $wiki->list_node_all_versions( 
     105                                                                name => "Cheese", 
     106                                                                with_content => 1, 
     107                                                                with_metadata => 1 
     108        ); 
     109 
     110        is( scalar @all_versions, 4, "list_node_all_versions gives the right number back" ); 
     111 
     112        # Check them 
     113        is( $all_versions[0]->{'version'}, 4, "right ordering" ); 
     114        is( $all_versions[1]->{'version'}, 3, "right ordering" ); 
     115        is( $all_versions[2]->{'version'}, 2, "right ordering" ); 
     116        is( $all_versions[3]->{'version'}, 1, "right ordering" ); 
     117        is( $all_versions[0]->{'name'}, "Cheese", "right node" ); 
     118        is( $all_versions[1]->{'name'}, "Cheese", "right node" ); 
     119        is( $all_versions[2]->{'name'}, "Cheese", "right node" ); 
     120        is( $all_versions[3]->{'name'}, "Cheese", "right node" ); 
     121        is( $all_versions[0]->{'content'}, "Content v4", "right node" ); 
     122        is( $all_versions[1]->{'content'}, "Content v3", "right node" ); 
     123        is( $all_versions[2]->{'content'}, "Content v2", "right node" ); 
     124        is( $all_versions[3]->{'content'}, "content", "right node" ); 
     125 
     126        is_deeply( $all_versions[0]->{'metadata'}, \%md_4, "right metadata" ); 
     127        is_deeply( $all_versions[1]->{'metadata'}, \%md_3, "right metadata" ); 
     128        is_deeply( $all_versions[2]->{'metadata'}, \%md_2, "right metadata" ); 
     129        is_deeply( $all_versions[3]->{'metadata'}, \%md_1, "right metadata" ); 
    73130} 
    74131