def test_cross_product():

    result = [["Employee", "Department", "Department", "Head"],
              ["Smith", "sales", "production", "Mori"],
              ["Smith", "sales", "sales", "Brown"],
              ["Black", "production", "production", "Mori"],
              ["Black", "production", "sales", "Brown"],
              ["White", "production", "production", "Mori"],
              ["White", "production", "sales", "Brown"]]
    assert is_equal(result, cross_product(R1, R2))

    # Empty tables should give back original table
    assert is_equal(R1, cross_product(R1, []))
    assert is_equal(R2, cross_product([], R2))

    # If both tables empty, return
    assert cross_product([], []) is None

    # Test case with different schema
    table1 = [["First Name"],
              ["bat"],
              ["super"]]
    table2 = [["Last Name"],
              ["man"],
              ["girl"]]

    result = [["First Name", "Last Name"],
              ["bat", "man"],
              ["bat", "girl"],
              ["super", "man"],
              ["super", "girl"]]
    assert is_equal(result, cross_product(table1, table2))
def test_cross_product_empty_table():
    """
    Test cross product operation using an empty table.
    """
    empty_table = [["ID Number", "Date of Birth"]]
    assert cross_product(empty_table, R1) is None
    assert cross_product(empty_table, R2) is None
    assert cross_product(R1, empty_table) is None
    assert cross_product(R2, empty_table) is None
def test_cross_product_empty_table():
    """
    Test cross product operation using an empty table.
    """
    empty_table = [["ID Number", "Date of Birth"]]
    assert cross_product(empty_table, R1) is None
    assert cross_product(empty_table, R2) is None
    assert cross_product(R1, empty_table) is None
    assert cross_product(R2, empty_table) is None
def test_cross_product():
    """
    Test cross product operation.
    """

    result = [["Employee", "Department", "Department", "Head"],
              ["Smith", "sales", "production", "Mori"],
              ["Smith", "sales", "sales", "Brown"],
              ["Black", "production", "production", "Mori"],
              ["Black", "production", "sales", "Brown"],
              ["White", "production", "production", "Mori"],
              ["White", "production", "sales", "Brown"]]

    assert is_equal(result, cross_product(R1, R2))
    assert cross_product(R3, R4) is None
def test_cross_product():
    """
    Test cross product operation.
    """

    result = [["Employee", "Department", "Department", "Head"],
              ["Smith", "sales", "production", "Mori"],
              ["Smith", "sales", "sales", "Brown"],
              ["Black", "production", "production", "Mori"],
              ["Black", "production", "sales", "Brown"],
              ["White", "production", "production", "Mori"],
              ["White", "production", "sales", "Brown"]]

    assert is_equal(result, cross_product(R1, R2))
    assert cross_product(R3, R4) is None
def test_cross_product_none():
    """
    Tests selection function to see if None is returned when
    it results in an empty table
    return: None (empty table)
    """
    assert cross_product(BLANK, BLANK2) is None
def test_cross_product_returns_nothing():
    # Test if cross product is none
    t1 = [["Teacher", "Age"],
         ["Susan", 47],
         ["Eric", 65]]
    t2 = [["Teacher", "Age"]]

    assert cross_product(t1, t2) is None
def test_cross_product_student():
    # Test cross product
    result = [["FirstName", "Surname", "Age", "Course"],
              ["Susan", "Sim", 40, "Inf1340"],
              ["Susan", "Sim", 40, "Inf1341"],
              ["Eric", "Yu", 60, "Inf1340"],
              ["Eric", "Yu", 60, "Inf1341"]]

    assert is_equal(result, cross_product(TEACHER, COURSES))
def test_cross_product_returns_none():
    # Checks if  cross_product() function returns "None" if result is empty table.
    t1 = [["Name", "Age"],
          ["Dan", 50],
          ["Mary", 44],
          ["Jose", 54]]
    t2 = [["Name", "Age"]]

    assert cross_product(t1, t2) == None
def test_cross_product_returns_nothing():
     #Tests whether cross_product() function returns None if result is empty table
    t1 = [["Name", "Age"],
         ["Bob", 47],
         ["Mary", 65],
         ["Carla", 54]]
    t2 = [["Name", "Age"]]

    assert cross_product(t1,t2) == None
def test_cross_product():
    """
    Test cross product operation.
    """

    result = [["Employee", "Department", "Department", "Head"],
              ["Smith", "sales", "production", "Mori"],
              ["Smith", "sales", "sales", "Brown"],
              ["Black", "production", "production", "Mori"],
              ["Black", "production", "sales", "Brown"],
              ["White", "production", "production", "Mori"],
              ["White", "production", "sales", "Brown"]]

    result_1 = [["A", "B", "1", "2"], ["A", "B", "3", "4"], ["C", "D", "1", "2"], ["C", "D", "3", "4"], ["First", "Last", "First", "Last"]]

    assert is_equal(result, cross_product(R1, R2))
    assert is_equal(result_1, cross_product(R4, R5))
    assert cross_product(R1, R3) is None
Beispiel #12
0
def test_cross_product():
    """
    Test cross product operation.
    """

    result = [["Employee", "Department", "Department", "Head"],
              ["Smith", "sales", "production", "Mory"],
              ["Smith", "sales", "sales", "Brown"],
              ["Black", "production", "production", "Mory"],
              ["Black", "production", "sales", "Brown"],
              ["White", "production", "production", "Mory"],
              ["White", "production", "sales", "Brown"]]

    result2 = [["A", "B", "C", "D"], [1, 2, 5, 6], [3, 4, 5, 6]]

    assert is_equal(result, cross_product(R1, R2))
    assert is_equal(result2, cross_product(R6, R7))
    assert cross_product(R4, R5) is None
    assert cross_product(R3, R3) is None
def test_cross_product1():
    """
    Test cross_product operation (student version)
    """
    result1 = [['Make', 'Color', 'Year', 'Works(y/n)', 'Make', 'Color', 'Year', 'Works(y/n)'],
               ['Toyota', 'Yellow', 1989, 'y', 'Toyota', 'Yellow', 1989, 'y'],
               ['Toyota', 'Yellow', 1989, 'y', 'Honda', 'Red', 1998, 'n'],
               ['Toyota', 'Yellow', 1989, 'y', 'Dodge', 'Purple', 2000, 'y'],
               ['Honda', 'Orange', 2011, 'n', 'Toyota', 'Yellow', 1989, 'y'],
               ['Honda', 'Orange', 2011, 'n', 'Honda', 'Red', 1998, 'n'],
               ['Honda', 'Orange', 2011, 'n', 'Dodge', 'Purple', 2000, 'y'],
               ['Dodge', 'Purple', 2000, 'y', 'Toyota', 'Yellow', 1989, 'y'],
               ['Dodge', 'Purple', 2000, 'y', 'Honda', 'Red', 1998, 'n'],
               ['Dodge', 'Purple', 2000, 'y', 'Dodge', 'Purple', 2000, 'y'],
               ['Fiat', 'Polka dot', 1999, 'y', 'Toyota', 'Yellow', 1989, 'y'],
               ['Fiat', 'Polka dot', 1999, 'y', 'Honda', 'Red', 1998, 'n'],
               ['Fiat', 'Polka dot', 1999, 'y', 'Dodge', 'Purple', 2000, 'y']]

    result2 = [["Type", "Size", "Preferred Salinity", "Name", "Movement"],
               ["Trout", "Small", "Fresh", "Pawn", "Forward"],
               ["Trout", "Small", "Fresh", "Knight", "L-Shape"],
               ["Dogfish", "Medium", "Salt","Pawn", "Forward"],
               ["Dogfish", "Medium", "Salt", "Knight", "L-Shape"],
               ["Great White", "Large", "Salt", "Pawn", "Forward"],
               ["Great White", "Large", "Salt", "Knight", "L-Shape"]]

    result3 = [["Name", "Movement", "Type", "Size", "Preferred Salinity"],
               ["Pawn", "Forward", "Trout", "Small", "Fresh"],
               ["Pawn", "Forward", "Dogfish", "Medium", "Salt"],
               ["Pawn", "Forward", "Great White", "Large", "Salt"],
               ["Knight", "L-Shape", "Trout", "Small", "Fresh"],
               ["Knight", "L-Shape", "Dogfish", "Medium", "Salt"],
               ["Knight", "L-Shape", "Great White", "Large", "Salt"]]

    # Test cross_product of 2 regular tables
    assert is_equal(result1, cross_product(CARS, TRUCKS))

    # Test cross_product of 2 other regular tables
    assert is_equal(result2, cross_product(FISH, CHESSMEN))

    # Test cross_product of 2 tables in opposite order
    assert is_equal(result3, cross_product(CHESSMEN, FISH))
def test_cross_product():
    """
    Test cross product operation.
    """

    result = [["Employee", "Department", "Department", "Head"],
              ["Smith", "sales", "production", "Mori"],
              ["Smith", "sales", "sales", "Brown"],
              ["Black", "production", "production", "Mori"],
              ["Black", "production", "sales", "Brown"],
              ["White", "production", "production", "Mori"],
              ["White", "production", "sales", "Brown"]]

    result2 = [["A", "B", "C", "D"],
               [1, 2, 5, 6],
               [3, 4, 5, 6]]

    assert is_equal(result, cross_product(R1, R2))
    assert is_equal(result2, cross_product(R6, R7))
    assert cross_product(R4, R5) is None
def test_cross_product_result_empty():
    """
    Test cross product operation with a result empty table.
    """

    t1 = [["Surname", "FirstName"],
              ["Smith", "Mary"],
              ["Black", "Lucy"],
              ["Verdi", "Nico"],
              ["Smith", "Mark"]]
    t2 = [["Surname", "FirstName"]]

    assert cross_product(t1,t2) == None
def test_cross_product_basic():
    """
    Test cross product operation with basic/generic inputs.
    """

    result_1 = [["Employee", "Department", "Department", "Head"],
                ["Smith", "sales", "production", "Mori"],
                ["Smith", "sales", "sales", "Brown"],
                ["Black", "production", "production", "Mori"],
                ["Black", "production", "sales", "Brown"],
                ["White", "production", "production", "Mori"],
                ["White", "production", "sales", "Brown"]]

    assert is_equal(result_1, cross_product(R1, R2))

    result_2 = [['Department', 'Head', 'Employee', 'Department'],
                ['production', 'Mori', 'Smith', 'sales'],
                ['production', 'Mori', 'Black', 'production'],
                ['production', 'Mori', 'White', 'production'],
                ['sales', 'Brown', 'Smith', 'sales'],
                ['sales', 'Brown', 'Black', 'production'],
                ['sales', 'Brown', 'White', 'production']]
    assert is_equal(result_2, cross_product(R2, R1))

    result_3 = [[
        'Surname', 'FirstName', 'Age', 'Salary', 'Employee', 'Department'
    ], ['Smith', 'Mary', 25, 2000, 'Smith', 'sales'],
                ['Smith', 'Mary', 25, 2000, 'Black', 'production'],
                ['Smith', 'Mary', 25, 2000, 'White', 'production'],
                ['Black', 'Lucy', 40, 3000, 'Smith', 'sales'],
                ['Black', 'Lucy', 40, 3000, 'Black', 'production'],
                ['Black', 'Lucy', 40, 3000, 'White', 'production'],
                ['Verdi', 'Nico', 36, 4500, 'Smith', 'sales'],
                ['Verdi', 'Nico', 36, 4500, 'Black', 'production'],
                ['Verdi', 'Nico', 36, 4500, 'White', 'production'],
                ['Smith', 'Mark', 40, 3900, 'Smith', 'sales'],
                ['Smith', 'Mark', 40, 3900, 'Black', 'production'],
                ['Smith', 'Mark', 40, 3900, 'White', 'production']]
    assert is_equal(result_3, cross_product(EMPLOYEES, R1))
def test_cross_product_basic():
    """
    Test cross product operation with basic/generic inputs.
    """

    result_1 = [["Employee", "Department", "Department", "Head"],
                ["Smith", "sales", "production", "Mori"],
                ["Smith", "sales", "sales", "Brown"],
                ["Black", "production", "production", "Mori"],
                ["Black", "production", "sales", "Brown"],
                ["White", "production", "production", "Mori"],
                ["White", "production", "sales", "Brown"]]

    assert is_equal(result_1, cross_product(R1, R2))

    result_2 = [['Department', 'Head', 'Employee', 'Department'],
                ['production', 'Mori', 'Smith', 'sales'],
                ['production', 'Mori', 'Black', 'production'],
                ['production', 'Mori', 'White', 'production'],
                ['sales', 'Brown', 'Smith', 'sales'],
                ['sales', 'Brown', 'Black', 'production'],
                ['sales', 'Brown', 'White', 'production']]
    assert is_equal(result_2, cross_product(R2, R1))

    result_3 = [['Surname', 'FirstName', 'Age', 'Salary', 'Employee', 'Department'],
                ['Smith', 'Mary', 25, 2000, 'Smith', 'sales'],
                ['Smith', 'Mary', 25, 2000, 'Black', 'production'],
                ['Smith', 'Mary', 25, 2000, 'White', 'production'],
                ['Black', 'Lucy', 40, 3000, 'Smith', 'sales'],
                ['Black', 'Lucy', 40, 3000, 'Black', 'production'],
                ['Black', 'Lucy', 40, 3000, 'White', 'production'],
                ['Verdi', 'Nico', 36, 4500, 'Smith', 'sales'],
                ['Verdi', 'Nico', 36, 4500, 'Black', 'production'],
                ['Verdi', 'Nico', 36, 4500, 'White', 'production'],
                ['Smith', 'Mark', 40, 3900, 'Smith', 'sales'],
                ['Smith', 'Mark', 40, 3900, 'Black', 'production'],
                ['Smith', 'Mark', 40, 3900, 'White', 'production']]
    assert is_equal(result_3, cross_product(EMPLOYEES, R1))
def test_cross_product():
    """
    Test cross product operation.
    """

    result = [["Employee", "Department", "Department", "Head"],
              ["Smith", "sales", "production", "Mori"],
              ["Smith", "sales", "sales", "Brown"],
              ["Black", "production", "production", "Mori"],
              ["Black", "production", "sales", "Brown"],
              ["White", "production", "production", "Mori"],
              ["White", "production", "sales", "Brown"]]

    assert is_equal(result, cross_product(R1, R2))

    result = [["Sayings", "People", "Title", "Genre", "Time"],
              ["squanch", "Squanchy", "Catan", "resource", "90"],
              ["squanch", "Squanchy", "XCOM", "space", "150"],
              ["wubalubadubdub", "Rick", "Catan", "resource", "90"],
              ["wubalubadubdub", "Rick", "XCOM", "space", "150"],
              ["ohjeez", "Morty", "Catan", "resource", "90"],
              ["ohjeez", "Morty", "XCOM", "space", "150"]]
    assert is_equal(result, cross_product(RNM, GAMES))
def test_cross_product():
    """
    Test cross product operation.
    """

    result = [["Student", "Department", "Department", "Head"],
              ["Xio", "iSchool", "Rotman", "Mori"],
              ["Xio", "iSchool", "iSchool", "Brown"],
              ["Black", "Rotman", "Rotman", "Mori"],
              ["Black", "Rotman", "iSchool", "Brown"],
              ["White", "Rotman", "Rotman", "Mori"],
              ["White", "Rotman", "iSchool", "Brown"]]

    assert is_equal(result, cross_product(R1, R2))
def test_cross_product():
    """
    Test cross product operation.
    """

    result = [["Student", "Class", "Class", "Professor"],
              ["Zoe", "Programming", "Programming", "Sim"],
              ["Zoe", "Programming", "Web Design", "Yu"],
              ["Jayne", "Web Design", "Web Design", "Yu"],
              ["Jayne", "Web Design", "Programming", "Sim"],
              ["Inara", "Programming", "Programming", "Sim"],
              ["Inara", "Programming", "Web Design", "Yu"]]

    assert is_equal(result, cross_product(R1, R2))
def test_cross_product():
    """
    Test cross product operation.
    """

    result = [
        ["Student", "Class", "Class", "Professor"],
        ["Zoe", "Programming", "Programming", "Sim"],
        ["Zoe", "Programming", "Web Design", "Yu"],
        ["Jayne", "Web Design", "Web Design", "Yu"],
        ["Jayne", "Web Design", "Programming", "Sim"],
        ["Inara", "Programming", "Programming", "Sim"],
        ["Inara", "Programming", "Web Design", "Yu"],
    ]

    assert is_equal(result, cross_product(R1, R2))
def test_cross_product_same_tables():
    """
    Test cross product operation using the same tables.
    """
    result = [["Employee", "Department", "Employee", "Department"],
              ["Smith", "sales", "Smith", "sales"],
              ["Smith", "sales", "Black", "production"],
              ["Smith", "sales", "White", "production"],
              ["Black", "production", "Smith", "sales"],
              ["Black", "production", "Black", "production"],
              ["Black", "production", "White", "production"],
              ["White", "production", "Smith", "sales"],
              ["White", "production", "Black", "production"],
              ["White", "production", "White", "production"]]

    assert is_equal(result, cross_product(R1, R1))
def test_cross_product_same_tables():
    """
    Test cross product operation using the same tables.
    """
    result = [["Employee", "Department", "Employee", "Department"],
              ["Smith", "sales", "Smith", "sales"],
              ["Smith", "sales", "Black", "production"],
              ["Smith", "sales", "White", "production"],
              ["Black", "production", "Smith", "sales"],
              ["Black", "production", "Black", "production"],
              ["Black", "production", "White", "production"],
              ["White", "production", "Smith", "sales"],
              ["White", "production", "Black", "production"],
              ["White", "production", "White", "production"]]

    assert is_equal(result, cross_product(R1, R1))
def test_cross_product_our_test():
    """
    Another test cross product operation
    :return:list of cross product rows
    """

    result = [["Artist", "Album", "Label", "Year"],
              ["The Beatles", "Rubber Soul", "Apple", 1965],
              ["The Beatles", "Rubber Soul", "Decca", 1969],
              ["The Beatles", "Rubber Soul", "Fiction", 1989],
              ["Rolling Stones", "Let It Bleed", "Apple", 1965],
              ["Rolling Stones", "Let It Bleed", "Decca", 1969],
              ["Rolling Stones", "Let It Bleed", "Fiction", 1989],
              ["The Cure", "Disintegration", "Apple", 1965],
              ["The Cure", "Disintegration", "Decca", 1969],
              ["The Cure", "Disintegration", "Fiction", 1989]]

    assert is_equal(result, cross_product(A1, A2))
def test_cross_product():
    """
    Test cross product operation.
    """

    result = [["Employee", "Department", "Department", "Head"],
              ["Smith", "sales", "production", "Mori"],
              ["Smith", "sales", "sales", "Brown"],
              ["Black", "production", "production", "Mori"],
              ["Black", "production", "sales", "Brown"],
              ["White", "production", "production", "Mori"],
              ["White", "production", "sales", "Brown"]]

    shoul = [['Employee', 'Department', 'Department', 'Head'],
             ['Smith', 'sales', 'production', 'Mori'],
             ['Smith', 'sales', 'sales', 'Brown'],
             ['Black', 'production', 'production', 'Mori'],
             ['Black', 'production', 'sales', 'Brown'],
             ['White', 'production', 'production', 'Mori'],
             ['White', 'production', 'sales', 'Brown']]

    assert is_equal(result, cross_product(R1, R2))
def test_cross_product():
    """
    Test cross product operation.
    """

    result = [["Employee", "Department", "Department", "Head"],
              ["Smith", "sales", "production", "Mori"],
              ["Smith", "sales", "sales", "Brown"],
              ["Black", "production", "production", "Mori"],
              ["Black", "production", "sales", "Brown"],
              ["White", "production", "production", "Mori"],
              ["White", "production", "sales", "Brown"]]

    shoul = [['Employee', 'Department', 'Department', 'Head'],
             ['Smith', 'sales', 'production', 'Mori'],
             ['Smith', 'sales', 'sales', 'Brown'],
             ['Black', 'production', 'production', 'Mori'],
             ['Black', 'production', 'sales', 'Brown'],
             ['White', 'production', 'production', 'Mori'],
             ['White', 'production', 'sales', 'Brown']]

    assert is_equal(result, cross_product(R1, R2))
def test_cross_product_team_test():
    #Tests cross product operation
    result = [["Surname", "FirstName", "Age", "Candidate", "Party"],
            ["Smith", "Sammy", 17, "Justin Trudeau", "Liberal"],
            ["Smith", "Sammy", 17, "Stephen Harper", "Conservative"],
            ["Smith", "Sammy", 17, "Tom Mulcair", "NDP"],
            ["Vasquez", "Maria", 23, "Justin Trudeau", "Liberal"],
            ["Vasquez", "Maria", 23, "Stephen Harper", "Conservative"],
            ["Vasquez", "Maria", 23, "Tom Mulcair", "NDP"],
            ["Allen", "Grant", 18,"Justin Trudeau", "Liberal"],
            ["Allen", "Grant", 18, "Stephen Harper", "Conservative"],
            ["Allen", "Grant", 18, "Tom Mulcair", "NDP"],
            ["Allen", "Bethany", 16, "Justin Trudeau", "Liberal"],
            ["Allen", "Bethany", 16, "Stephen Harper", "Conservative"],
            ["Allen", "Bethany", 16, "Tom Mulcair", "NDP"],
            ["Xun", "Lu", 47, "Justin Trudeau", "Liberal"],
            ["Xun", "Lu", 47, "Stephen Harper", "Conservative"],
            ["Xun", "Lu", 47, "Tom Mulcair", "NDP"],
            ["Qian", "Sima", 117, "Justin Trudeau", "Liberal"],
            ["Qian", "Sima", 117, "Stephen Harper", "Conservative"],
            ["Qian", "Sima", 117, "Tom Mulcair", "NDP"]]

    assert is_equal(result, cross_product(VOTERS, CANDIDATES))
def test_empty_cross_product():
    """
    Test cross product operation if uses on empty lists.
    """

    assert cross_product(EMPTY_LIST, COMPLETELY_EMPTY1) is None

def test_cross_product_one_row_table():
    """
    Test cross product operation using the a table with only one row.
    """
    table_with_one_row = [["ID Number", "Date of Birth"], [0001, "01/01/2001"]]

    result_1 = [[
        "ID Number", "Date of Birth", "Surname", "FirstName", "Age", "Salary"
    ], [0001, "01/01/2001", "Smith", "Mary", 25, 2000],
                [0001, "01/01/2001", "Black", "Lucy", 40, 3000],
                [0001, "01/01/2001", "Verdi", "Nico", 36, 4500],
                [0001, "01/01/2001", "Smith", "Mark", 40, 3900]]

    assert is_equal(result_1, cross_product(table_with_one_row, EMPLOYEES))

    result_2 = [[
        "Surname", "FirstName", "Age", "Salary", "ID Number", "Date of Birth"
    ], ["Smith", "Mary", 25, 2000, 0001, "01/01/2001"],
                ["Black", "Lucy", 40, 3000, 0001, "01/01/2001"],
                ["Verdi", "Nico", 36, 4500, 0001, "01/01/2001"],
                ["Smith", "Mark", 40, 3900, 0001, "01/01/2001"]]

    assert is_equal(result_2, cross_product(EMPLOYEES, table_with_one_row))

    result_3 = [["ID Number", "Date of Birth", "ID Number", "Date of Birth"],
                [0001, "01/01/2001", 0001, "01/01/2001"]]

    assert is_equal(result_3,
                    cross_product(table_with_one_row, table_with_one_row))
def test_empty_cross_product():
    """
    Test cross product operation if uses on empty lists.
    """

    assert cross_product(EMPTY_LIST, COMPLETELY_EMPTY1) is None

def test_cross_product_one_row_table():
    """
    Test cross product operation using the a table with only one row.
    """
    table_with_one_row = [["ID Number", "Date of Birth"],
                          [0001, "01/01/2001"]]

    result_1 = [["ID Number", "Date of Birth", "Surname", "FirstName", "Age", "Salary"],
                [0001, "01/01/2001", "Smith", "Mary", 25, 2000],
                [0001, "01/01/2001", "Black", "Lucy", 40, 3000],
                [0001, "01/01/2001", "Verdi", "Nico", 36, 4500],
                [0001, "01/01/2001", "Smith", "Mark", 40, 3900]]

    assert is_equal(result_1, cross_product(table_with_one_row, EMPLOYEES))

    result_2 = [["Surname", "FirstName", "Age", "Salary", "ID Number", "Date of Birth"],
                ["Smith", "Mary", 25, 2000, 0001, "01/01/2001"],
                ["Black", "Lucy", 40, 3000, 0001, "01/01/2001"],
                ["Verdi", "Nico", 36, 4500, 0001, "01/01/2001"],
                ["Smith", "Mark", 40, 3900, 0001, "01/01/2001"]]

    assert is_equal(result_2, cross_product(EMPLOYEES, table_with_one_row))

    result_3 = [["ID Number", "Date of Birth", "ID Number", "Date of Birth"],
                [0001, "01/01/2001", 0001, "01/01/2001"]]

    assert is_equal(result_3, cross_product(table_with_one_row, table_with_one_row))

def cross_product_error():
    """
    Tests when a list is empty.
    """
    assert cross_product(R1,R_empty) == True