Package org.apache.wicket.request.mapper

Source Code of org.apache.wicket.request.mapper.CustomHomePageTest$CustomHomePage

/*
* 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.request.mapper;

import org.apache.wicket.Application;
import org.apache.wicket.protocol.http.WebApplication;
import org.apache.wicket.protocol.http.mock.MockHttpServletRequest;
import org.apache.wicket.resource.DummyApplication;
import org.apache.wicket.util.tester.DummyHomePage;
import org.apache.wicket.util.tester.WicketTester;
import org.junit.Test;

/**
* A test case for <a href="https://issues.apache.org/jira/browse/WICKET-3126">WICKET-3126</a>
*/
public class CustomHomePageTest
{

  /**
   * Tests no custom home page. The home page is get from {@link Application#getHomePage()}
   */
  @Test
  public void defaultHomePage()
  {
    final WebApplication dummyApplication = new DummyApplication();
    final WicketTester tester = new WicketTester(dummyApplication);

    requestHomePage(tester);

    tester.assertRenderedPage(dummyApplication.getHomePage());
  }

  /**
   * Tests mounting of a custom home page via {@link WebApplication#mountPage(String, Class)}
   */
  @Test
  public void customHomePage()
  {
    final WebApplication dummyApplication = new DummyApplication()
    {
      /**
       * @see org.apache.wicket.protocol.http.WebApplication#init()
       */
      @Override
      protected void init()
      {
        super.init();

        // the following two lines do identical things
        // getRootRequestMapperAsCompound().add(new HomePageMapper(CustomHomePage.class));
        mountPage("/", CustomHomePage.class);
      }
    };
    final WicketTester tester = new WicketTester(dummyApplication);

    requestHomePage(tester);

    tester.assertRenderedPage(CustomHomePage.class);
  }

  private void requestHomePage(final WicketTester tester)
  {
    MockHttpServletRequest request = tester.getRequest();
    String contextPath = request.getContextPath();
    String filterPrefix = request.getFilterPrefix();
    tester.executeUrl(contextPath + "/" + filterPrefix + "/");
  }

  /***/
  public static class CustomHomePage extends DummyHomePage
  {
    private static final long serialVersionUID = 1L;
  }
}
TOP

Related Classes of org.apache.wicket.request.mapper.CustomHomePageTest$CustomHomePage

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.