Fix connect features when crossing with pedestrian signals

This commit is contained in:
faebebin
2022-06-24 15:10:40 +02:00
parent 3071d3c5cb
commit 9dcc6d1e7d
2 changed files with 12 additions and 2 deletions

View File

@@ -146,7 +146,7 @@ export function validationCrossingWays(context) {
return {};
}
var pathFeature = entity1IsPath ? entity1 : entity2;
if (['marked', 'unmarked'].indexOf(pathFeature.tags.crossing) !== -1) {
if (['marked', 'unmarked', 'traffic_signals'].indexOf(pathFeature.tags.crossing) !== -1) {
// if the path is a crossing, match the crossing type
return bothLines ? { highway: 'crossing', crossing: pathFeature.tags.crossing } : {};
}

View File

@@ -213,11 +213,21 @@ describe('iD.validations.crossing_ways', function () {
verifySingleCrossingIssue(validate(), { highway: 'crossing' });
});
it('flags road crossing crosswalk', function() {
it('flags road crossing marked crosswalk', function() {
createWaysWithOneCrossingPoint({ highway: 'residential' }, { highway: 'footway', crossing: 'marked' });
verifySingleCrossingIssue(validate(), { highway: 'crossing', crossing: 'marked' });
});
it('flags road crossing crosswalk with traffic_signals', function() {
createWaysWithOneCrossingPoint({ highway: 'residential' }, { highway: 'footway', crossing: 'traffic_signals' });
verifySingleCrossingIssue(validate(), { highway: 'crossing', crossing: 'traffic_signals' });
});
it('flags road crossing unmarked crosswalk', function() {
createWaysWithOneCrossingPoint({ highway: 'residential' }, { highway: 'footway', crossing: 'unmarked' });
verifySingleCrossingIssue(validate(), { highway: 'crossing', crossing: 'unmarked' });
});
it('flags road=track crossing footway', function() {
createWaysWithOneCrossingPoint({ highway: 'track' }, { highway: 'footway' });
verifySingleCrossingIssue(validate(), {});