Package org.skyscreamer.yoga.listener

Source Code of org.skyscreamer.yoga.listener.NavigationLinksListenerTest

package org.skyscreamer.yoga.listener;

import java.io.IOException;
import java.util.Map;

import junit.framework.Assert;

import org.junit.Test;
import org.skyscreamer.yoga.configuration.DefaultEntityConfigurationRegistry;
import org.skyscreamer.yoga.mapper.YogaRequestContext;
import org.skyscreamer.yoga.model.ObjectMapHierarchicalModelImpl;
import org.skyscreamer.yoga.selector.CoreSelector;
import org.skyscreamer.yoga.selector.SelectorResolver;
import org.skyscreamer.yoga.test.model.basic.BasicTestDataLeaf;
import org.skyscreamer.yoga.test.util.DummyHttpServletRequest;
import org.skyscreamer.yoga.test.util.DummyHttpServletResponse;

public class NavigationLinksListenerTest
{
    static YogaRequestContext requestContext = new YogaRequestContext( "map", new SelectorResolver(),
            new DummyHttpServletRequest(), new DummyHttpServletResponse() );

    @Test
    public void testBasic() throws IOException
    {
        BasicTestDataLeaf leaf = new BasicTestDataLeaf();
        ObjectMapHierarchicalModelImpl model = new ObjectMapHierarchicalModelImpl();
        RenderingEvent<BasicTestDataLeaf> event = new RenderingEvent<BasicTestDataLeaf>( RenderingEventType.POJO_CHILD, model, leaf,
            BasicTestDataLeaf.class, requestContext, new CoreSelector(
                        new DefaultEntityConfigurationRegistry() ) );
        new NavigationLinksListener().eventOccurred( event );

        Map<String, Object> objectTree = model.getUnderlyingModel();

        Map<String, Object> navLinks = getMap( objectTree, "navigationLinks" );
        Assert.assertNotNull( navLinks );

        Map<String, Object> otherMap = getMap( navLinks, "other" );
        Assert.assertNotNull( otherMap );

        Assert.assertEquals( "/basic-leaf/0.map?selector=other", otherMap.get( "href" ) );
    }

    @SuppressWarnings("unchecked")
    private Map<String, Object> getMap( Map<String, Object> map, String key )
    {
        return (Map<String, Object>) map.get( key );
    }
}
TOP

Related Classes of org.skyscreamer.yoga.listener.NavigationLinksListenerTest

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.