def test_flip_vertical() -> None: '''Function Name: Flip Vertical Test Author: Taekwan Oh 101148069 ''' """ Returns Pass or Fail if the image is correctly flipped vetically test_flip_vertical(). >>>test_flip_vertical() Checking pixel @(0, 0) PASSED ------ Checking pixel @(1, 0) PASSED ------ Checking pixel @(2, 0) PASSED """ original = create_image(3, 2) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 1, 0, create_color(90, 90, 90)) set_color(original, 2, 0, create_color(255, 255, 255)) set_color(original, 0, 1, create_color(10, 10, 10)) set_color(original, 1, 1, create_color(0, 0, 0)) set_color(original, 2, 1, create_color(90, 90, 90)) expected = create_image(3, 2) set_color(expected, 0, 0, create_color(10, 10, 10)) set_color(expected, 1, 0, create_color(0, 0, 0)) set_color(expected, 2, 0, create_color(90, 90, 90)) set_color(expected, 0, 1, create_color(0, 0, 0)) set_color(expected, 1, 1, create_color(90, 90, 90)) set_color(expected, 2, 1, create_color(255, 255, 255)) flipped_vertical = flip_vertical(original) for x, y, col in flipped_vertical: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected, x, y))
def test_blue() -> None: '''A test function for the blue_channel filter. written by Yahya Shah. >>>test_blue() ''' print('=============================') print(' TESTING BLUE FILTER ') print('=============================') original = create_image(6, 1) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 1, 0, create_color(255, 0, 0)) set_color(original, 2, 0, create_color(0, 255, 0)) set_color(original, 3, 0, create_color(0, 0, 255)) set_color(original, 4, 0, create_color(127, 127, 127)) set_color(original, 5, 0, create_color(255, 255, 255)) expected = create_image(6, 1) set_color(expected, 0, 0, create_color(0, 0, 0)) set_color(expected, 1, 0, create_color(0, 0, 0)) set_color(expected, 2, 0, create_color(0, 0, 0)) set_color(expected, 3, 0, create_color(0, 0, 255)) set_color(expected, 4, 0, create_color(0, 0, 127)) set_color(expected, 5, 0, create_color(0, 0, 255)) bluescale = T.blue_channel(original) for x, y, col in bluescale: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected, x, y))
def test_red() -> None: """ Developed by Ahmed Abdellah, 101163588 Test whether red_channel function pass or fail. Check if the RGB values are (r,0,0) where r is the red pixel amount. >>> test_red() """ original = create_image(6, 1) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 1, 0, create_color(1, 0, 0)) set_color(original, 2, 0, create_color(127, 127, 127)) set_color(original, 3, 0, create_color(125, 73, 224)) set_color(original, 4, 0, create_color(254, 255, 255)) set_color(original, 5, 0, create_color(255, 255, 255)) expected = create_image(6, 1) set_color(expected, 0, 0, create_color(0, 0, 0)) set_color(expected, 1, 0, create_color(1, 0, 0)) set_color(expected, 2, 0, create_color(127, 0, 0)) set_color(expected, 3, 0, create_color(125, 0, 0)) set_color(expected, 4, 0, create_color(254, 0, 0)) set_color(expected, 5, 0, create_color(255, 0, 0)) red_image = red_channel(original) for x, y, col in red_image: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected, x, y))
def test_flip_horizontal() -> None: '''Function Name: Test Flip Horizontal Author: Kiyara Desilva 101165279 ''' """Returns Pass or Fail if the image is correctly flipped horizontally >>>test_flip_horizontal() Checking pixel @(0, 0) PASSED ------ Checking pixel @(1, 0) PASSED ------ Checking pixel @(2, 0) PASSED """ original = create_image(3, 2) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 1, 0, create_color(40, 40, 40)) set_color(original, 2, 0, create_color(255, 255, 255)) set_color(original, 0, 1, create_color(100, 100, 100)) set_color(original, 1, 1, create_color(0, 0, 0)) set_color(original, 2, 1, create_color(40, 40, 40)) expected = create_image(3, 2) set_color(expected, 0, 0, create_color(40, 40, 40)) set_color(expected, 1, 0, create_color(0, 0, 0)) set_color(expected, 2, 0, create_color(255, 255, 255)) set_color(expected, 0, 1, create_color(100, 100, 100)) set_color(expected, 1, 1, create_color(0, 0, 0)) set_color(expected, 2, 1, create_color(40, 40, 40)) flipped_horizontal = flip_horizontal(original) for x, y, col in flipped_horizontal: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected, x, y))
def test_invert() -> None: '''A test function for invert. >>> test_invert() ''' # Create an image with three pixels. For testing the invert filter, I picked # (0, 0, 0) and (255, 255, 255) as two of the colours, because they are the # brightest and darkest colours (boundary cases). I picked (128, 127, 128) # as the third colour because it's a non-gray colour in the "middle" of the # set of RGB colour codes. original = create_image(3, 1) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 1, 0, create_color(128, 127, 128)) set_color(original, 2, 0, create_color(255, 255, 255)) # Create an image that's identical to the one a correct implementation of # invert should produce when it is passed original. expected = create_image(3, 1) set_color(expected, 0, 0, create_color(255, 255, 255)) set_color(expected, 1, 0, create_color(127, 128, 127)) set_color(expected, 2, 0, create_color(0, 0, 0)) # Now compare the transformed image returned by the filter with the # expected image, one pixel at a time. inverted = invert(original) for x, y, col in inverted: # col is the Color object for the pixel @ (x,y). # There's no need to unpack that object into # RGB components. check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected, x, y))
def test_three_tone(): ''' tests the three-tone filter, assuming the two strings passed in are black and white and gray respectivley. >>>test_three_tone() ''' #Creates the test image original = create_image(6, 1) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 1, 0, create_color(85, 88, 95)) set_color(original, 2, 0, create_color(127, 127, 127)) set_color(original, 3, 0, create_color(189, 172, 224)) set_color(original, 4, 0, create_color(254, 255, 255)) set_color(original, 5, 0, create_color(87, 28, 25)) #Proper Image after three_tone is applied actual = create_image(6, 1) set_color(actual, 0, 0, create_color(0, 0, 0)) set_color(actual, 1, 0, create_color(255, 255, 255)) set_color(actual, 2, 0, create_color(255, 255, 255)) set_color(actual, 3, 0, create_color(128, 128, 128)) set_color(actual, 4, 0, create_color(128, 128, 128)) set_color(actual, 5, 0, create_color(0, 0, 0)) threet_image = three_tone(original, 'black', 'white', 'gray') for x, y, col in threet_image: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(actual, x, y))
def test_horizontal() -> None: """ A test for the flip_horizontal filter. *written by Nathan MacDiarmid* >>> test_horizontal() """ print('=============================') print(' TESTING HORIZONTAL ') print('=============================') original = create_image(1, 6) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 0, 1, create_color(127, 127, 127)) set_color(original, 0, 2, create_color(56, 66, 32)) set_color(original, 0, 3, create_color(150, 177, 132)) set_color(original, 0, 4, create_color(200, 199, 255)) set_color(original, 0, 5, create_color(255, 255, 255)) expected = create_image(1, 6) set_color(expected, 0, 0, create_color(255, 255, 255)) set_color(expected, 0, 1, create_color(200, 199, 255)) set_color(expected, 0, 2, create_color(150, 177, 132)) set_color(expected, 0, 3, create_color(56, 66, 32)) set_color(expected, 0, 4, create_color(127, 127, 127)) set_color(expected, 0, 5, create_color(0, 0, 0)) new_horizontal = T.flip_horizontal(original) for x, y, col in new_horizontal: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected, x, y))
def test_extreme_contrast() -> None: """ Developed by Hussein Rashid, 101141962 Reviewed by Trong Nguyen, 100848232 Test whether extreme_contrast function pass or fail. >>> test_extreme_contrast() """ original = create_image(6, 1) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 1, 0, create_color(127, 127, 127)) set_color(original, 2, 0, create_color(224, 73, 125)) set_color(original, 3, 0, create_color(125, 224, 73)) set_color(original, 4, 0, create_color(73, 125, 224)) set_color(original, 5, 0, create_color(255, 255, 255)) expected = create_image(6, 1) set_color(expected, 0, 0, create_color(0, 0, 0)) set_color(expected, 1, 0, create_color(0, 0, 0)) set_color(expected, 2, 0, create_color(255, 0, 0)) set_color(expected, 3, 0, create_color(0, 255, 0)) set_color(expected, 4, 0, create_color(0, 0, 255)) set_color(expected, 5, 0, create_color(255, 255, 255)) extreme_contrast_image = extreme_contrast(original) for x, y, col in extreme_contrast_image: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected, x, y))
def test_posterize() -> None: '''Function Name: Test Posterize Author: Kiyara Desilva 101165279 ''' ''' Tests the posterize filter function by using a sample image and comparing it with the expected image. >>>test_posterize Checking pixel @(0, 0) PASSED ------ Checking pixel @(1, 0) PASSED ------ Checking pixel @(2, 0) PASSED ''' original = create_image(3, 1) set_color(original, 0, 0, create_color(177, 177, 177)) set_color(original, 1, 0, create_color(0, 0, 0)) set_color(original, 2, 0, create_color(58, 223, 144)) expected = create_image(3, 1) set_color(expected, 0, 0, create_color(159, 159, 159)) set_color(expected, 1, 0, create_color(31, 31, 31)) set_color(expected, 2, 0, create_color(31, 223, 159)) pimage = posterize(original) for x, y, col in pimage: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected, x, y))
def test_flip_vertical() -> None: """ Returns Pass or Fail if the image is correctly flipped vetically test_flip_vertical() """ original = create_image(3, 2) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 1, 0, create_color(90, 90, 90)) set_color(original, 2, 0, create_color(255, 255, 255)) set_color(original, 0, 1, create_color(10, 10, 10)) set_color(original, 1, 1, create_color(0, 0, 0)) set_color(original, 2, 1, create_color(90, 90, 90)) expected = create_image(3, 2) set_color(expected, 0, 0, create_color(10, 10, 10)) set_color(expected, 1, 0, create_color(0, 0, 0)) set_color(expected, 2, 0, create_color(90, 90, 90)) set_color(expected, 0, 1, create_color(0, 0, 0)) set_color(expected, 1, 1, create_color(90, 90, 90)) set_color(expected, 2, 1, create_color(255, 255, 255)) flipped_vertical = flip_vertical(original) for x, y, col in flipped_vertical: # tests each colour of each pixel of the filtered sample image and compares it to the expected image check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected, x, y))
def test_extreme_contrast() -> None: ''' Function Name: Test Extreme Contrast Author: Mohamed Kaddour 101140829 tests the the extreme_contrast functions using two sample images >>>test_extreme_contrast() Checking pixel @(0, 0) PASSED ------ Checking pixel @(1, 0) PASSED ------ ''' #Creates the test image original = create_image(6, 1) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 1, 0, create_color(0, 128, 128)) set_color(original, 2, 0, create_color(127, 127, 127)) set_color(original, 3, 0, create_color(125, 73, 224)) set_color(original, 4, 0, create_color(254, 255, 255)) set_color(original, 5, 0, create_color(126, 127, 128)) #Proper Image after extreme contrast is applied actual = create_image(6, 1) set_color(actual, 0, 0, create_color(0, 0, 0)) set_color(actual, 1, 0, create_color(0, 255, 255)) set_color(actual, 2, 0, create_color(0, 0, 0)) set_color(actual, 3, 0, create_color(0, 0, 255)) set_color(actual, 4, 0, create_color(255, 255, 255)) set_color(actual, 5, 0, create_color(0, 0, 255)) ec_image = extreme_contrast(original) for x, y, col in ec_image: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(actual, x, y))
def test_sepia() -> None: '''Function Name: Test Sepia Author: Adam Burger 101141832 ''' """ Test function for the sepia filter which uses two sample images as well as the check_equal() function. >>>sample_test() Checking pixel @(0, 0) PASSED ------ Checking pixel @(1, 0) PASSED ------ """ original = create_image(3, 2) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 1, 0, create_color(90, 90, 90)) set_color(original, 2, 0, create_color(255, 255, 255)) set_color(original, 0, 1, create_color(10, 10, 10)) set_color(original, 1, 1, create_color(0, 0, 0)) set_color(original, 2, 1, create_color(90, 90, 90)) expected = create_image(3, 2) set_color(expected, 0, 0, create_color(0, 0, 0)) set_color(expected, 1, 0, create_color(103, 90, 76)) set_color(expected, 2, 0, create_color(255, 255, 237)) set_color(expected, 0, 1, create_color(11, 10, 9)) set_color(expected, 1, 1, create_color(0, 0, 0)) set_color(expected, 2, 1, create_color(103, 90, 76)) new_image = sepia(original) for x, y, col in new_image: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected, x, y))
def test_blue() -> None: """ Developed by Hussein Rashid, 101141962 Test whether blue_channel function pass or fail. Check if the RGB values are (0,0,b) where b is the blue pixel amount. >>> test_blue() """ original = create_image(6, 1) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 1, 0, create_color(0, 0, 1)) set_color(original, 2, 0, create_color(127, 127, 127)) set_color(original, 3, 0, create_color(125, 73, 224)) set_color(original, 4, 0, create_color(255, 255, 254)) set_color(original, 5, 0, create_color(255, 255, 255)) expected = create_image(6, 1) set_color(expected, 0, 0, create_color(0, 0, 0)) set_color(expected, 1, 0, create_color(0, 0, 1)) set_color(expected, 2, 0, create_color(0, 0, 127)) set_color(expected, 3, 0, create_color(0, 0, 224)) set_color(expected, 4, 0, create_color(0, 0, 254)) set_color(expected, 5, 0, create_color(0, 0, 255)) blue_image = blue_channel(original) for x, y, col in blue_image: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected, x, y))
def test_two_tone() -> None: '''Function Name: Two Tone Test Author: Taekwan Oh 101148069 ''' ''' tests the two-tone filter, assuming the two strings passed in are black and white respectivley. >>>test_two_tone() Checking pixel @(0, 0) PASSED ------ Checking pixel @(1, 0) PASSED ------ ''' #Creates the test image original = create_image(6, 1) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 1, 0, create_color(0, 0, 1)) set_color(original, 2, 0, create_color(127, 127, 127)) set_color(original, 3, 0, create_color(125, 73, 224)) set_color(original, 4, 0, create_color(254, 255, 255)) set_color(original, 5, 0, create_color(255, 255, 255)) #Proper Image after two_tone is applied actual = create_image(6, 1) set_color(actual, 0, 0, create_color(0, 0, 0)) set_color(actual, 1, 0, create_color(0, 0, 0)) set_color(actual, 2, 0, create_color(0, 0, 0)) set_color(actual, 3, 0, create_color(255, 255, 255)) set_color(actual, 4, 0, create_color(255, 255, 255)) set_color(actual, 5, 0, create_color(255, 255, 255)) twot_image = two_tone(original, 'black', 'white') for x, y, col in twot_image: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(actual, x, y))
def test_green() -> None: """ Developed by Karandev Andotra, 101141882 Test whether green_channel function pass or fail. Check if the RGB values are (0,g,0) where g is the green pixel amount. >>> test_green() """ original = create_image(6, 1) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 1, 0, create_color(0, 1, 0)) set_color(original, 2, 0, create_color(127, 127, 127)) set_color(original, 3, 0, create_color(125, 73, 224)) set_color(original, 4, 0, create_color(255, 254, 255)) set_color(original, 5, 0, create_color(255, 255, 255)) expected = create_image(6, 1) set_color(expected, 0, 0, create_color(0, 0, 0)) set_color(expected, 1, 0, create_color(0, 1, 0)) set_color(expected, 2, 0, create_color(0, 127, 0)) set_color(expected, 3, 0, create_color(0, 73, 0)) set_color(expected, 4, 0, create_color(0, 254, 0)) set_color(expected, 5, 0, create_color(0, 255, 0)) green_image = green_channel(original) for x, y, col in green_image: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected, x, y))
def test_posterize() -> None: """ Developed by Karandev Andotra, 101141882 Reviewed by Hussein Rashid, 101141962 Test whether posterize function pass or fail. >>> test_posterize() """ original = create_image(6, 1) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 1, 0, create_color(1, 1, 1)) set_color(original, 2, 0, create_color(63, 64, 127)) set_color(original, 3, 0, create_color(127, 128, 191)) set_color(original, 4, 0, create_color(191, 192, 255)) set_color(original, 5, 0, create_color(255, 255, 255)) expected = create_image(6, 1) set_color(expected, 0, 0, create_color(31, 31, 31)) set_color(expected, 1, 0, create_color(31, 31, 31)) set_color(expected, 2, 0, create_color(31, 95, 95)) set_color(expected, 3, 0, create_color(95, 159, 159)) set_color(expected, 4, 0, create_color(159, 223, 223)) set_color(expected, 5, 0, create_color(223, 223, 223)) posterize_image = posterize(original) for x, y, col in posterize_image: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected, x, y))
def test_sepia() -> None: """ Developed by Trong Nguyen, 100848232 Reviewed by Ahmed Abdellah, 101163588 Test whether sepia function pass or fail. >>> test_sepia() """ original = create_image(6, 1) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 1, 0, create_color(1, 1, 1)) set_color(original, 2, 0, create_color(63, 63, 63)) set_color(original, 3, 0, create_color(191, 191, 191)) set_color(original, 4, 0, create_color(192, 192, 192)) set_color(original, 5, 0, create_color(255, 255, 255)) expected = create_image(6, 1) set_color(expected, 0, 0, create_color(0, 0, 0)) set_color(expected, 1, 0, create_color(1, 1, 0)) set_color(expected, 2, 0, create_color(72, 63, 53)) set_color(expected, 3, 0, create_color(219, 191, 162)) set_color(expected, 4, 0, create_color(207, 192, 178)) set_color(expected, 5, 0, create_color(255, 255, 237)) sepia_image = sepia(original) for x, y, col in sepia_image: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected, x, y))
def test_extreme_contrast(): ''' tests the two-tone filter, assuming the two strings passed in are black and white respectivley. >>>test_two_tone() Checking pixel @(0, 0) PASSED ------ Checking pixel @(1, 0) PASSED ------ ''' #Creates the test image original = create_image(6, 1) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 1, 0, create_color(0, 128, 128)) set_color(original, 2, 0, create_color(127, 127, 127)) set_color(original, 3, 0, create_color(125, 73, 224)) set_color(original, 4, 0, create_color(254, 255, 255)) set_color(original, 5, 0, create_color(126, 127, 128)) #Proper Image after extreme contrast is applied actual = create_image(6, 1) set_color(actual, 0, 0, create_color(0, 0, 0)) set_color(actual, 1, 0, create_color(0, 255, 255)) set_color(actual, 2, 0, create_color(0, 0, 0)) set_color(actual, 3, 0, create_color(0, 0, 255)) set_color(actual, 4, 0, create_color(255, 255, 255)) set_color(actual, 5, 0, create_color(0, 0, 255)) twot_image = extreme_contrast(original) for x, y, col in twot_image: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(actual, x, y))
def test_blue_channel() -> None: """Function tests the blue_channel filter. -Function written by Nathan Gomes - 101143780 >>> blue_channel_test() (0, 0) PASSED ------ (1, 0) PASSED ------ (2, 0) PASSED ------ >>> blue_channel_test() (0, 0) PASSED ------ (1, 0) FAILED: expected Color(red=0, green=0, blue=202), got Color(red=0, green=0, blue=201) ------ (2, 0) PASSED ------ """ original_image = create_image(3, 1) set_color(original_image, 0, 0, create_color(255, 255, 255)) set_color(original_image, 1, 0, create_color(78, 146, 201)) set_color(original_image, 2, 0, create_color(167, 64, 29)) expected_image = create_image(3, 1) set_color(expected_image, 0, 0, create_color(0, 0, 255)) set_color(expected_image, 1, 0, create_color(0, 0, 201)) set_color(expected_image, 2, 0, create_color(0, 0, 29)) blue_image = blue_channel(original_image) for x, y, col in blue_image: check_equal("(" + str(x) + ", " + str(y) + ")", col, get_color(expected_image, x, y))
def test_green() -> None: '''A test function for the green_channel filter. written by Nathan MacDiarmid. >>>test_green() ''' print('=============================') print(' TESTING GREEN FILTER ') print('=============================') original = create_image(6, 1) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 1, 0, create_color(255, 0, 0)) set_color(original, 2, 0, create_color(0, 255, 0)) set_color(original, 3, 0, create_color(0, 0, 255)) set_color(original, 4, 0, create_color(127, 127, 127)) set_color(original, 5, 0, create_color(255, 255, 255)) expected = create_image(6, 1) set_color(expected, 0, 0, create_color(0, 0, 0)) set_color(expected, 1, 0, create_color(0, 0, 0)) set_color(expected, 2, 0, create_color(0, 255, 0)) set_color(expected, 3, 0, create_color(0, 0, 0)) set_color(expected, 4, 0, create_color(0, 127, 0)) set_color(expected, 5, 0, create_color(0, 255, 0)) greenscale = T.green_channel(original) for x, y, col in greenscale: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected, x, y))
def test_adjust_component() -> None: """Function tests the helper function "_adjust_component." -Written by Nathan Gomes, 101143780 >>> test_adjust_component() (0, 0) PASSED ------ >>> test_adjust_component() (0, 0) FAILED: expected Color(red=31, green=95, blue=158), got Color(red=31, green=95, blue=159) ------ """ original_image = create_image(1, 1) set_color(original_image, 0, 0, create_color(50, 90, 155)) expected_image = create_image(1, 1) set_color(expected_image, 0, 0, create_color(31, 95, 159)) r, g, b = get_color(original_image, 0, 0) adjusted_image = create_image(1, 1) set_color( adjusted_image, 0, 0, create_color(_adjust_component(r), _adjust_component(g), _adjust_component(b))) for x, y, col in adjusted_image: check_equal("(" + str(x) + ", " + str(y) + ")", col, get_color(expected_image, x, y))
def test_detect_edges() -> None: """A test function for the detect_edges filter. Author: Anita Ntomchukwu >>>test_detect_edges() """ print('=============================') print(' TESTING EDGE DETECTION ') print('=============================') original = create_image(1, 6) set_color(original, 0, 0, create_color(23, 34, 26)) set_color(original, 0, 1, create_color(36, 52, 21)) set_color(original, 0, 2, create_color(16, 10, 52)) set_color(original, 0, 3, create_color(96, 79, 42)) set_color(original, 0, 4, create_color(127, 225, 255)) set_color(original, 0, 5, create_color(80, 200, 160)) expected = create_image(1, 6) set_color(expected, 0, 0, create_color(0, 0, 0)) set_color(expected, 0, 1, create_color(0, 0, 0)) set_color(expected, 0, 2, create_color(0, 0, 0)) set_color(expected, 0, 3, create_color(0, 0, 0)) set_color(expected, 0, 4, create_color(0, 0, 0)) set_color(expected, 0, 5, create_color(255, 255, 255)) detect_edges_image = T.detect_edges(original, 5) for x, y, col in detect_edges_image: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected, x, y))
def test_vertical() -> None: """ A test for the flip_vertical filter. Author: Yahya Shah >>> test_vertical() """ print('=============================') print(' TESTING VERTICAL ') print('=============================') original = create_image(6, 1) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 1, 0, create_color(127, 127, 127)) set_color(original, 2, 0, create_color(56, 66, 32)) set_color(original, 3, 0, create_color(150, 177, 132)) set_color(original, 4, 0, create_color(200, 199, 255)) set_color(original, 5, 0, create_color(255, 255, 255)) expected = create_image(6, 1) set_color(expected, 0, 0, create_color(255, 255, 255)) set_color(expected, 1, 0, create_color(200, 199, 255)) set_color(expected, 2, 0, create_color(150, 177, 132)) set_color(expected, 3, 0, create_color(56, 66, 32)) set_color(expected, 4, 0, create_color(127, 127, 127)) set_color(expected, 5, 0, create_color(0, 0, 0)) vert = T.flip_vertical(original) for x, y, col in vert: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected, x, y))
def test_posterize() -> None: """A test function for the posterize filter. Author: Anita Ntomchukwu >>>test_posterize() """ print('=============================') print(' TESTING POSTERIZE ') print('=============================') original = create_image(6, 1) set_color(original, 0, 0, create_color(72, 240, 0)) set_color(original, 1, 0, create_color(80, 127, 255)) set_color(original, 2, 0, create_color(255, 255, 255)) set_color(original, 3, 0, create_color(117, 111, 123)) set_color(original, 4, 0, create_color(33, 72, 66)) set_color(original, 5, 0, create_color(202, 152, 247)) expected = create_image(6, 1) set_color(expected, 0, 0, create_color(95, 223, 31)) set_color(expected, 1, 0, create_color(95, 95, 223)) set_color(expected, 2, 0, create_color(223, 223, 223)) set_color(expected, 3, 0, create_color(95, 95, 95)) set_color(expected, 4, 0, create_color(31, 95, 95)) set_color(expected, 5, 0, create_color(223, 159, 223)) posterize_image = T.posterize(original) for x, y, col in posterize_image: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected, x, y))
def test_sepia() -> None: """ A test function for the sepia filter. *written by Nathan MacDiarmid* >>> test_sepia() """ print('=============================') print(' TESTING SEPIA ') print('=============================') original = create_image(6, 1) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 1, 0, create_color(127, 127, 127)) set_color(original, 2, 0, create_color(56, 66, 32)) set_color(original, 3, 0, create_color(150, 177, 132)) set_color(original, 4, 0, create_color(200, 199, 255)) set_color(original, 5, 0, create_color(255, 255, 255)) expected = create_image(6, 1) set_color(expected, 0, 0, create_color(0, 0, 0)) set_color(expected, 1, 0, create_color(146, 127, 107)) set_color(expected, 2, 0, create_color(56, 51, 45)) set_color(expected, 3, 0, create_color(175, 153, 130)) set_color(expected, 4, 0, create_color(235, 218, 202)) set_color(expected, 5, 0, create_color(255, 255, 237)) new_sepia = T.sepia(original) for x, y, col in new_sepia: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected, x, y))
def test_extreme_contrast() -> None: '''A test function for the extreme contrast filter. *written by Sam Hurd* >>>test_extreme_contrast() ''' print('=============================') print(' TESTING EXTREME CONTRAST ') print('=============================') original = create_image(6, 1) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 1, 0, create_color(255, 127, 129)) set_color(original, 2, 0, create_color(0, 255, 0)) set_color(original, 3, 0, create_color(128, 128, 128)) set_color(original, 4, 0, create_color(127, 127, 127)) set_color(original, 5, 0, create_color(255, 255, 255)) expected = create_image(6, 1) set_color(expected, 0, 0, create_color(0, 0, 0)) set_color(expected, 1, 0, create_color(255, 0, 255)) set_color(expected, 2, 0, create_color(0, 255, 0)) set_color(expected, 3, 0, create_color(255, 255, 255)) set_color(expected, 4, 0, create_color(0, 0, 0)) set_color(expected, 5, 0, create_color(255, 255, 255)) extreme_contrast_image = T.extreme_contrast(original) for x, y, col in extreme_contrast_image: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected, x, y))
def test_red() -> None: '''A test function for the red_channel filter. *written by Sam Hurd* >>>test_red() ''' print('=============================') print(' TESTING RED FILTER ') print('=============================') original = create_image(6, 1) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 1, 0, create_color(255, 0, 0)) set_color(original, 2, 0, create_color(0, 255, 0)) set_color(original, 3, 0, create_color(0, 0, 255)) set_color(original, 4, 0, create_color(127, 127, 127)) set_color(original, 5, 0, create_color(255, 255, 255)) expected = create_image(6, 1) set_color(expected, 0, 0, create_color(0, 0, 0)) set_color(expected, 1, 0, create_color(255, 0, 0)) set_color(expected, 2, 0, create_color(0, 0, 0)) set_color(expected, 3, 0, create_color(0, 0, 0)) set_color(expected, 4, 0, create_color(127, 0, 0)) set_color(expected, 5, 0, create_color(255, 0, 0)) red = T.red_channel(original) for x, y, col in red: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected, x, y))
def test_detect_edges_better() -> None: """Returns the information on whether or not the filter detect_edges_better works properly or not. The function returns the pixels that have passed the test. All pixels have to pass in order to confirm the success of the detect_edges_better filter. Otherwise, the filter does not work properly. -Function written by Malak Abdou - 101139692 >>> test_detect_edges_better() (0,0) PASSED (1,0) PASSED (2,0) PASSED (3,0) PASSED (0,1) PASSED (1,1) PASSED (2,1) PASSED (3,1) PASSED References: check_equal function from fib2.py, provided by ECOR 1051 staff. """ black = create_color(0, 0, 0) white = create_color(255, 255, 255) original = create_image(4, 2) set_color(original, 0, 0, create_color(15, 250, 7)) set_color(original, 1, 0, create_color(8, 19, 10)) set_color(original, 2, 0, create_color(5, 55, 15)) set_color(original, 3, 0, create_color(32, 206, 56)) set_color(original, 0, 1, create_color(43, 50, 21)) set_color(original, 1, 1, create_color(11, 23, 40)) set_color(original, 2, 1, create_color(54, 26, 190)) set_color(original, 3, 1, create_color(21, 68, 48)) expected = create_image(4, 2) set_color(expected, 0, 0, create_color(0, 0, 0)) set_color(expected, 1, 0, create_color(255, 255, 255)) set_color(expected, 2, 0, create_color(0, 0, 0)) set_color(expected, 3, 0, create_color(0, 0, 0)) set_color(expected, 0, 1, create_color(255, 255, 255)) set_color(expected, 1, 1, create_color(0, 0, 0)) set_color(expected, 2, 1, create_color(0, 0, 0)) set_color(expected, 3, 1, create_color(255, 255, 255)) threshold = 15 #Assume threshold chosen is 15. edges_image = detect_edges_better(original, threshold) for x, y, color in edges_image: check_equal('(' + str(x) + ',' + str(y) + ')', color, get_color(expected, x, y))
def test_three_tone() -> None: """ Developed by Ahmed Abdellah, 101163588 Reviewed by Karandev Andotra, 101141882 Test whether three_tone function pass or fail. >>> test_three_tone() """ original = create_image(6, 1) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 1, 0, create_color(80, 84, 88)) set_color(original, 2, 0, create_color(80, 85, 90)) set_color(original, 3, 0, create_color(150, 170, 190)) set_color(original, 4, 0, create_color(170, 171, 172)) set_color(original, 5, 0, create_color(255, 255, 255)) expected_wbr = create_image(6, 1) set_color(expected_wbr, 0, 0, create_color(0, 0, 0)) set_color(expected_wbr, 1, 0, create_color(0, 0, 0)) set_color(expected_wbr, 2, 0, create_color(255, 255, 255)) set_color(expected_wbr, 3, 0, create_color(255, 255, 255)) set_color(expected_wbr, 4, 0, create_color(255, 0, 0)) set_color(expected_wbr, 5, 0, create_color(255, 0, 0)) expected_lby = create_image(6, 1) set_color(expected_lby, 0, 0, create_color(0, 255, 0)) set_color(expected_lby, 1, 0, create_color(0, 255, 0)) set_color(expected_lby, 2, 0, create_color(0, 0, 255)) set_color(expected_lby, 3, 0, create_color(0, 0, 255)) set_color(expected_lby, 4, 0, create_color(255, 255, 0)) set_color(expected_lby, 5, 0, create_color(255, 255, 0)) expected_cmg = create_image(6, 1) set_color(expected_cmg, 0, 0, create_color(0, 255, 255)) set_color(expected_cmg, 1, 0, create_color(0, 255, 255)) set_color(expected_cmg, 2, 0, create_color(255, 0, 255)) set_color(expected_cmg, 3, 0, create_color(255, 0, 255)) set_color(expected_cmg, 4, 0, create_color(128, 128, 128)) set_color(expected_cmg, 5, 0, create_color(128, 128, 128)) three_tone_image = three_tone(original, "black", "white", "red") for x, y, col in three_tone_image: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected_wbr, x, y)) three_tone_image = three_tone(original, "lime", "blue", "yellow") for x, y, col in three_tone_image: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected_lby, x, y)) three_tone_image = three_tone(original, "cyan", "magenta", "gray") for x, y, col in three_tone_image: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected_cmg, x, y))
def test_extreme() -> None: """A test function for extreme contrast. -Test function written by Leanne Matamoros - 101147405 >>> test_extreme() Checking pixel @(0, 0) PASSED ------ Checking pixel @(1, 0) PASSED ------ Checking pixel @(2, 0) PASSED ------ Checking pixel @(3, 0) PASSED ------ Checking pixel @(4, 0) PASSED ------ Checking pixel @(5, 0) PASSED ------ >>> test_extreme() Checking pixel @(0, 0) PASSED ------ Checking pixel @(1, 0) PASSED ------ Checking pixel @(2, 0) PASSED ------ Checking pixel @(3, 0) FAILED: expected Color(red=0, green=0, blue=255),\ got Color(red=0, green=0, blue=25) ------ Checking pixel @(4, 0) PASSED ------ Checking pixel @(5, 0) PASSED ------ """ original = create_image(6, 1) set_color(original, 0, 0, create_color(0, 0, 0)) set_color(original, 1, 0, create_color(0, 0, 1)) set_color(original, 2, 0, create_color(127, 127, 127)) set_color(original, 3, 0, create_color(125, 73, 224)) set_color(original, 4, 0, create_color(254, 255, 255)) set_color(original, 5, 0, create_color(255, 255, 255)) expected = create_image(6, 1) set_color(expected, 0, 0, create_color(0, 255, 0)) set_color(expected, 1, 0, create_color(0, 0, 0)) set_color(expected, 2, 0, create_color(0, 0, 0)) set_color(expected, 3, 0, create_color(0, 0, 255)) set_color(expected, 4, 0, create_color(255, 255, 255)) set_color(expected, 5, 0, create_color(255, 255, 255)) extreme_image = extreme_contrast(original) for x, y, col in extreme_image: check_equal('Checking pixel @(' + str(x) + ', ' + str(y) + ')', col, get_color(expected, x, y))