Package org.geotools.util

Source Code of org.geotools.util.ColorConverterFactoryTest

/*
*    GeoTools - The Open Source Java GIS Toolkit
*    http://geotools.org
*
*    (C) 2002-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.util;

import java.awt.Color;

import org.geotools.filter.ConstantExpression;

import junit.framework.TestCase;

/**
*
*
* @source $URL$
*/
public class ColorConverterFactoryTest extends TestCase {

    ColorConverterFactory factory;
   
    protected void setUp() throws Exception {
        factory = new ColorConverterFactory();
    }
    public void testVsConstantExpression() throws Exception {
        ConstantExpression expr = ConstantExpression.color(Color.RED);
        String expected = expr.evaluate(null, String.class );
       
        Converter converter = factory.createConverter( Color.class, String.class, null );
        String actual = converter.convert( Color.RED, String.class );
       
        assertEquals( expected, actual );
    }
   
    public void testFromString() throws Exception {
        assertEquals( Color.RED, convert( "#FF0000" ) );
    }
   
    public void testFromInteger() throws Exception {
        assertEquals( Color.RED, convert(0xFF0000) );
        assertEquals( "no alpha", new Color( 0,0,255,255), convert(0x000000FF) );
       
        assertEquals( "255 alpha", new Color( 0,0,255,255), convert(0xFF0000FF) );
       
        assertEquals( "1 alpha", new Color( 0,0,255,1), convert(0x010000FF) );
    }
   
    public void testFromLong() throws Exception {
//        assertEquals( Color.RED, convert(0xFF0000) );
        assertEquals( "no alpha", new Color( 0,0,255,255), convert((long) 0x000000FF) );
       
        assertEquals( "255 alpha", new Color( 0,0,255,255), convert((long) 0xFF0000FF) );
       
        assertEquals( "1 alpha", new Color( 0,0,255,1), convert((long) 0x010000FF) );
    }
   
    Color convert( Object value ) throws Exception {
        Converter converter = factory.createConverter( value.getClass(), Color.class, null );
        return (Color) converter.convert( value, Color.class );
    }
   
    public void testRegisteredWithConverters(){
        Color color = Converters.convert("#189E77", Color.class );
        Color expected = new Color(24,158,119);
        assertNotNull( "converter not registered", color );
        assertEquals( expected, color );
    }
}
TOP

Related Classes of org.geotools.util.ColorConverterFactoryTest

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.