def test_vector_intersect_with_different_length(): vector1, vector2 = FeatureVector(10), FeatureVector(14) try: vector1.intersect(vector2) assert ( False ), "Vector intersection between two vectors with different length is illegal" except: pass
def test_vector_intersect(): vector1, vector2 = FeatureVector(10), FeatureVector(10) vector1[0] = 10 vector1[4] = 2 vector1[7] = 8 vector2[0] = 4 vector2[3] = 7 vector2[7] = 12 vector = vector1.intersect(vector2) # 0:4, 7: 12 assert vector[0] == 4 assert vector[7] == 8 for index in filter(lambda index: index not in [0, 7], range(10)): assert vector[index] == 0