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))
Esempio n. 2
0
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))
Esempio n. 5
0
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))
Esempio n. 7
0
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))
Esempio n. 18
0
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))
Esempio n. 20
0
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))
Esempio n. 22
0
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))
Esempio n. 23
0
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))
Esempio n. 24
0
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))
Esempio n. 25
0
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))
Esempio n. 26
0
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))
Esempio n. 27
0
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))
Esempio n. 28
0
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))