⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 textblocktest.java

📁 这是远程web服务调用的一个包,可以将JSP直接作为服务
💻 JAVA
字号:
package com.meterware.httpunit;/******************************************************************************************************************** * $Id: TextBlockTest.java,v 1.4 2004/09/29 17:15:27 russgold Exp $ * * Copyright (c) 2004, Russell Gold * * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated * documentation files (the "Software"), to deal in the Software without restriction, including without limitation * the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and * to permit persons to whom the Software is furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included in all copies or substantial portions * of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO * THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * *******************************************************************************************************************/import junit.framework.TestSuite;import java.io.StringReader;import java.io.BufferedReader;/** * * @author <a href="mailto:russgold@httpunit.org">Russell Gold</a> **/public class TextBlockTest extends HttpUnitTest {    public static void main( String args[] ) {        junit.textui.TestRunner.run( suite() );    }    public static TestSuite suite() {        return new TestSuite( TextBlockTest.class );    }    public TextBlockTest( String name ) {        super( name );    }    public void testParagraphDetection() throws Exception {        defineWebPage( "SimplePage",                        "<p>This has no forms or links since we don't care " +                        "about them</p>" +                        "<p class='comment'>But it does have three paragraphs</p>\n" +                        "<p>Which is what we want to find</p>" );        WebConversation wc = new WebConversation();        WebResponse response = wc.getResponse( getHostPath() + "/SimplePage.html" );        assertEquals( "Number of paragraphs", 3, response.getTextBlocks().length );        assertEquals( "First paragraph", "This has no forms or links since we don't care about them", response.getTextBlocks()[0].getText() );        BlockElement comment = response.getFirstMatchingTextBlock( TextBlock.MATCH_CLASS, "comment" );        assertNotNull( "Did not find a comment paragraph", comment );        assertEquals( "Comment paragraph", "But it does have three paragraphs", comment.getText() );    }    public void testTextConversion() throws Exception {        defineWebPage( "SimplePage",                        "<p>Here is a line<br>followed by another</p>" );        WebConversation wc = new WebConversation();        WebResponse response = wc.getResponse( getHostPath() + "/SimplePage.html" );        BufferedReader br = new BufferedReader( new StringReader( response.getTextBlocks()[0].getText() ) );        assertEquals( "First line", "Here is a line", br.readLine() );        assertEquals( "Second line", "followed by another", br.readLine() );        br.readLine();    }    public void testHeaderDetection() throws Exception {        defineWebPage( "SimplePage",                        "<h1>Here is a section</h1>\n" +                        "with some text" +                        "<h2>A subsection</h2>" +                        "<p>Some more text</p>" );        WebConversation wc = new WebConversation();        WebResponse response = wc.getResponse( getHostPath() + "/SimplePage.html" );        TextBlock header1 = response.getFirstMatchingTextBlock( TextBlock.MATCH_TAG, "H1" );        assertNotNull( "Did not find the H1 header", header1 );        assertEquals( "H1 header", "Here is a section", header1.getText() );        TextBlock header2 = response.getFirstMatchingTextBlock( TextBlock.MATCH_TAG, "h2" );        assertNotNull( "Did not find the h2 header", header2 );        assertEquals( "H2 header", "A subsection", header2.getText() );        assertEquals( "Text under header 1", "with some text", response.getNextTextBlock( header1 ).getText() );    }    public void testEmbeddedLinks() throws Exception {        defineWebPage( "SimplePage",                        "<h1>Here is a section</h1>\n" +                        "<p>with a <a id='httpunit' href='http://httpunit.org'>link to the home page</a></p>"  );        WebConversation wc = new WebConversation();        WebResponse response = wc.getResponse( getHostPath() + "/SimplePage.html" );        BlockElement paragraph = response.getTextBlocks()[1];        assertNotNull( "Did not retrieve any links", paragraph.getLinks() );        assertNotNull( "Did not find the httpunit link", paragraph.getLinkWithID( "httpunit" ) );        assertNull( "Should not have found the httpunit link in the header", response.getTextBlocks()[0].getLinkWithID( "httpunit" ) );        assertNotNull( "Did not find the home page link", paragraph.getFirstMatchingLink( WebLink.MATCH_CONTAINED_TEXT, "home page" ) );        assertEquals( "embedded link url", "http://httpunit.org", paragraph.getLinkWithID( "httpunit" ).getRequest().getURL().toExternalForm() );    }    public void testEmbeddedLists() throws Exception {        defineWebPage( "SimplePage",                        "<h1>Here is a section</h1>\n" +                        "<p id='ordered'><ol><li>One<li>Two<li>Three</ol></p>" +                        "<p id='unordered'><ul><li>Red<li>Green<li>Blue</ul></p>" );        WebConversation wc = new WebConversation();        WebResponse response = wc.getResponse( getHostPath() + "/SimplePage.html" );        TextBlock paragraph1 = (TextBlock) response.getElementWithID( "ordered" );        WebList[] lists = paragraph1.getLists();        assertEquals( "Number of lists found", 1, lists.length);        WebList orderedList = lists[0];        assertEquals( "ordered list type", WebList.ORDERED_LIST, orderedList.getListType() );        assertEquals( "ordered list size", 3, orderedList.getItems().length );        assertEquals( "Second ordered list item", "Two", orderedList.getItems()[1].getText() );        TextBlock paragraph2 = (TextBlock) response.getElementWithID( "unordered" );        lists = paragraph2.getLists();        assertEquals( "Number of lists found", 1, lists.length);        WebList unorderedList = lists[0];        assertEquals( "bullet list type", WebList.BULLET_LIST, unorderedList.getListType() );        assertEquals( "bullet list size", 3, unorderedList.getItems().length );        assertEquals( "First bullet list item", "Red", unorderedList.getItems()[0].getText() );    }    public void ntestFormattingDetection() throws Exception {        String expectedText = "Here is some bold text and some bold italic text";        defineWebPage( "FormattedPage", "<p>Here is some <b>bold</b> text and some <b><i>bold italic</i></b> text</p>" );        WebConversation wc = new WebConversation();        WebResponse response = wc.getResponse( getHostPath() + "/FormattedPage.html" );        TextBlock paragraph = response.getTextBlocks()[0];        assertMatchingSet( "Attributes for word 'bold'", new String[] { "b" }, paragraph.getFormats( expectedText.indexOf( "bold" )));    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -