notloggedin
[mediawiki.git] / testsuite / src / com / piclab / wikitest / UploadTest.java
blob9c7bb724a2f109765d35ae64b0178c663f228503
2 /*
3 * Test image uploading and linking.
4 */
6 package com.piclab.wikitest;
7 import com.meterware.httpunit.*;
9 public class UploadTest extends WikiTest {
11 public String testName() { return "Uploads"; }
13 protected int initTest() throws Exception {
14 logout();
15 return 0;
18 protected int runTest() throws Exception {
19 int c = 0;
21 if ( 0 != ( c = part1() ) ) { return fail( c ); }
22 if ( 0 != ( c = part2() ) ) { return fail( c ); }
23 return 0;
26 private int part1() throws Exception {
27 WebResponse wr = getResponse( viewUrl( "Special:Upload" ) );
28 String text = getArticle( wr );
30 String[] goodpats = { "<h1[^>]*>Not logged in</h1>" };
31 int c = 0;
33 if ( 0 != ( c = checkGoodPatterns( text, goodpats ) ) ) {
34 return 100 + c;
36 wr = loginAs( "Fred", "Fred" );
37 wr = viewPage( "Special:Upload" );
38 text = getArticle( wr );
40 String[] goodpats2 = {
41 "<h1[^>]*>Upload file</h1>", ">image use policy<", ">upload log<"
43 if ( 0 != ( c = checkGoodPatterns( text, goodpats2 ) ) ) {
44 return 110 + c;
47 WebForm wf = getFormByName( wr, "upload" );
48 WebRequest req = wf.getRequest( "wpUpload" );
50 req.selectFile( "wpUploadFile", new java.io.File( "./data/startrek.png" ) );
51 req.setParameter( "wpUploadDescription", "Upload test" );
53 wr = getResponse( req );
54 text = getArticle( wr );
56 String[] goodpats3 = {
57 "<h1[^>]*>Upload error</h1>", "You must affirm"
59 if ( 0 != ( c = checkGoodPatterns( text, goodpats2 ) ) ) {
60 return 120 + c;
63 wr = viewPage( "Special:Upload" );
64 text = getArticle( wr );
66 wf = getFormByName( wr, "upload" );
67 req = wf.getRequest( "wpUpload" );
68 req.selectFile( "wpUploadFile", new java.io.File( "./data/startrek.png" ) );
69 req.setParameter( "wpUploadDescription", "Upload test" );
70 req.setParameter( "wpUploadAffirm", "1" );
72 wr = getResponse( req );
73 text = getArticle( wr );
75 String[] goodpats4 = {
76 "uploaded successfully", "description page"
78 if ( 0 != ( c = checkGoodPatterns( text, goodpats4 ) ) ) {
79 return 130 + c;
82 return 0;
85 private int part2() throws Exception {
86 return 0;
89 public static void main( String[] params ) {
90 (new UploadTest()).runSingle( params );