KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > htmlparser > tests > tagTests > LabelTagTest


1 // HTMLParser Library $Name: v1_5_20050313 $ - A java-based parser for HTML
2
// http://sourceforge.org/projects/htmlparser
3
// Copyright (C) 2003 Derrick Oswald
4
//
5
// Revision Control Information
6
//
7
// $Source: /cvsroot/htmlparser/htmlparser/src/org/htmlparser/tests/tagTests/LabelTagTest.java,v $
8
// $Author: derrickoswald $
9
// $Date: 2003/12/07 23:41:43 $
10
// $Revision: 1.1 $
11
//
12
// This library is free software; you can redistribute it and/or
13
// modify it under the terms of the GNU Lesser General Public
14
// License as published by the Free Software Foundation; either
15
// version 2.1 of the License, or (at your option) any later version.
16
//
17
// This library is distributed in the hope that it will be useful,
18
// but WITHOUT ANY WARRANTY; without even the implied warranty of
19
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20
// Lesser General Public License for more details.
21
//
22
// You should have received a copy of the GNU Lesser General Public
23
// License along with this library; if not, write to the Free Software
24
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
25
//
26

27 package org.htmlparser.tests.tagTests;
28
29 import java.util.Hashtable JavaDoc;
30
31 import org.htmlparser.tags.LabelTag;
32 import org.htmlparser.tests.ParserTestCase;
33 import org.htmlparser.util.ParserException;
34
35 public class LabelTagTest extends ParserTestCase
36 {
37     static
38     {
39         System.setProperty ("org.htmlparser.tests.tagTests.LabelTagTest", "LabelTagTest");
40     }
41
42     public LabelTagTest (String JavaDoc name)
43     {
44         super(name);
45     }
46     
47     public void testSimpleLabels() throws ParserException
48     {
49         String JavaDoc html = "<label>This is a label tag</label>";
50         createParser(html);
51         parseAndAssertNodeCount(1);
52         assertTrue(node[0] instanceof LabelTag);
53         // check the title node
54
LabelTag labelTag = (LabelTag) node[0];
55         assertEquals("Label","This is a label tag",labelTag.getChildrenHTML());
56         assertEquals("Label","This is a label tag",labelTag.getLabel());
57         assertStringEquals("Label", html, labelTag.toHtml());
58     }
59
60     public void testLabelWithJspTag() throws ParserException {
61         String JavaDoc label = "<label><%=labelValue%></label>";
62         createParser(label);
63         parseAndAssertNodeCount(1);
64         assertTrue(node[0] instanceof LabelTag);
65         // check the title node
66
LabelTag labelTag = (LabelTag) node[0];
67         assertStringEquals("Label",label,labelTag.toHtml());
68     }
69
70     public void testLabelWithOtherTags() throws ParserException
71     {
72         String JavaDoc html = "<label><span>Span within label</span></label>";
73         createParser(html);
74         parseAndAssertNodeCount(1);
75         assertTrue(node[0] instanceof LabelTag);
76         // check the title node
77
LabelTag labelTag = (LabelTag) node[0];
78         assertEquals("Label value","Span within label",labelTag.getLabel());
79         assertStringEquals("Label", html, labelTag.toHtml());
80     }
81
82     public void testLabelWithManyCompositeTags() throws ParserException {
83         String JavaDoc guts = "<span>Jane <b> Doe </b> Smith</span>";
84         String JavaDoc html = "<label>" + guts + "</label>";
85         createParser(html);
86         parseAndAssertNodeCount(1);
87         assertTrue(node[0] instanceof LabelTag);
88         LabelTag labelTag = (LabelTag) node[0];
89         assertEquals("Label value",guts,labelTag.getChildrenHTML());
90         assertEquals("Label value","Jane Doe Smith",labelTag.getLabel());
91         assertStringEquals("Label",html,labelTag.toHtml());
92     }
93
94
95     public void testLabelsID() throws ParserException
96     {
97         String JavaDoc html = "<label>John Doe</label>";
98         createParser(html);
99         parseAndAssertNodeCount(1);
100         assertTrue(node[0] instanceof LabelTag);
101         LabelTag labelTag = (LabelTag) node[0];
102         assertStringEquals("Label", html, labelTag.toHtml());
103         Hashtable JavaDoc attr = labelTag.getAttributes();
104         assertNull("ID",attr.get("id"));
105     }
106
107     public void testNestedLabels() throws ParserException
108     {
109         String JavaDoc label1 = "<label id=\"attr1\">";
110         String JavaDoc label2 = "<label>Jane Doe";
111         createParser(label1 + label2);
112         parseAndAssertNodeCount(2);
113         assertTrue(node[0] instanceof LabelTag);
114         assertTrue(node[1] instanceof LabelTag);
115         LabelTag labelTag = (LabelTag) node[0];
116         assertStringEquals("Label", label1 + "</label>", labelTag.toHtml());
117         labelTag = (LabelTag) node[1];
118         assertStringEquals("Label", label2 + "</label>",labelTag.toHtml());
119         Hashtable JavaDoc attr = labelTag.getAttributes();
120         assertNull("ID",attr.get("id"));
121     }
122
123     public void testNestedLabels2() throws ParserException
124     {
125         String JavaDoc label1 = "<LABEL value=\"Google Search\">Google</LABEL>";
126         String JavaDoc label2 = "<LABEL value=\"AltaVista Search\">AltaVista";
127         String JavaDoc label3 = "<LABEL value=\"Lycos Search\"></LABEL>";
128         String JavaDoc label4 = "<LABEL>Yahoo!</LABEL>";
129         String JavaDoc label5 = "<LABEL>\nHotmail</LABEL>";
130         String JavaDoc label6 = "<LABEL value=\"ICQ Messenger\">";
131         String JavaDoc label7 = "<LABEL>Mailcity\n</LABEL>";
132         String JavaDoc label8 = "<LABEL>\nIndiatimes\n</LABEL>";
133         String JavaDoc label9 = "<LABEL>\nRediff\n</LABEL>";
134         String JavaDoc label10 = "<LABEL>Cricinfo";
135         String JavaDoc label11 = "<LABEL value=\"Microsoft Passport\">";
136         String JavaDoc label12 = "<LABEL value=\"AOL\"><SPAN>AOL</SPAN></LABEL>";
137         String JavaDoc label13 = "<LABEL value=\"Time Warner\">Time <B>Warner <SPAN>AOL </SPAN>Inc.</B>";
138         String JavaDoc testHTML = label1 + label2 + label3 + label4 + label5 + label6
139             + label7 + label8 + label9 + label10 + label11 + label12 + label13;
140         createParser(testHTML);
141         parseAndAssertNodeCount(13);
142         LabelTag LabelTag;
143         LabelTag = (LabelTag) node[0];
144         assertStringEquals("HTML String", label1, LabelTag.toHtml());
145         LabelTag = (LabelTag) node[1];
146         assertStringEquals("HTML String", label2 + "</LABEL>", LabelTag.toHtml());
147         LabelTag = (LabelTag) node[2];
148         assertStringEquals("HTML String", label3, LabelTag.toHtml());
149         LabelTag = (LabelTag) node[3];
150         assertStringEquals("HTML String", label4, LabelTag.toHtml());
151         LabelTag = (LabelTag) node[4];
152         assertStringEquals("HTML String", label5, LabelTag.toHtml());
153         LabelTag = (LabelTag) node[5];
154         assertStringEquals("HTML String", label6 + "</LABEL>",LabelTag.toHtml());
155         LabelTag = (LabelTag) node[6];
156         assertStringEquals("HTML String", label7, LabelTag.toHtml());
157         LabelTag = (LabelTag) node[7];
158         assertStringEquals("HTML String", label8, LabelTag.toHtml());
159         LabelTag = (LabelTag) node[8];
160         assertStringEquals("HTML String", label9, LabelTag.toHtml());
161         LabelTag = (LabelTag) node[9];
162         assertStringEquals("HTML String", label10 + "</LABEL>",LabelTag.toHtml());
163         LabelTag = (LabelTag) node[10];
164         assertStringEquals("HTML String", label11 + "</LABEL>",LabelTag.toHtml());
165         LabelTag = (LabelTag) node[11];
166         assertStringEquals("HTML String", label12, LabelTag.toHtml());
167         LabelTag = (LabelTag) node[12];
168         assertStringEquals("HTML String", label13 + "</LABEL>",LabelTag.toHtml());
169     }
170 }
171
Popular Tags