/*
 * Created on 03-Mar-2005
 */
package org.bodington.util;

import org.bodington.server.BuildingServer;
import org.bodington.server.BuildingServerTest;
import org.bodington.server.resources.Resource;

/**
 * @author buckett
 */
public class BodingtonURLTest extends BuildingServerTest
{

    BodingtonURL bodingtonURL;
    /*
     * @see BuildingServerTest#setUp()
     */
    protected void setUp() throws Exception
    {
        super.setUp();
        java.util.Properties properties = BuildingServer.getInstance().getProperties();
        properties.setProperty("buildingservlet.server", "localhost");
        properties.setProperty("buildingservlet.secureservlet", "/bodington/site/");
        properties.setProperty("buildingservlet.openservlet", "/bodington/opensite/");
        properties.setProperty("buildingservlet.port.https", "8443");
        properties.setProperty("buildingservlet.port.http", "8080");

        bodingtonURL = new BodingtonURL();
    }

    /*
     * Class under test for Resource getResource(String)
     */
    public void testGetResourceString()
    {
       Resource root = bodingtonURL.getResource("http://localhost:8080/bodington/site/");
       assertTrue((root.equals(resource)));
    }

    /*
     * Class under test for Resource getResource(PrimaryKey)
     */
    public void testGetResourcePrimaryKey()
    {
        Resource root = bodingtonURL.getResource(resource.getPrimaryKey());
        assertTrue(root.equals(resource));     
    }

    /*
     * Class under test for String getResourceUrl(Resource)
     */
    public void testGetResourceUrlResource()
    {
        String url = bodingtonURL.getResourceUrl(resource);
        assertTrue(url.equals("http://localhost:8080/bodington/site/"));
    }

    public void testIsBodingtonUrl()
    {
        assertTrue(bodingtonURL.isBodingtonUrl("http://localhost:8080/bodington/site/"));
    }

    public void testGetResourceName()
    {
        String name = bodingtonURL.getResourceName("http://localhost:8080/bodington/site/");
        assertTrue(name.equals("/"));
        name = bodingtonURL.getResourceName("http://localhost:8080/bodington/");
        assertNull(name);
        name = bodingtonURL.getResourceName("http://localhost:8080");
        assertNull(name);
        name = bodingtonURL.getResourceName("http://localhost");
        assertNull(name);
    }

}
