2 * Test functioning of texvc math functions.
5 package com
.piclab
.wikitest
;
6 import com
.meterware
.httpunit
.*;
8 public class MathTest
extends WikiTest
{
10 public String
testName() { return "Math"; }
12 protected int initTest() throws Exception
{
17 protected int runTest() throws Exception
{
20 if ( 0 != ( c
= part1() ) ) { return fail( c
); }
24 private int part1() throws Exception
{
26 "\\(1\\)\\s+<img\\s[^>]*\\salt\\s*=\\s*.?\\\\phi\\s+=\\s+\\\\frac",
27 "\\(2\\)\\s+<img\\s[^>]*\\salt\\s*=\\s*.?\\\\phi\\s+=\\s+\\\\frac",
28 "\\(3\\)\\s+φ\\s+\\+",
29 "\\(4\\)\\s+φ\\s*<sup>\\s*2",
30 "\\(5\\)\\s+<img\\s[^>]*\\salt\\s*=\\s*.?\\\\phi\\s+=\\s+\\\\frac",
31 "\\(6\\)\\s+<img\\s[^>]*\\salt\\s*=\\s*.?\\\\phi\\s+\\\\approx"
34 WebResponse wr
= viewPage( "Equations" );
35 String text
= getArticle( wr
);
38 if ( 0 != ( ret
= checkGoodPatterns( text
, goodpats
) ) ) {
42 wr
= loginAs( "Barney", "Barney" );
43 WebRequest req
= openPrefs();
44 req
.setParameter( "wpMath", "0" );
45 wr
= getResponse( req
);
47 String
[] goodpats0
= {
48 "\\(1\\)\\s+<img\\s[^>]*\\salt\\s*=\\s*.?\\\\phi\\s+=\\s+\\\\frac",
49 "\\(2\\)\\s+<img\\s[^>]*\\salt\\s*=\\s*.?\\\\phi\\s+=\\s+\\\\frac",
50 "\\(3\\)\\s+<img\\s[^>]*\\salt\\s*=\\s*.?\\\\phi\\s+\\+",
51 "\\(4\\)\\s+<img\\s[^>]*\\salt\\s*=\\s*.?\\\\phi\\s*\\^\\s*2",
52 "\\(5\\)\\s+<img\\s[^>]*\\salt\\s*=\\s*.?\\\\phi\\s+=\\s+\\\\frac",
53 "\\(6\\)\\s+<img\\s[^>]*\\salt\\s*=\\s*.?\\\\phi\\s+\\\\approx"
56 wr
= viewPage( "Equations" );
57 text
= getArticle( wr
);
58 if ( 0 != ( ret
= checkGoodPatterns( text
, goodpats0
) ) ) {
62 wr
= loginAs( "Barney", "Barney" );
64 req
.setParameter( "wpMath", "2" );
65 wr
= getResponse( req
);
67 String
[] goodpats2
= {
70 "\\(3\\)\\s+φ\\s+\\+",
71 "\\(4\\)\\s+φ\\s*<sup>\\s*2",
72 "\\(5\\)\\s+<img\\s[^>]*\\salt\\s*=\\s*.?\\\\phi\\s+=\\s+\\\\frac",
73 "\\(6\\)\\s+<img\\s[^>]*\\salt\\s*=\\s*.?\\\\phi\\s+\\\\approx"
76 wr
= viewPage( "Equations" );
77 text
= getArticle( wr
);
78 if ( 0 != ( ret
= checkGoodPatterns( text
, goodpats2
) ) ) {
82 wr
= loginAs( "Barney", "Barney" );
84 req
.setParameter( "wpMath", "3" );
85 wr
= getResponse( req
);
87 String
[] goodpats3
= {
88 "\\(1\\)\\s+\\$\\s+\\\\phi\\s+=\\s+\\\\frac",
89 "\\(2\\)\\s+\\$\\s+\\\\phi\\s+=\\s+\\\\frac",
90 "\\(3\\)\\s+\\$\\s+\\\\phi\\s+\\+\\s+\\\\phi\\s*\\^\\s*2",
91 "\\(4\\)\\s+\\$\\s+\\\\phi\\s*\\^\\s*2\\s+\\+\\s+\\\\phi",
92 "\\(5\\)\\s+\\$\\s+\\\\phi\\s+=\\s+\\\\frac",
93 "\\(6\\)\\s+\\$\\s+\\\\phi\\s+\\\\approx"
96 wr
= viewPage( "Equations" );
97 text
= getArticle( wr
);
98 if ( 0 != ( ret
= checkGoodPatterns( text
, goodpats3
) ) ) {
102 wr
= loginAs( "Barney", "Barney" );
104 req
.setParameter( "wpMath", "4" );
105 wr
= getResponse( req
);
107 String
[] goodpats4
= {
108 "\\(1\\)\\s+<img\\s[^>]*\\salt\\s*=\\s*.?\\\\phi\\s+=\\s+\\\\frac",
109 "\\(2\\)\\s+<img\\s[^>]*\\salt\\s*=\\s*.?\\\\phi\\s+=\\s+\\\\frac",
110 "\\(3\\)\\s+φ\\s+\\+",
111 "\\(4\\)\\s+φ\\s*<sup>\\s*2",
112 "\\(5\\)\\s+<img\\s[^>]*\\salt\\s*=\\s*.?\\\\phi\\s+=\\s+\\\\frac",
113 "\\(6\\)\\s+<img\\s[^>]*\\salt\\s*=\\s*.?\\\\phi\\s+\\\\approx"
116 wr
= viewPage( "Equations" );
117 text
= getArticle( wr
);
118 if ( 0 != ( ret
= checkGoodPatterns( text
, goodpats4
) ) ) {
124 public static void main( String
[] params
) {
125 (new MathTest()).runSingle( params
);