Package org.geotools.caching.grid.spatialindex

Source Code of org.geotools.caching.grid.spatialindex.RegionNodeIdentifierTest

/*
*    GeoTools - The Open Source Java GIS Toolkit
*    http://geotools.org
*
*    (C) 2007-2008, Open Source Geospatial Foundation (OSGeo)
*
*    This library is free software; you can redistribute it and/or
*    modify it under the terms of the GNU Lesser General Public
*    License as published by the Free Software Foundation;
*    version 2.1 of the License.
*
*    This library is distributed in the hope that it will be useful,
*    but WITHOUT ANY WARRANTY; without even the implied warranty of
*    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
*    Lesser General Public License for more details.
*/
package org.geotools.caching.grid.spatialindex;

import java.util.HashMap;

import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;

import org.geotools.caching.spatialindex.Region;
import org.geotools.caching.spatialindex.RegionNodeIdentifier;


/**
*
*
* @source $URL$
*/
public class RegionNodeIdentifierTest extends TestCase {
    Region r1;
    Region r2;
    GridNode node1;
    GridNode node2;
    GridNode node3;
    RegionNodeIdentifier id1;
    RegionNodeIdentifier id2;
    RegionNodeIdentifier id3;

    protected void setUp() {
        GridSpatialIndex grid = new GridSpatialIndex();
        r1 = new Region(new double[] { 0, 0 }, new double[] { 1, 1 });
        r2 = new Region(new double[] { -1, -1 }, new double[] { -2, -2 });
        node1 = new GridNode(new RegionNodeIdentifier(r1));
        node2 = new GridNode(new RegionNodeIdentifier(r2));
        node3 = new GridNode(new RegionNodeIdentifier(r1));
        //id1 = new RegionNodeIdentifier(node1);
        //id2 = new RegionNodeIdentifier(node2);
        //id3 = new RegionNodeIdentifier(node3);
        id1 = (RegionNodeIdentifier)node1.getIdentifier();
        id2 = (RegionNodeIdentifier)node2.getIdentifier();
        id3 = (RegionNodeIdentifier)node3.getIdentifier();
    }

    public static Test suite() {
        return new TestSuite(RegionNodeIdentifierTest.class);
    }

    public void testhashCode() {
        assertEquals(id1.hashCode(), id3.hashCode());
    }

    public void testEquals() {
        assertTrue(node1.equals(node1));
        assertFalse(node1.equals(node2));
        assertFalse(id1.equals(id2));
        assertFalse(node1.equals(node3));
        assertTrue(id1.equals(id3));
        assertFalse(node2.equals(node3));
        assertFalse(id2.equals(id3));
        assertEquals(id1, id1);
        assertEquals(id2, id2);
        assertEquals(id3, id3);
        assertEquals(id1, id3);
    }

    public void testHashMap() {
        HashMap<RegionNodeIdentifier, GridNode> map = new HashMap<RegionNodeIdentifier, GridNode>();
        map.put(id1, node1);
        map.put(id2, node2);
        map.put(id3, node3);
        assertEquals(node1.getShape(), ((GridNode) map.get(id1)).getShape());
        assertEquals(node2.getShape(), ((GridNode) map.get(id2)).getShape());
        assertEquals(node3.getShape(), ((GridNode) map.get(id3)).getShape());
        assertTrue(node3.getShape().equals(((GridNode) map.get(id1)).getShape()));
    }
}
TOP

Related Classes of org.geotools.caching.grid.spatialindex.RegionNodeIdentifierTest

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.