git-remote-mediawiki: support for uploading file in test environment

This will be used for testing git-remote-mediawiki's import feature on a wiki containing media files. Signed-off-by: Simon CATHEBRAS <Simon.Cathebras@ensimag.imag.fr> Signed-off-by: Julien KHAYAT <Julien.Khayat@ensimag.imag.fr> Signed-off-by: Simon Perrat <simon.perrat@ensimag.imag.fr> Signed-off-by: Charles ROUSSEL <Charles.Roussel@ensimag.imag.fr> Signed-off-by: Guillaume SASDY <Guillaume.Sasdy@ensimag.imag.fr> Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Matthieu Moy committed Jul 6, 2012 at 12:03 UTC eb63bfaadf8d4f43c19c0384c45a9718acd85e66
3 files changed +21 -1
contrib/mw-to-git/t/install-wiki/LocalSettings.php
+2 -1
@@ -67,9 +67,10 @@ $wgMemCachedServers = array();
67
68 ## To enable image uploads, make sure the 'images' directory
69 ## is writable, then set this to true:
70 -$wgEnableUploads = false;
70 +$wgEnableUploads = true;
71 $wgUseImageMagick = true;
72 $wgImageMagickConvertCommand ="@CONVERT@";
73 +$wgFileExtensions[] = 'txt';
74
75 # InstantCommons allows wiki to use images from http://commons.wikimedia.org
76 $wgUseInstantCommons = false;
contrib/mw-to-git/t/test-gitmw-lib.sh
+3
@@ -26,6 +26,9 @@ else
26 WIKI_DIR_INST="$CURR_DIR/$WEB_WWW"
27 fi
28
29 +wiki_upload_file () {
30 + "$CURR_DIR"/test-gitmw.pl upload_file "$@"
31 +}
32
33 wiki_getpage () {
34 "$CURR_DIR"/test-gitmw.pl get_page "$@"
contrib/mw-to-git/t/test-gitmw.pl
+16
@@ -193,6 +193,21 @@ sub wiki_getallpagename {
193 }
194 }
195
196 +sub wiki_upload_file {
197 + my $file_name = $_[0];
198 + my $resultat = $mw->edit ( {
199 + action => 'upload',
200 + filename => $file_name,
201 + comment => 'upload a file',
202 + file => [ $file_name ],
203 + ignorewarnings=>1,
204 + }, {
205 + skip_encoding => 1
206 + } ) || die $mw->{error}->{code} . ' : ' . $mw->{error}->{details};
207 +}
208 +
209 +
210 +
211 # Main part of this script: parse the command line arguments
212 # and select which function to execute
213 my $fct_to_call = shift;
@@ -200,6 +215,7 @@ my $fct_to_call = shift;
215 wiki_login($wiki_admin, $wiki_admin_pass);
216
217 my %functions_to_call = qw(
218 + upload_file wiki_upload_file
219 get_page wiki_getpage
220 delete_page wiki_delete_page
221 edit_page wiki_editpage