def test_str5(): """Test function str5""" cornelltest.assert_equals('130.6', a3.str5(130.59)) cornelltest.assert_equals('130.5', a3.str5(130.54)) cornelltest.assert_equals('100.0', a3.str5(100)) cornelltest.assert_equals('100.6', a3.str5(100.55)) cornelltest.assert_equals('99.57', a3.str5(99.566)) cornelltest.assert_equals('99.99', a3.str5(99.99)) cornelltest.assert_equals('100.0', a3.str5(99.995)) cornelltest.assert_equals('22.00', a3.str5(21.99575)) cornelltest.assert_equals('21.99', a3.str5(21.994)) cornelltest.assert_equals('10.01', a3.str5(10.013567)) cornelltest.assert_equals('10.00', a3.str5(10.000000005)) cornelltest.assert_equals('10.00', a3.str5(9.9999)) cornelltest.assert_equals('9.999', a3.str5(9.9993)) cornelltest.assert_equals('1.355', a3.str5(1.3546)) cornelltest.assert_equals('1.354', a3.str5(1.3544)) cornelltest.assert_equals('0.046', a3.str5(.0456)) cornelltest.assert_equals('0.045', a3.str5(.0453)) cornelltest.assert_equals('0.006', a3.str5(.0056)) cornelltest.assert_equals('0.001', a3.str5(.0013)) cornelltest.assert_equals('0.000', a3.str5(.0004)) cornelltest.assert_equals('0.001', a3.str5(.0009999)) cornelltest.assert_equals('900.0', a3.str5(900)) cornelltest.assert_equals('12.45', a3.str5(12.453)) cornelltest.assert_equals('0.000', a3.str5(.0003)) cornelltest.assert_equals('0.001', a3.str5(0.00099999))
def test_rgb_to_cmyk(): """Test rgb_to_cmyk""" rgb = colormodel.RGB(255, 255, 255); cmyk = a3.rgb_to_cmyk(rgb); cornelltest.assert_equals('0.000', a3.str5(cmyk.cyan)) cornelltest.assert_equals('0.000', a3.str5(cmyk.magenta)) cornelltest.assert_equals('0.000', a3.str5(cmyk.yellow)) cornelltest.assert_equals('0.000', a3.str5(cmyk.black)) rgb = colormodel.RGB(0, 0,0); cmyk = a3.rgb_to_cmyk(rgb); cornelltest.assert_equals('0.000', a3.str5(cmyk.cyan)) cornelltest.assert_equals('0.000', a3.str5(cmyk.magenta)) cornelltest.assert_equals('0.000', a3.str5(cmyk.yellow)) cornelltest.assert_equals('100.0', a3.str5(cmyk.black)) rgb = colormodel.RGB(217, 43, 164); cmyk = a3.rgb_to_cmyk(rgb); cornelltest.assert_equals('0.000', a3.str5(cmyk.cyan)) cornelltest.assert_equals('80.18', a3.str5(cmyk.magenta)) cornelltest.assert_equals('24.42', a3.str5(cmyk.yellow)) cornelltest.assert_equals('14.90', a3.str5(cmyk.black))
def test_rgb_to_cmyk(): """ Test translation function rgb_to_cmyk """ # We use a3.str5 to handle round-off error in comparisons rgb = cornell.RGB(255, 255, 255) cmyk = a3.rgb_to_cmyk(rgb) cornell.assert_equals('0.000', a3.str5(cmyk.cyan)) cornell.assert_equals('0.000', a3.str5(cmyk.magenta)) cornell.assert_equals('0.000', a3.str5(cmyk.yellow)) cornell.assert_equals('0.000', a3.str5(cmyk.black)) rgb = cornell.RGB(0, 0, 0) cmyk = a3.rgb_to_cmyk(rgb) cornell.assert_equals('0.000', a3.str5(cmyk.cyan)) cornell.assert_equals('0.000', a3.str5(cmyk.magenta)) cornell.assert_equals('0.000', a3.str5(cmyk.yellow)) cornell.assert_equals('100.0', a3.str5(cmyk.black)) rgb = cornell.RGB(217, 43, 164) cmyk = a3.rgb_to_cmyk(rgb) cornell.assert_equals('0.000', a3.str5(cmyk.cyan)) cornell.assert_equals('80.18', a3.str5(cmyk.magenta)) cornell.assert_equals('24.42', a3.str5(cmyk.yellow)) cornell.assert_equals('14.90', a3.str5(cmyk.black))
def test_rgb_to_hsv(): """Test translation function rgb_to_hsv""" rgb= colormodel.RGB(20,20,20) hsv= a3.rgb_to_hsv(rgb) cornelltest.assert_equals( '0.000', a3.str5(hsv.hue)) rgb= colormodel.RGB(100,25,20) hsv= a3.rgb_to_hsv(rgb) cornelltest.assert_equals( '3.750', a3.str5(hsv.hue)) cornelltest.assert_equals( '0.800', a3.str5(hsv.saturation)) cornelltest.assert_equals( '0.392', a3.str5(hsv.value)) rgb= colormodel.RGB(200,50,100) hsv= a3.rgb_to_hsv(rgb) cornelltest.assert_equals( '340.0', a3.str5(hsv.hue)) cornelltest.assert_equals( '0.750', a3.str5(hsv.saturation)) cornelltest.assert_equals( '0.784', a3.str5(hsv.value)) rgb= colormodel.RGB(20,100,20) hsv= a3.rgb_to_hsv(rgb) cornelltest.assert_equals( '120.0', a3.str5(hsv.hue)) cornelltest.assert_equals( '0.800', a3.str5(hsv.saturation)) cornelltest.assert_equals( '0.392', a3.str5(hsv.value)) rgb= colormodel.RGB(20,20,100) hsv= a3.rgb_to_hsv(rgb) cornelltest.assert_equals( '240.0', a3.str5(hsv.hue)) cornelltest.assert_equals( '0.800', a3.str5(hsv.saturation)) cornelltest.assert_equals( '0.392', a3.str5(hsv.value)) rgb= colormodel.RGB(0,0,0) hsv= a3.rgb_to_hsv(rgb) cornelltest.assert_equals( '0.000', a3.str5(hsv.hue)) cornelltest.assert_equals( '0.000', a3.str5(hsv.saturation)) cornelltest.assert_equals( '0.000', a3.str5(hsv.value)) rgb= colormodel.RGB(20,25,25) hsv= a3.rgb_to_hsv(rgb) cornelltest.assert_equals( '180.0', a3.str5(hsv.hue)) cornelltest.assert_equals( '0.200', a3.str5(hsv.saturation)) cornelltest.assert_equals( '0.098', a3.str5(hsv.value))
def test_rgb_to_hsv(): """Test translation function rgb_to_hsv""" rgb = colormodel.RGB(255, 255, 255) hsv = a3.rgb_to_hsv(rgb) cornelltest.assert_equals('0.000', a3.str5(hsv.hue)) cornelltest.assert_equals('0.000', a3.str5(hsv.saturation)) cornelltest.assert_equals('1.000', a3.str5(hsv.value)) rgb = colormodel.RGB(245, 87, 7) hsv = a3.rgb_to_hsv(rgb) cornelltest.assert_equals('20.17', a3.str5(hsv.hue)) cornelltest.assert_equals('0.971', a3.str5(hsv.saturation)) cornelltest.assert_equals('0.961', a3.str5(hsv.value)) rgb = colormodel.RGB(99, 33, 33) hsv = a3.rgb_to_hsv(rgb) cornelltest.assert_equals('0.000', a3.str5(hsv.hue)) cornelltest.assert_equals('0.667', a3.str5(hsv.saturation)) cornelltest.assert_equals('0.388', a3.str5(hsv.value)) rgb = colormodel.RGB(54, 2, 3) hsv = a3.rgb_to_hsv(rgb) cornelltest.assert_equals('358.8', a3.str5(hsv.hue)) cornelltest.assert_equals('0.963', a3.str5(hsv.saturation)) cornelltest.assert_equals('0.212', a3.str5(hsv.value)) rgb = colormodel.RGB(99, 100, 98) hsv = a3.rgb_to_hsv(rgb) cornelltest.assert_equals('90.00', a3.str5(hsv.hue)) cornelltest.assert_equals('0.020', a3.str5(hsv.saturation)) cornelltest.assert_equals('0.392', a3.str5(hsv.value)) rgb = colormodel.RGB(100, 1, 150) hsv = a3.rgb_to_hsv(rgb) cornelltest.assert_equals('279.9', a3.str5(hsv.hue)) cornelltest.assert_equals('0.993', a3.str5(hsv.saturation)) cornelltest.assert_equals('0.588', a3.str5(hsv.value)) rgb = colormodel.RGB(0, 0, 0) hsv = a3.rgb_to_hsv(rgb) cornelltest.assert_equals('0.000', a3.str5(hsv.hue)) cornelltest.assert_equals('0.000', a3.str5(hsv.saturation)) cornelltest.assert_equals('0.000', a3.str5(hsv.value))
def test_rgb_to_cmyk(): """Test rgb_to_cmyk""" rgb = colormodel.RGB(255, 255, 255) cmyk = a3.rgb_to_cmyk(rgb) cornelltest.assert_equals('0.000', a3.str5(cmyk.cyan)) cornelltest.assert_equals('0.000', a3.str5(cmyk.magenta)) cornelltest.assert_equals('0.000', a3.str5(cmyk.yellow)) cornelltest.assert_equals('0.000', a3.str5(cmyk.black)) rgb = colormodel.RGB(0, 0, 0) cmyk = a3.rgb_to_cmyk(rgb) cornelltest.assert_equals('0.000', a3.str5(cmyk.cyan)) cornelltest.assert_equals('0.000', a3.str5(cmyk.magenta)) cornelltest.assert_equals('0.000', a3.str5(cmyk.yellow)) cornelltest.assert_equals('100.0', a3.str5(cmyk.black)) rgb = colormodel.RGB(217, 43, 164) cmyk = a3.rgb_to_cmyk(rgb) cornelltest.assert_equals('0.000', a3.str5(cmyk.cyan)) cornelltest.assert_equals('80.18', a3.str5(cmyk.magenta)) cornelltest.assert_equals('24.42', a3.str5(cmyk.yellow)) cornelltest.assert_equals('14.90', a3.str5(cmyk.black)) rgb = colormodel.RGB(1, 3, 9) cmyk = a3.rgb_to_cmyk(rgb) cornelltest.assert_equals('88.89', a3.str5(cmyk.cyan)) cornelltest.assert_equals('66.67', a3.str5(cmyk.magenta)) cornelltest.assert_equals('0.000', a3.str5(cmyk.yellow)) cornelltest.assert_equals('96.47', a3.str5(cmyk.black)) rgb = colormodel.RGB(50, 80, 45) cmyk = a3.rgb_to_cmyk(rgb) cornelltest.assert_equals('37.50', a3.str5(cmyk.cyan)) cornelltest.assert_equals('0.000', a3.str5(cmyk.magenta)) cornelltest.assert_equals('43.75', a3.str5(cmyk.yellow)) cornelltest.assert_equals('68.63', a3.str5(cmyk.black))
def test_rgb_to_hsv(): """Test translation function rgb_to_hsv""" #MAX = MIN rgb = colormodel.RGB(255, 255, 255) hsv = a3.rgb_to_hsv(rgb) cornelltest.assert_equals('0.000', a3.str5(hsv.hue)) cornelltest.assert_equals('0.000', a3.str5(hsv.saturation)) cornelltest.assert_equals('1.000', a3.str5(hsv.value)) rgb = colormodel.RGB(0, 0, 0) hsv = a3.rgb_to_hsv(rgb) cornelltest.assert_equals('0.000', a3.str5(hsv.hue)) cornelltest.assert_equals('0.000', a3.str5(hsv.saturation)) cornelltest.assert_equals('0.000', a3.str5(hsv.value)) rgb = colormodel.RGB(100, 100, 100) hsv = a3.rgb_to_hsv(rgb) cornelltest.assert_equals('0.000', a3.str5(hsv.hue)) cornelltest.assert_equals('0.000', a3.str5(hsv.saturation)) cornelltest.assert_equals('0.392', a3.str5(hsv.value)) #MAX = R and G >= B rgb = colormodel.RGB(200, 150, 100) hsv = a3.rgb_to_hsv(rgb) cornelltest.assert_equals('30.00', a3.str5(hsv.hue)) cornelltest.assert_equals('0.500', a3.str5(hsv.saturation)) cornelltest.assert_equals('0.784', a3.str5(hsv.value)) rgb = colormodel.RGB(242, 67, 67) hsv = a3.rgb_to_hsv(rgb) cornelltest.assert_equals('0.000', a3.str5(hsv.hue)) cornelltest.assert_equals('0.723', a3.str5(hsv.saturation)) cornelltest.assert_equals('0.949', a3.str5(hsv.value)) rgb = colormodel.RGB(255, 0, 0) hsv = a3.rgb_to_hsv(rgb) cornelltest.assert_equals('0.000', a3.str5(hsv.hue)) cornelltest.assert_equals('1.000', a3.str5(hsv.saturation)) cornelltest.assert_equals('1.000', a3.str5(hsv.value)) #MAX = R and G < B rgb = colormodel.RGB(123, 87, 99) hsv = a3.rgb_to_hsv(rgb) cornelltest.assert_equals('340.0', a3.str5(hsv.hue)) cornelltest.assert_equals('0.293', a3.str5(hsv.saturation)) cornelltest.assert_equals('0.482', a3.str5(hsv.value)) #MAX = G rgb = colormodel.RGB(1, 6, 2) hsv = a3.rgb_to_hsv(rgb) cornelltest.assert_equals('132.0', a3.str5(hsv.hue)) cornelltest.assert_equals('0.833', a3.str5(hsv.saturation)) cornelltest.assert_equals('0.024', a3.str5(hsv.value)) #MAX = B rgb = colormodel.RGB(12, 64, 242) hsv = a3.rgb_to_hsv(rgb) cornelltest.assert_equals('226.4', a3.str5(hsv.hue)) cornelltest.assert_equals('0.950', a3.str5(hsv.saturation)) cornelltest.assert_equals('0.949', a3.str5(hsv.value))
def test_str5(): """ Test function str5 """ print('Testing for str5') introcs.assert_equals('130.6', a3.str5(130.59)) introcs.assert_equals('130.5', a3.str5(130.54)) introcs.assert_equals('100.0', a3.str5(100)) introcs.assert_equals('100.6', a3.str5(100.56)) introcs.assert_equals('99.57', a3.str5(99.566)) introcs.assert_equals('99.99', a3.str5(99.99)) introcs.assert_equals('100.0', a3.str5(99.995)) introcs.assert_equals('22.00', a3.str5(21.99575)) introcs.assert_equals('21.99', a3.str5(21.994)) introcs.assert_equals('10.01', a3.str5(10.013567)) introcs.assert_equals('10.00', a3.str5(10.000000005)) introcs.assert_equals('10.00', a3.str5(9.9999)) introcs.assert_equals('9.999', a3.str5(9.9993)) introcs.assert_equals('1.355', a3.str5(1.3546)) introcs.assert_equals('1.354', a3.str5(1.3544)) introcs.assert_equals('0.046', a3.str5(.0456)) introcs.assert_equals('0.045', a3.str5(.0453)) introcs.assert_equals('0.006', a3.str5(.0056)) introcs.assert_equals('0.001', a3.str5(.0013)) introcs.assert_equals('0.000', a3.str5(.0004)) introcs.assert_equals('0.001', a3.str5(.0009999)) print('Passed str5 tests')
def test_rgb_to_cmyk(): """ Test translation function rgb_to_cmyk """ # We use a3.str5 to handle round-off error in comparisons rgb = cornell.RGB(255, 255, 255); cmyk = a3.rgb_to_cmyk(rgb); cornell.assert_equals('0.000', a3.str5(cmyk.cyan)) cornell.assert_equals('0.000', a3.str5(cmyk.magenta)) cornell.assert_equals('0.000', a3.str5(cmyk.yellow)) cornell.assert_equals('0.000', a3.str5(cmyk.black)) rgb = cornell.RGB(0, 0, 0); cmyk = a3.rgb_to_cmyk(rgb); cornell.assert_equals('0.000', a3.str5(cmyk.cyan)) cornell.assert_equals('0.000', a3.str5(cmyk.magenta)) cornell.assert_equals('0.000', a3.str5(cmyk.yellow)) cornell.assert_equals('100.0', a3.str5(cmyk.black)) rgb = cornell.RGB(217, 43, 164); cmyk = a3.rgb_to_cmyk(rgb); cornell.assert_equals('0.000', a3.str5(cmyk.cyan)) cornell.assert_equals('80.18', a3.str5(cmyk.magenta)) cornell.assert_equals('24.42', a3.str5(cmyk.yellow)) cornell.assert_equals('14.90', a3.str5(cmyk.black)) rgb = cornell.RGB(5, 17, 150); cmyk = a3.rgb_to_cmyk(rgb); cornell.assert_equals('96.67', a3.str5(cmyk.cyan)) cornell.assert_equals('88.67', a3.str5(cmyk.magenta)) cornell.assert_equals('0.000', a3.str5(cmyk.yellow)) cornell.assert_equals('41.18', a3.str5(cmyk.black)) rgb = cornell.RGB(254, 17, 3); cmyk = a3.rgb_to_cmyk(rgb); cornell.assert_equals('0.000', a3.str5(cmyk.cyan)) cornell.assert_equals('93.31', a3.str5(cmyk.magenta)) cornell.assert_equals('98.82', a3.str5(cmyk.yellow)) cornell.assert_equals('0.392', a3.str5(cmyk.black)) rgb = cornell.RGB(75, 3, 179); cmyk = a3.rgb_to_cmyk(rgb); cornell.assert_equals('58.10', a3.str5(cmyk.cyan)) cornell.assert_equals('98.32', a3.str5(cmyk.magenta)) cornell.assert_equals('0.000', a3.str5(cmyk.yellow)) cornell.assert_equals('29.80', a3.str5(cmyk.black))
def test_rgb_to_hsv(): """ Test translation function rgb_to_hsv """ rgb = cornell.RGB(0, 0, 0); hsv = a3.rgb_to_hsv(rgb); cornell.assert_equals('0.000', a3.str5(hsv.hue)) cornell.assert_equals('0.000', a3.str5(hsv.saturation)) cornell.assert_equals('0.000', a3.str5(hsv.value)) rgb = cornell.RGB(150, 10, 5); hsv = a3.rgb_to_hsv(rgb); cornell.assert_equals('2.069', a3.str5(hsv.hue)) cornell.assert_equals('0.967', a3.str5(hsv.saturation)) cornell.assert_equals('0.588', a3.str5(hsv.value)) rgb = cornell.RGB(150, 10, 10); hsv = a3.rgb_to_hsv(rgb); cornell.assert_equals('0.000', a3.str5(hsv.hue)) cornell.assert_equals('0.933', a3.str5(hsv.saturation)) cornell.assert_equals('0.588', a3.str5(hsv.value)) rgb = cornell.RGB(150, 60, 10); hsv = a3.rgb_to_hsv(rgb); cornell.assert_equals('21.43', a3.str5(hsv.hue)) cornell.assert_equals('0.933', a3.str5(hsv.saturation)) cornell.assert_equals('0.588', a3.str5(hsv.value)) rgb = cornell.RGB(150, 255, 10); hsv = a3.rgb_to_hsv(rgb); cornell.assert_equals('85.71', a3.str5(hsv.hue)) cornell.assert_equals('0.961', a3.str5(hsv.saturation)) cornell.assert_equals('1.000', a3.str5(hsv.value)) rgb = cornell.RGB(150, 76, 255); hsv = a3.rgb_to_hsv(rgb); cornell.assert_equals('264.8', a3.str5(hsv.hue)) cornell.assert_equals('0.702', a3.str5(hsv.saturation)) cornell.assert_equals('1.000', a3.str5(hsv.value)) rgb = cornell.RGB(255, 255, 255); hsv = a3.rgb_to_hsv(rgb); cornell.assert_equals('0.000', a3.str5(hsv.hue)) cornell.assert_equals('0.000', a3.str5(hsv.saturation)) cornell.assert_equals('1.000', a3.str5(hsv.value))
def test_rgb_to_hsv(): """ Test translation function rgb_to_hsv """ # Testing MAX == MIN rgb = cornell.RGB(0, 0, 0) hsv = a3.rgb_to_hsv(rgb) cornell.assert_equals('0.000', a3.str5(hsv.hue)) cornell.assert_equals('0.000', a3.str5(hsv.saturation)) cornell.assert_equals('0.000', a3.str5(hsv.value)) cornell.assert_equals('(0.000, 0.000, 0.000)', a3.str5_hsv(hsv)) # Testing MAX == R and G >= B rgb = cornell.RGB(255, 150, 50) hsv = a3.rgb_to_hsv(rgb) cornell.assert_equals('29.27', a3.str5(hsv.hue)) cornell.assert_equals('0.804', a3.str5(hsv.saturation)) cornell.assert_equals('1.000', a3.str5(hsv.value)) cornell.assert_equals('(29.27, 0.804, 1.000)', a3.str5_hsv(hsv)) # Test MAX == R and G < B rgb = cornell.RGB(255, 50, 150) hsv = a3.rgb_to_hsv(rgb) cornell.assert_equals('330.7', a3.str5(hsv.hue)) cornell.assert_equals('0.804', a3.str5(hsv.saturation)) cornell.assert_equals('1.000', a3.str5(hsv.value)) cornell.assert_equals('(330.7, 0.804, 1.000)', a3.str5_hsv(hsv)) # Test MAX == G rgb = cornell.RGB(100, 240, 20) hsv = a3.rgb_to_hsv(rgb) cornell.assert_equals('98.18', a3.str5(hsv.hue)) cornell.assert_equals('0.917', a3.str5(hsv.saturation)) cornell.assert_equals('0.941', a3.str5(hsv.value)) cornell.assert_equals('(98.18, 0.917, 0.941)', a3.str5_hsv(hsv)) # Test MAX == B rgb = cornell.RGB(100, 20, 240) hsv = a3.rgb_to_hsv(rgb) cornell.assert_equals('261.8', a3.str5(hsv.hue)) cornell.assert_equals('0.917', a3.str5(hsv.saturation)) cornell.assert_equals('0.941', a3.str5(hsv.value)) cornell.assert_equals('(261.8, 0.917, 0.941)', a3.str5_hsv(hsv))