def test_one_feature(self): feature1 = Feature(LineString([(0, 0), (1, 1)]), { 'feature': 1, 'test 1': 'data 23' }) result = geometry_merge.merge_features([feature1]) self.FeaturesEqual(result, [feature1])
def test_two_features_merge(self): f1data = {'feature': 1, 'test 1': 'data 23'} f2data = {'feature': 2, 'test 2': 'data 34'} feature1 = Feature(LineString([(0, 0), (1, 1)]), f1data) feature2 = Feature(LineString([(1, 1), (2, 2)]), f2data) result = geometry_merge.merge_features([feature1, feature2]) self.FeaturesEqual( result, [Feature(LineString([(0, 0), (1, 1), (2, 2)]), f1data)])
def test_three_non_adjacent_features_merge(self): f1data = {'feature': 1, 'test 1': 'data 23'} f2data = {'feature': 2, 'test 2': 'data 34'} f3data = {'feature': 3, 'test 3': 'data 45'} feature1 = Feature(LineString([(0, 0), (1, 1)]), f1data) feature2 = Feature(LineString([(2, 2), (3, 3)]), f2data) feature3 = Feature(LineString([(1, 1), (2, 2)]), f3data) result = geometry_merge.merge_features([feature1, feature2, feature3]) self.FeaturesEqual( result, [Feature(LineString([(0, 0), (1, 1), (2, 2), (3, 3)]), f1data)])
def test_no_features(self): with self.assertRaises(ValueError): geometry_merge.merge_features([])