Ticket #41: test_for_metadata_wasnt_recent_changes.diff
| File test_for_metadata_wasnt_recent_changes.diff, 5.2 KB (added by bob, 3 years ago) |
|---|
-
t/011_recent_changes.t
5 5 if ( scalar @Wiki::Toolkit::TestLib::wiki_info == 0 ) { 6 6 plan skip_all => "no backends configured"; 7 7 } else { 8 plan tests => ( 2 5* scalar @Wiki::Toolkit::TestLib::wiki_info );8 plan tests => ( 28 * scalar @Wiki::Toolkit::TestLib::wiki_info ); 9 9 } 10 10 11 11 my $iterator = Wiki::Toolkit::TestLib->new_wiki_maker; … … 24 24 do_sleep(); 25 25 my $node = "Node1"; 26 26 my %node_data = $wiki->retrieve_node( $node ); 27 $wiki->write_node( $node, @node_data{ qw( content checksum ) },27 $wiki->write_node( $node, "data", @node_data{checksum} , 28 28 { 29 29 username => "Kake", 30 30 edit_type => "Minor tidying", … … 34 34 do_sleep(); 35 35 $node = "Everyone's Favourite Hobby"; 36 36 %node_data = $wiki->retrieve_node( $node ); 37 $wiki->write_node( $node, @node_data{ qw( content checksum )},37 $wiki->write_node( $node, "hobby data", @node_data{checksum}, 38 38 { 39 39 comment => "Test", 40 edit_type => "Normal edit", 40 41 } 41 42 ); 42 43 do_sleep(); 43 44 $node = "Another Node"; 44 45 %node_data = $wiki->retrieve_node( $node ); 45 $wiki->write_node( $node, @node_data{ qw( content checksum )},46 $wiki->write_node( $node, "another node 1", @node_data{checksum}, 46 47 { 47 48 username => "nou", 48 49 comment => "Test", 50 edit_type => "Normal edit", 49 51 } 50 52 ); 51 53 … … 96 98 last_n_changes => 2, 97 99 metadata_is => { username => "Kake" } 98 100 ); 101 102 @nodenames = map { $_->{name} } @nodes; 103 print "# Found nodes: " . join(" ", @nodenames) . "\n"; 99 104 is( scalar @nodes, 1, "metadata_is does constrain the search" ); 100 105 is( $nodes[0]{name}, "Node1", "...correctly" ); 101 106 … … 112 117 last_n_changes => 1, 113 118 metadata_isnt => { edit_type => "Minor tidying" } 114 119 ); 120 @nodenames = map { $_->{name} } @nodes; 121 print "# Found nodes: " . join(" ", @nodenames) . "\n"; 115 122 is( scalar @nodes, 1, 116 123 "metadata_isnt includes nodes where this metadata type isn't set" ); 117 124 is( $nodes[0]{name}, "Another Node", "...correctly" ); … … 132 139 do_sleep(); 133 140 $node = "Another Node"; 134 141 %node_data = $wiki->retrieve_node( $node ); 135 $wiki->write_node( $node, @node_data{ qw( content checksum )},142 $wiki->write_node( $node, "another node 2", @node_data{checksum}, 136 143 { 137 144 username => "Kake", 138 145 comment => "Kake writes the node that nou wrote", … … 141 148 ); 142 149 143 150 @nodes = $wiki->list_recent_changes( days => 1 ); 151 @nodenames = map { $_->{name} } @nodes; 152 print "# Found nodes: " . join(" ", @nodenames) . "\n"; 144 153 is( scalar @nodes, 3, 145 154 "By default each node returned only once however many times changed" ); 146 155 … … 152 161 last_n_changes => 5, 153 162 metadata_was => { username => "nou" } 154 163 ); 164 @nodenames = map { $_->{name} } @nodes; 165 print "# Found nodes: " . join(" ", @nodenames) . "\n"; 155 166 is( scalar @nodes, 1, 156 167 "metadata_was returns nodes whose current version doesn't match" ); 157 168 is( $nodes[0]{name}, "Another Node", "...correctly" ); … … 168 179 edit_type => "Minor tidying", 169 180 }, 170 181 ); 182 @nodenames = map { $_->{name} } @nodes; 183 print "# Found nodes: " . join(" ", @nodenames) . "\n"; 171 184 is( scalar @nodes, 2, 172 185 "metadata_wasnt returns nodes whose current version matches" ); 186 187 # lets add yet another normal edit to check proper display of multple normal edits 188 do_sleep(); 189 $node = "Another Node"; 190 %node_data = $wiki->retrieve_node( $node ); 191 $wiki->write_node( $node, "another node 3", @node_data{checksum}, 192 { 193 username => "bob", 194 comment => "bob writes the node that nou and Kake aready wrote", 195 edit_type => "Normal edit", 196 } 197 ); 198 199 @nodenames = map { $_->{name} } @nodes; 200 print "# Found nodes: " . join(" ", @nodenames) . "\n"; 201 @nodes = $wiki->list_recent_changes( days => 1 ); 202 is( scalar @nodes, 3, 203 "By default each node returned only once however many times changed" ); 204 @nodes = $wiki->list_recent_changes( days => 1, include_all_changes => 1 ); 205 is( scalar @nodes, 5, 206 "...returned more than once when 'include_all_changes' set" ); 207 @nodes = $wiki->list_recent_changes( 208 days => 1, 209 metadata_was => { 210 edit_type => "Normal edit", 211 }, 212 ); 213 @nodenames = map { $_->{name} } @nodes; 214 print "# Found nodes: " . join(" ", @nodenames) . "\n"; 215 is( scalar @nodes, 2, 216 "metadata_was returns nodes whose current version matches" ); 217 173 218 } 174 219 175 220 sub do_sleep {
