芝麻web文件管理V1.00
编辑当前文件:/home/strato/chroot/opt/RZphp80/includes/Image/Tests/ColorTest.php
color = new Image_Color(); } function tearDown() { unset($this->color); } function testDefaultValues() { $this->assertFalse($this->color->_websafeb, 'WebSafe should be false by default.'); $this->assertEquals(array(), $this->color->color1, 'Color1 should be an empty array by default.'); $this->assertEquals(array(), $this->color->color2, 'Color2 should be an empty array by default.'); } function testSetWebsafe() { $this->color->setWebSafe(true); $this->assertTrue($this->color->_websafeb, 'setting true failed.'); $this->color->setWebSafe(false); $this->assertFalse($this->color->_websafeb, 'setting false failed.'); } function testGetGetRange_DefaultParam() { $this->color->setColors('#ffffff', '#000000'); $result = $this->color->getRange(); $this->assertType('array', $result); $this->assertEquals(2, count($result)); } function testGetGetRange_Param5() { $this->color->setColors('#ffffff', '#000000'); $result = $this->color->getRange(5); $this->assertType('array', $result); $this->assertEquals(5, count($result)); } function testChangeLightness_DefaultParam_SingleColor() { $color = array(128,128,128); $this->color->setColors(Image_Color::rgb2hex($color), null); $this->color->changeLightness(); $this->assertEquals(array(138,138,138), $this->color->color1); } function testChangeLightness_NegativeParam_SingleColor() { $color = array(128,128,128); $this->color->setColors(Image_Color::rgb2hex($color), null); $this->color->changeLightness(-5); $this->assertEquals(array(123,123,123), $this->color->color1); } function testChangeLightness_NegativeParam_TwoColors() { $color1 = array(128,128,128); $color2 = array(64,64,64); $this->color->setColors( Image_Color::rgb2hex($color1), Image_Color::rgb2hex($color2) ); $this->color->changeLightness(-32); $this->assertEquals(array(96,96,96), $this->color->color1); $this->assertEquals(array(32,32,32), $this->color->color2); } function testMixColors_FromParam_Orange_Websafe() { $red = '#ff0000'; $yellow = '#ffff00'; $this->color->setWebSafe(true); $ret = $this->color->mixColors($red, $yellow); $this->assertEquals('FF9900', $ret); } function testMixColors_FromParam_Orange_NotWebsafe() { $red = '#ff0000'; $yellow = '#ffff00'; $ret = $this->color->mixColors($red, $yellow); $this->assertEquals('FF8000', $ret); } function testMixColors_FromParam_Gray_Websafe() { $black = '#000000'; $white = '#ffffff'; $this->color->setWebSafe(true); $ret = $this->color->mixColors($black, $white); $this->assertEquals('999999', $ret); } function testMixColors_FromParam_Gray_NotWebsafe() { $black = '#000000'; $white = '#ffffff'; $ret = $this->color->mixColors($black, $white); $this->assertEquals('808080', $ret); } function testMixColors_FromClass_Orange() { $red = '#ff0000'; $yellow = '#ffff00'; $this->color->setColors($red, $yellow); $ret = $this->color->mixColors(); $this->assertEquals('FF8000', $ret); } function testMixColors_FromClass_Purple() { $red = '#ff0000'; $blue = '#0000ff'; $this->color->setColors($red, $blue); $ret = $this->color->mixColors(); $this->assertEquals('800080', $ret); } function testSetColors_Neither() { $this->color->setColors(null, null); $this->assertEquals(array(), $this->color->color1); $this->assertEquals(array(), $this->color->color2); } function testSetColors_OnlyOne_Hex() { $this->color->setColors('ABCDEF', null); $this->assertEquals(array(171, 205, 239), $this->color->color1); $this->assertEquals(array(), $this->color->color2); } function testSetColors_Both_Hex() { $this->color->setColors('ABCDEF', '012345'); $this->assertEquals(array(171, 205, 239), $this->color->color1); $this->assertEquals(array( 1, 35, 69), $this->color->color2); } function testHex2rgb_WithPound() { $result = Image_Color::hex2rgb('#abcdef'); $this->assertEquals(array(171,205,239,'hex'=>'#abcdef'), $result); } function testHex2rgb_WithoutPound() { $result = Image_Color::hex2rgb('abcdef'); $this->assertEquals(array(171,205,239,'hex'=>'abcdef'), $result); } function testRgb2hex() { $result = Image_Color::rgb2hex(array(171,205,239)); $this->assertEquals('ABCDEF', $result); } function testGetTextColor_WithParams_OnBlack() { $result = Image_Color::getTextColor('#000000', 'light', 'dark'); $this->assertEquals('light', $result); } function testGetTextColor_WithParams_OnWhite() { $result = Image_Color::getTextColor('#ffffff', 'light', 'dark'); $this->assertEquals('dark', $result); } function testGetTextColor_DefaultParams_OnWhite() { $result = Image_Color::getTextColor('#ffffff'); $this->assertEquals('#000000', $result); } function testGetTextColor_DefaultParams_OnBlack() { $result = Image_Color::getTextColor('#000000'); $this->assertEquals('#FFFFFF', $result); } function testGetTextColor_DefaultParams_OnRed() { $result = Image_Color::getTextColor('#FF0000'); $this->assertEquals('#FFFFFF', $result); } function testGetTextColor_DefaultParams_OnBlue() { $result = Image_Color::getTextColor('#0000ff'); $this->assertEquals('#FFFFFF', $result); } function testGetTextColor_DefaultParams_OnDarkGreen() { $result = Image_Color::getTextColor('#006400'); $this->assertEquals('#FFFFFF', $result); } function testGetTextColor_DefaultParams_OnLightGreen() { $result = Image_Color::getTextColor('90ee90'); $this->assertEquals('#000000', $result); } function testColor2RGB_Hex() { $result = Image_Color::color2RGB('#00ff00'); $this->assertEquals(array(0,255,0,'hex'=>'#00ff00'), $result); } function testColor2RGB_Named() { $result = Image_Color::color2RGB('red'); $this->assertEquals(array(255,0,0), $result); } function testNamedColor2RGB_Valid() { $result = Image_Color::namedColor2RGB('orange'); $this->assertEquals(array(255,165,0), $result); } function testNamedColor2RGB_InvalidReturnsBlack() { $result = Image_Color::namedColor2RGB('NOT A REAL COLOR'); $this->assertEquals(array(0,0,0), $result); } function testPercentageColor2RGB_100s() { $result = Image_Color::percentageColor2RGB("100%,100%,100%"); $this->assertEquals(array(255,255,255), $result); } function testPercentageColor2RGB_0s() { $result = Image_Color::percentageColor2RGB("0%,0%,0%"); $this->assertEquals(array(0,0,0), $result); } function testPercentageColor2RGB_2digits() { $result = Image_Color::percentageColor2RGB("10%,50%,90%"); $this->assertEquals(array(26,127,229), $result); } function testMakeWebSafe_00() { $expected = 0x00; $param = -1; $actual = _makeWebSafe($param); $this->assertEquals($expected, $actual, "test return"); $this->assertEquals($expected, $param, 'test param passed by ref'); $param = 0; $actual = _makeWebSafe($param); $this->assertEquals($expected, $actual, "test return"); $this->assertEquals($expected, $param, 'test param passed by ref'); $param = 25; $actual = _makeWebSafe($param); $this->assertEquals($expected, $actual, "test return"); $this->assertEquals($expected, $param, 'test param passed by ref'); } function testMakeWebSafe_33() { $expected = 0x33; $param = 26; $actual = _makeWebSafe($param); $this->assertEquals($expected, $actual, "test return"); $this->assertEquals($expected, $param, 'test param passed by ref'); $param = 76; $actual = _makeWebSafe($param); $this->assertEquals($expected, $actual, "test return"); $this->assertEquals($expected, $param, 'test param passed by ref'); } function testMakeWebSafe_66() { $expected = 0x66; $param = 77; $actual = _makeWebSafe($param); $this->assertEquals($expected, $actual, "test return"); $this->assertEquals($expected, $param, 'test param passed by ref'); $param = 127; $actual = _makeWebSafe($param); $this->assertEquals($expected, $actual, "test return"); $this->assertEquals($expected, $param, 'test param passed by ref'); } function testMakeWebSafe_99() { $expected = 0x99; $param = 128; $actual = _makeWebSafe($param); $this->assertEquals($expected, $actual, "test return"); $this->assertEquals($expected, $param, 'test param passed by ref'); $param = 178; $actual = _makeWebSafe($param); $this->assertEquals($expected, $actual, "test return"); $this->assertEquals($expected, $param, 'test param passed by ref'); } function testMakeWebSafe_cc() { $expected = 0xcc; $param = 179; $actual = _makeWebSafe($param); $this->assertEquals($expected, $actual, "test return"); $this->assertEquals($expected, $param, 'test param passed by ref'); $param = 229; $actual = _makeWebSafe($param); $this->assertEquals($expected, $actual, "test return"); $this->assertEquals($expected, $param, 'test param passed by ref'); } function testMakeWebSafe_ff() { $expected = 0xff; $param = 230; $actual = _makeWebSafe($param); $this->assertEquals($expected, $actual, "test return"); $this->assertEquals($expected, $param, 'test param passed by ref'); $param = 255; $actual = _makeWebSafe($param); $this->assertEquals($expected, $actual, "test return"); $this->assertEquals($expected, $param, 'test param passed by ref'); $param = 257; $actual = _makeWebSafe($param); $this->assertEquals($expected, $actual, "test return"); $this->assertEquals($expected, $param, 'test param passed by ref'); } } ?>