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

📄 tagtestertest.java

📁 Wicket一个开发Java Web应用程序框架。它使得开发web应用程序变得容易而轻松。 Wicket利用一个POJO data beans组件使得它可以与任何持久层技术相结合。
💻 JAVA
字号:
/* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements.  See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License.  You may obtain a copy of the License at * *      http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */package org.apache.wicket.util.tester;import junit.framework.TestCase;/** * Test of TagTester */public class TagTesterTest extends TestCase{	/** Mock markup 1 */	public static final String MARKUP_1 = "<p id=\"test\" class=\"class1\"><span class=\"class2\" id=\"test2\">mock</span></p>";	/**	 * Test the static factory method	 */	public void testCreateTagByAttribute()	{		TagTester tester = TagTester.createTagByAttribute(null, null, null);		assertNull(tester);		tester = TagTester.createTagByAttribute("<p id=\"test\">mock</p>", null, null);		assertNull(tester);		tester = TagTester.createTagByAttribute("<p id=\"test\">mock</p>", "id", null);		assertNull(tester);		tester = TagTester.createTagByAttribute("<p id=\"test\">mock</p>", "id", "test");		assertNotNull(tester);	}	/**	 * Test that getName returns the correct tag name.	 */	public void testGetName()	{		TagTester tester = TagTester.createTagByAttribute(MARKUP_1, "id", "test");		assertNotNull(tester);		assertEquals("p", tester.getName());		tester = TagTester.createTagByAttribute(MARKUP_1, "id", "test2");		assertNotNull(tester);		assertEquals("span", tester.getName());	}	/**	 * Test that hasAttribute return true if the tag has the given attribute.	 * 	 * It also tests that the order of the attributes doesn't matter.	 */	public void testHasAttribute()	{		TagTester tester = TagTester.createTagByAttribute(MARKUP_1, "id", "test");		assertNotNull(tester);		assertTrue(tester.hasAttribute("class"));		tester = TagTester.createTagByAttribute(MARKUP_1, "id", "test2");		assertNotNull(tester);		assertTrue(tester.hasAttribute("class"));	}	/**	 * Get attribute should return the value of the attribute.	 * 	 * If the attribute doesn't exist on the tag, the method should return null.	 */	public void testGetAttribute()	{		TagTester tester = TagTester.createTagByAttribute(MARKUP_1, "id", "test");		assertNotNull(tester);		assertEquals("class1", tester.getAttribute("class"));		// Nested		tester = TagTester.createTagByAttribute(MARKUP_1, "id", "test2");		assertNotNull(tester);		assertEquals("class2", tester.getAttribute("class"));		// Case insensitive		tester = TagTester.createTagByAttribute(MARKUP_1, "id", "test2");		assertNotNull(tester);		assertEquals("class2", tester.getAttribute("CLASS"));		// Return null if no attribute		tester = TagTester.createTagByAttribute(MARKUP_1, "id", "test");		assertNotNull(tester);		assertNull(tester.getAttribute("noattribute"));		// Test that an empty attribute is returned as an empty string		tester = TagTester.createTagByAttribute("<p id=\"test\" empty=\"\">Mock</p>", "id", "test");		assertNotNull(tester);		assertEquals("", tester.getAttribute("empty"));	}	/**	 * getAttributeContains should only return true if the attribute value contains the expected	 * value. It should not be case in-sensitive and not trim the attribute value.	 */	public void testGetAttributeContains()	{		TagTester tester = TagTester.createTagByAttribute(MARKUP_1, "id", "test");		assertNotNull(tester);		assertTrue(tester.getAttributeContains("class", "ss1"));		assertTrue(tester.getAttributeContains("class", "clas"));		assertTrue(tester.getAttributeContains("class", "s"));		assertTrue(tester.getAttributeContains("class", "1"));		assertTrue(tester.getAttributeContains("CLASS", "1"));		assertFalse(tester.getAttributeContains("class", "classs"));		assertFalse(tester.getAttributeContains("class", "CLASS"));		assertFalse(tester.getAttributeContains("class", "cLass1"));		assertFalse(tester.getAttributeContains("class", "class1 "));		assertFalse(tester.getAttributeContains("class", " class1"));	}	/**	 * Test the convenience method getAttributeIs, which returns true if the attributes value is	 * exactly the same as the parameter.	 */	public void testGetAttributeIs()	{		TagTester tester = TagTester.createTagByAttribute(MARKUP_1, "id", "test");		assertNotNull(tester);		assertTrue(tester.getAttributeIs("class", "class1"));		assertFalse(tester.getAttributeIs("class", "class1 "));		assertFalse(tester.getAttributeIs("class", " class1"));		assertFalse(tester.getAttributeIs("class", "Class1"));		assertTrue(tester.getAttributeIs("noattribute", null));		assertFalse(tester.getAttributeIs("noattribute", "somevalue"));		assertFalse(tester.getAttributeIs("class", null));	}	/**	 * getAttributeEndsWith behaves the same as getAttributeContains, but the parameter which should	 * be contained must only be at the end.	 */	public void testGetAttributeEndsWith()	{		TagTester tester = TagTester.createTagByAttribute(MARKUP_1, "id", "test");		assertNotNull(tester);		assertTrue(tester.getAttributeEndsWith("class", "1"));		assertTrue(tester.getAttributeEndsWith("class", ""));		assertTrue(tester.getAttributeEndsWith("class", "ss1"));		assertTrue(tester.getAttributeEndsWith("class", "lass1"));		assertFalse(tester.getAttributeEndsWith("class", "1 "));		assertFalse(tester.getAttributeEndsWith("class", " "));		assertFalse(tester.getAttributeEndsWith("class", "class 1"));		assertFalse(tester.getAttributeEndsWith("class", "SS1"));	}	/**	 * 	 */	public void testHasChildTag()	{		TagTester tester = TagTester.createTagByAttribute(MARKUP_1, "id", "test");		assertTrue(tester.hasChildTag("span"));		assertTrue(tester.hasChildTag("SPAN"));		assertFalse(tester.hasChildTag("span "));		assertFalse(tester.hasChildTag("p"));		try		{			tester.hasChildTag("");			fail();		}		catch (IllegalArgumentException e)		{			// expected		}		catch (Exception e)		{			fail(e.getMessage());		}		try		{			tester.hasChildTag(null);			fail();		}		catch (IllegalArgumentException e)		{			// expected		}		catch (Exception e)		{			fail(e.getMessage());		}		tester = TagTester.createTagByAttribute("<p id=\"test\">mock</p>", "id", "test");		assertFalse(tester.hasChildTag("span"));		assertFalse(tester.hasChildTag("p"));	}	/**	 * Test getMarkup returns the open-tag + content + close-tag	 */	public void testGetMarkup()	{		TagTester tagTester = TagTester.createTagByAttribute(MARKUP_1, "id", "test2");		assertEquals("<span class=\"class2\" id=\"test2\">mock</span>", tagTester.getMarkup());	}	/**	 * Test getValue returns the data between the open and close tag.	 */	public void testGetValue()	{		TagTester tagTester = TagTester.createTagByAttribute(MARKUP_1, "id", "test2");		assertEquals("mock", tagTester.getValue());		// Check that getValue also returns tags if the content of a tag is containing tags		TagTester tagTester2 = TagTester.createTagByAttribute(MARKUP_1, "id", "test");		assertEquals(tagTester.getMarkup(), tagTester2.getValue());	}}

⌨️ 快捷键说明

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