/**
  * Dump the component tree to log.
  *
  * @param filter Show only the components, which path contains the filterstring.
  */
 public void debugComponentTrees(String filter) {
   log.info("debugging ----------------------------------------------");
   for (ComponentData element : WicketTesterHelper.getComponentData(getLastRenderedPage())) {
     if (element.path.matches(".*" + filter + ".*")) {
       log.info("path\t" + element.path + " \t" + element.type + " \t[" + element.value + "]");
     }
   }
 }
 /**
  * assert info feedback message
  *
  * @param expectedInfoMessages expected info messages
  */
 public void assertInfoMessages(String[] expectedInfoMessages) {
   List<String> actualMessages = getMessages(FeedbackMessage.INFO);
   WicketTesterHelper.assertEquals(Arrays.asList(expectedInfoMessages), actualMessages);
 }
 /** assert no error feedback messages */
 public void assertNoErrorMessage() {
   List<String> messages = getMessages(FeedbackMessage.ERROR);
   Assert.assertTrue(
       "expect no error message, but contains\n" + WicketTesterHelper.asLined(messages),
       messages.isEmpty());
 }
 /** assert no info feedback messages */
 public void assertNoInfoMessage() {
   List<String> messages = getMessages(FeedbackMessage.INFO);
   Assert.assertTrue(
       "expect no info message, but contains\n" + WicketTesterHelper.asLined(messages),
       messages.isEmpty());
 }
 /**
  * assert the model of {@link ListView} use expectedList
  *
  * @param path path to {@link ListView} component
  * @param expectedList expected list in the model of {@link ListView}
  */
 public void assertListView(String path, List expectedList) {
   ListView listView = (ListView) getComponentFromLastRenderedPage(path);
   WicketTesterHelper.assertEquals(expectedList, listView.getList());
 }