/******************************************************************************* * Copyright (c) 2007, 2009 Innoopract Informationssysteme GmbH. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Innoopract Informationssysteme GmbH - initial API and implementation * EclipseSource - ongoing development ******************************************************************************/ package org.eclipse.rwt.internal.theme; import junit.framework.TestCase; public class QxColor_Test extends TestCase { public void testIllegalArguments() { try { QxColor.valueOf( "#0000" ); fail( "Exception expected" ); } catch( IllegalArgumentException e ) { // expected } try { QxColor.valueOf( "#xyz" ); fail( "Exception expected" ); } catch( IllegalArgumentException e ) { // expected } try { QxColor.valueOf( "grey" ); fail( "Exception expected" ); } catch( IllegalArgumentException e ) { // expected } } public void test6HexNotation() { QxColor color1 = QxColor.valueOf( "#0023ff" ); assertEquals( 0, color1.red ); assertEquals( 35, color1.green ); assertEquals( 255, color1.blue ); assertFalse( color1.transparent ); QxColor color2 = QxColor.valueOf( "#efeFEF" ); assertEquals( 239, color2.red ); assertEquals( 239, color2.green ); assertEquals( 239, color2.blue ); } public void test3HexNotation() { QxColor color1 = QxColor.valueOf( "#03f" ); assertEquals( 0, color1.red ); assertEquals( 51, color1.green ); assertEquals( 255, color1.blue ); assertFalse( color1.transparent ); QxColor color2 = QxColor.valueOf( "#ccc" ); assertEquals( 204, color2.red ); assertEquals( 204, color2.green ); assertEquals( 204, color2.blue ); assertEquals( QxColor.valueOf( "#ffffff"), QxColor.valueOf( "#fff" ) ); } public void testNamedColors() { QxColor color1 = QxColor.valueOf( "red" ); assertEquals( 255, color1.red ); assertEquals( 0, color1.green ); assertEquals( 0, color1.blue ); assertFalse( color1.transparent ); QxColor color2 = QxColor.valueOf( "blue" ); assertEquals( 0, color2.red ); assertEquals( 0, color2.green ); assertEquals( 255, color2.blue ); } public void testCommaSeparatedValues() { QxColor color = QxColor.valueOf( "100, 23, 42" ); assertEquals( 100, color.red ); assertEquals( 23, color.green ); assertEquals( 42, color.blue ); assertFalse( color.transparent ); } public void testTransparent() { assertTrue( QxColor.TRANSPARENT.transparent ); } public void testShared() { assertSame( QxColor.WHITE, QxColor.valueOf( "white" ) ); assertSame( QxColor.WHITE, QxColor.valueOf( "255, 255, 255" ) ); assertSame( QxColor.WHITE, QxColor.valueOf( "#ffffff" ) ); assertSame( QxColor.BLACK, QxColor.valueOf( "Black" ) ); assertSame( QxColor.BLACK, QxColor.valueOf( "0, 0, 0" ) ); assertSame( QxColor.BLACK, QxColor.valueOf( "#000" ) ); assertSame( QxColor.TRANSPARENT, QxColor.valueOf( "transparent" ) ); } public void testToString() { QxColor color = QxColor.valueOf( "100, 23, 42" ); assertEquals( "QxColor{ 100, 23, 42 }", color.toString() ); } public void testDefaultString() { QxColor color = QxColor.valueOf( "100, 23, 42" ); assertEquals( "#64172a", color.toDefaultString() ); } }