1
package junit.test.parser.svg.parsers;
3
import java.awt.geom.Point2D;
4
import java.text.ParseException;
6
import junit.test.parser.TestCodeParser;
7
import latexDraw.parsers.svg.parsers.SVGPointsParser;
9
import org.junit.Before;
11
public class TestSVGPointsParser extends TestCodeParser
17
parser = new SVGPointsParser("");
18
parser2 = new SVGPointsParser("");
24
public void testParse()
27
parser.setCode(" 1, 2, \t 3\n 4 \r ,5 6 \n \t ");
29
assertNotNull(((SVGPointsParser)parser).getPoints());
30
assertEquals(((SVGPointsParser)parser).getPoints().firstElement(), new Point2D.Double(1., 2.));
31
assertEquals(((SVGPointsParser)parser).getPoints().elementAt(1), new Point2D.Double(3., 4.));
32
assertEquals(((SVGPointsParser)parser).getPoints().lastElement(), new Point2D.Double(5., 6.));
34
catch(ParseException e) { fail(); }
37
parser.setCode("dsf");
39
}catch(ParseException e) { /* */ }
42
parser.setCode("10 10 10");
44
}catch(ParseException e) { /* */ }
47
parser.setCode("10,, 10 10 10");
49
}catch(ParseException e) { /* */ }
51
parser.setCode(",10 10 10 10");
53
}catch(ParseException e) { /* */ }
55
parser.setCode("10 10 10,");
57
}catch(ParseException e) { /* */ }
59
parser.setCode("10 10 aa 10");
61
}catch(ParseException e) { /* */ }
63
parser.setCode("10 10 10e 10");
65
}catch(ParseException e) { /* */ }
67
parser.setCode("10 10E 10 10");
69
}catch(ParseException e) { /* */ }
73
public void testSkipComment()
75
// No comment allowed.
79
public void testSkipWSP()
81
parser.setCode(" \r \t \n 10 10");
83
assertEquals(parser.getChar(), '1');
87
public void testIsWSP()
89
parser.setCode(" \r\t\na");
90
assertTrue(parser.isWSP());
92
assertTrue(parser.isWSP());
94
assertTrue(parser.isWSP());
96
assertTrue(parser.isWSP());
98
assertFalse(parser.isWSP());
100
assertFalse(parser.isWSP());
104
public void testSkipWSPComma()
106
parser.setCode(" \r , \t \n 10 10");
107
((SVGPointsParser)parser).skipWSPComma();
108
assertEquals(parser.getChar(), '1');
109
parser.setCode(" \r , \t \n , 10 10");
110
((SVGPointsParser)parser).skipWSPComma();
111
assertEquals(parser.getChar(), ',');
115
public void testReadNumber()
117
SVGPointsParser p = (SVGPointsParser)parser;
121
assertEquals(p.readNumber(), 10.);
123
assertEquals(p.readNumber(), 10.);
125
assertEquals(p.readNumber(), -10.);
127
assertEquals(p.readNumber(), -10.);
129
assertEquals(p.readNumber(), -.1);
131
assertEquals(p.readNumber(), 1000.);
133
assertEquals(p.readNumber(), 0.1);
135
assertEquals(p.readNumber(), 1000.);
137
assertEquals(p.readNumber(), 1000.);
139
assertEquals(p.readNumber(), 0.1);
141
assertEquals(p.readNumber(), 1000.);
143
assertEquals(p.readNumber(), 0.);
145
catch(ParseException e) { e.printStackTrace(); fail(); }
149
assertEquals(p.readNumber(), 0.);
150
} catch(ParseException e) { /* */}
153
assertEquals(p.readNumber(), 0.);
154
} catch(ParseException e) { /* */}
157
assertEquals(p.readNumber(), 0.);
158
} catch(ParseException e) { /* */}
161
assertEquals(p.readNumber(), 0.);
162
} catch(ParseException e) { /* */}
165
assertEquals(p.readNumber(), 0.);
166
} catch(ParseException e) { /* */}
169
assertEquals(p.readNumber(), 0.);
170
} catch(ParseException e) { /* */}
173
assertEquals(p.readNumber(), 0.);
174
} catch(ParseException e) { /* */}
177
assertEquals(p.readNumber(), 0.);
178
} catch(ParseException e) { /* */}
182
public void testGetPoints()
185
parser.setCode(" 1, 2,3 4 5,6");
187
assertNotNull(((SVGPointsParser)parser).getPoints());
188
assertEquals(((SVGPointsParser)parser).getPoints().firstElement(), new Point2D.Double(1., 2.));
189
assertEquals(((SVGPointsParser)parser).getPoints().elementAt(1), new Point2D.Double(3., 4.));
190
assertEquals(((SVGPointsParser)parser).getPoints().lastElement(), new Point2D.Double(5., 6.));
192
catch(ParseException e) { fail(); }