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

📄 wickettester.java

📁 Wicket一个开发Java Web应用程序框架。它使得开发web应用程序变得容易而轻松。 Wicket利用一个POJO data beans组件使得它可以与任何持久层技术相结合。
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
		this(application, null);	}	/**	 * Creates a <code>WicketTester</code> to help unit testing.	 * 	 * @param application	 *            a <code>WicketTester</code> <code>WebApplication</code> object	 * @param path	 *            the absolute path on disk to the web application's contents (e.g. war root) - may	 *            be <code>null</code>	 * 	 * @see org.apache.wicket.protocol.http.MockWebApplication#MockWebApplication(	 *      org.apache.wicket.protocol.http.WebApplication, String)	 */	public WicketTester(final WebApplication application, final String path)	{		super(application, path);		// We need to turn this on for unit testing so that url encoding will be		// done on sorted maps of parameters and they will string compare		UnitTestSettings.setSortUrlParameters(true);	}	/**	 * Asserts that the Ajax location header is present.	 */	public void assertAjaxLocation()	{		if (null != ((MockHttpServletResponse)getWicketResponse().getHttpServletResponse()).getRedirectLocation())		{			throw new AssertionFailedError(				"Location header should *not* be present when using Ajax");		}		String ajaxLocation = ((MockHttpServletResponse)getWicketResponse().getHttpServletResponse()).getHeader("Ajax-Location");		if (null == ajaxLocation)		{			throw new AssertionFailedError("Ajax-Location header should be present when using Ajax");		}		int statusCode = ((MockHttpServletResponse)getWicketResponse().getHttpServletResponse()).getStatus();		if (statusCode != 200)		{			throw new AssertionFailedError("Expected HTTP status code to be 200 (OK)");		}	}	/**	 * Asserts a <code>Component</code> class.	 * 	 * @param path	 *            path to <code>Component</code>	 * @param expectedComponentClass	 *            expected <code>Component</code> class	 */	public void assertComponent(String path, Class expectedComponentClass)	{		assertResult(isComponent(path, expectedComponentClass));	}	/**	 * Tests that a <code>Component</code> has been added to a <code>AjaxRequestTarget</code>,	 * using {@link AjaxRequestTarget#addComponent(Component)}. This method actually tests that a	 * <code>Component</code> is on the Ajax response sent back to the client.	 * <p>	 * PLEASE NOTE! This method doesn't actually insert the <code>Component</code> in the client	 * DOM tree, using Javascript. But it shouldn't be needed because you just have to trust that	 * Wicket Ajax Javascript works.	 * 	 * @param component	 *            a <code>Component</code> to be tested	 */	public void assertComponentOnAjaxResponse(Component component)	{		Result result = isComponentOnAjaxResponse(component);		assertResult(result);	}	/**	 * Tests that a <code>Component</code> has been added to a <code>AjaxRequestTarget</code>,	 * using {@link AjaxRequestTarget#addComponent(Component)}. This method actually tests that a	 * <code>Component</code> is on the Ajax response sent back to the client.	 * <p>	 * PLEASE NOTE! This method doesn't actually insert the <code>Component</code> in the client	 * DOM tree, using Javascript. But it shouldn't be needed because you just have to trust that	 * Wicket Ajax Javascript works.	 * 	 * @param componentPath	 *            a <code>Component</code> path to test	 */	public void assertComponentOnAjaxResponse(String componentPath)	{		assertComponentOnAjaxResponse(getComponentFromLastRenderedPage(componentPath));	}	/**	 * Asserts the content of last rendered page contains (matches) a given regex pattern.	 * 	 * @param pattern	 *            a reqex pattern to match	 */	public void assertContains(String pattern)	{		assertResult(ifContains(pattern));	}	/**	 * Asserts error-level feedback messages.	 * 	 * @param expectedErrorMessages	 *            expected error messages	 */	public void assertErrorMessages(String[] expectedErrorMessages)	{		List actualMessages = getMessages(FeedbackMessage.ERROR);		List msgs = new ArrayList();		for (Iterator iterator = actualMessages.iterator(); iterator.hasNext();)		{			msgs.add(iterator.next().toString());		}		WicketTesterHelper.assertEquals(Arrays.asList(expectedErrorMessages), msgs);	}	/**	 * Assert info-level feedback messages.	 * 	 * @param expectedInfoMessages	 *            expected info messages	 */	public void assertInfoMessages(String[] expectedInfoMessages)	{		List actualMessages = getMessages(FeedbackMessage.INFO);		WicketTesterHelper.assertEquals(Arrays.asList(expectedInfoMessages), actualMessages);	}	/**	 * Asserts that a <code>Component</code> is invisible.	 * 	 * @param path	 *            path to <code>Component</code>	 */	public void assertInvisible(String path)	{		assertResult(isInvisible(path));	}	/**	 * Asserts the text of a <code>Label</code> <code>Component</code>.	 * 	 * @param path	 *            path to <code>Label</code> <code>Component</code>	 * @param expectedLabelText	 *            expected text of the <code>Label</code>	 */	public void assertLabel(String path, String expectedLabelText)	{		Label label = (Label)getComponentFromLastRenderedPage(path);		Assert.assertEquals(expectedLabelText, label.getModelObjectAsString());	}	/**	 * Asserts the model value of a component.	 * 	 * @param path	 *            path to the component on the page	 * @param expectedValue	 *            expected value of the component's model	 */	public void assertModelValue(String path, Object expectedValue)	{		Component component = getComponentFromLastRenderedPage(path);		Assert.assertEquals(expectedValue, component.getModelObject());	}	/**	 * Asserts the model of a {@link ListView}.	 * 	 * @param path	 *            path to a {@link ListView} <code>Component</code>	 * @param expectedList	 *            expected <code>List</code> in the model of the given {@link ListView}	 */	public void assertListView(String path, List expectedList)	{		ListView listView = (ListView)getComponentFromLastRenderedPage(path);		WicketTesterHelper.assertEquals(expectedList, listView.getList());	}	/**	 * Asserts no error-level feedback messages.	 */	public void assertNoErrorMessage()	{		List messages = getMessages(FeedbackMessage.ERROR);		Assert.assertTrue("expect no error message, but contains\n" +			WicketTesterHelper.asLined(messages), messages.isEmpty());	}	/**	 * Asserts no info-level feedback messages.	 */	public void assertNoInfoMessage()	{		List messages = getMessages(FeedbackMessage.INFO);		Assert.assertTrue("expect no info message, but contains\n" +			WicketTesterHelper.asLined(messages), messages.isEmpty());	}	/**	 * Asserts a <code>PageLink</code> link to a <code>Page</code> class.	 * 	 * @param path	 *            path to <code>PageLink</code> <code>Component</code>	 * @param expectedPageClass	 *            expected <code>Page</code> class to link	 */	public void assertPageLink(String path, Class expectedPageClass)	{		assertResult(isPageLink(path, expectedPageClass));	}	/**	 * Asserts a last-rendered <code>Page</code> class.	 * 	 * @param expectedRenderedPageClass	 *            expected class of last rendered <code>Page</code>	 */	public void assertRenderedPage(Class expectedRenderedPageClass)	{		assertResult(isRenderedPage(expectedRenderedPageClass));	}	/**	 * Asserts last-rendered <code>Page</code> against an expected HTML document.	 * <p>	 * Use <code>-Dwicket.replace.expected.results=true</code> to automatically replace the	 * expected output file.	 * 	 * @param clazz	 *            <code>Class</code> used to load the file (relative to <code>clazz</code>	 *            package)	 * @param filename	 *            expected output filename <code>String</code>	 * @throws Exception	 */	public void assertResultPage(final Class clazz, final String filename) throws Exception	{		String document = getServletResponse().getDocument();		setupRequestAndResponse();		DiffUtil.validatePage(document, clazz, filename, true);	}	/**	 * Asserts last-rendered <code>Page</code> against an expected HTML document as a	 * <code>String</code>	 * 	 * @param expectedDocument	 *            expected output <code>String</code>	 * @throws Exception	 */	public void assertResultPage(final String expectedDocument) throws Exception	{		// Validate the document		String document = getServletResponse().getDocument();		Assert.assertEquals(expectedDocument, document);	}	/**	 * Asserts that a <code>Component</code> is visible.	 * 	 * @param path	 *            path to a <code>Component</code>	 */	public void assertVisible(String path)	{		assertResult(isVisible(path));	}	private void assertResult(Result result)	{		if (result.wasFailed())		{			throw new AssertionFailedError(result.getMessage());		}	}}

⌨️ 快捷键说明

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