00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef WCOLOR_TEST_H
00026 #define WCOLOR_TEST_H
00027
00028 #include <sstream>
00029 #include <string>
00030
00031 #include <cxxtest/TestSuite.h>
00032
00033 #include "../WColor.h"
00034 #include "WColorTraits.h"
00035
00036
00037
00038
00039 class WColorTest : public CxxTest::TestSuite
00040 {
00041 public:
00042
00043
00044
00045
00046
00047
00048 void testHSVConversion( void )
00049 {
00050 WColor c = convertHSVtoRGBA( 0, 1, 1 );
00051 TS_ASSERT_DELTA( c[0], 1, 0.00001 );
00052 TS_ASSERT_DELTA( c[1], 0, 0.00001 );
00053 TS_ASSERT_DELTA( c[2], 0, 0.00001 );
00054 c = convertHSVtoRGBA( 1, 1, 1 );
00055 TS_ASSERT_DELTA( c[0], 1, 0.00001 );
00056 TS_ASSERT_DELTA( c[1], 0, 0.00001 );
00057 TS_ASSERT_DELTA( c[2], 0, 0.00001 );
00058 c = convertHSVtoRGBA( 1.0 / 3.0, 1, 1 );
00059 TS_ASSERT_DELTA( c[0], 0, 0.00001 );
00060 TS_ASSERT_DELTA( c[1], 1, 0.00001 );
00061 TS_ASSERT_DELTA( c[2], 0, 0.00001 );
00062 c = convertHSVtoRGBA( 0.3, 0.3, 0.3 );
00063 TS_ASSERT_DELTA( c[0], 0.2280, 0.0001 );
00064 TS_ASSERT_DELTA( c[1], 0.3, 0.0001 );
00065 TS_ASSERT_DELTA( c[2], 0.2099, 0.0001 );
00066 }
00067 };
00068
00069 #endif // WCOLOR_TEST_H