forked from MapComplete/MapComplete
		
	Rename tests to test; add a few tests
This commit is contained in:
		
							parent
							
								
									df706d2f97
								
							
						
					
					
						commit
						c3859d56c6
					
				
					 28 changed files with 33 additions and 5 deletions
				
			
		
							
								
								
									
										186
									
								
								test/Logic/GeoOperations.spec.ts
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										186
									
								
								test/Logic/GeoOperations.spec.ts
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,186 @@ | |||
| import {describe} from 'mocha' | ||||
| import {expect} from 'chai' | ||||
| import * as turf from "@turf/turf"; | ||||
| import {GeoOperations} from "../../Logic/GeoOperations"; | ||||
| 
 | ||||
| describe("GeoOperations", () => { | ||||
|      | ||||
|     describe("calculateOverlap", () => { | ||||
|         it("should not give too much overlap (regression test)", () => { | ||||
|             const polyGrb = { | ||||
|                 "type": "Feature", | ||||
|                 "properties": { | ||||
|                     "osm_id": "25189153", | ||||
|                     "size_grb_building": "217.14", | ||||
|                     "addr:housenumber": "173", | ||||
|                     "addr:street": "Kortrijksestraat", | ||||
|                     "building": "house", | ||||
|                     "source:geometry:entity": "Gbg", | ||||
|                     "source:geometry:date": "2015/02/27", | ||||
|                     "source:geometry:oidn": "1729460", | ||||
|                     "source:geometry:uidn": "8713648", | ||||
|                     "H_DTM_MIN": "17.28", | ||||
|                     "H_DTM_GEM": "17.59", | ||||
|                     "H_DSM_MAX": "29.04", | ||||
|                     "H_DSM_P99": "28.63", | ||||
|                     "HN_MAX": "11.45", | ||||
|                     "HN_P99": "11.04", | ||||
|                     "detection_method": "from existing OSM building source: house ,hits (3)", | ||||
|                     "auto_building": "house", | ||||
|                     "size_shared": "210.68", | ||||
|                     "size_source_building": "212.63", | ||||
|                     "id": "https://betadata.grbosm.site/grb?bbox=360935.6475626023,6592540.815539878,361088.52161917265,6592693.689596449/37", | ||||
|                     "_lat": "50.83736194999996", | ||||
|                     "_lon": "3.2432137000000116", | ||||
|                     "_layer": "GRB", | ||||
|                     "_length": "48.51529464293261", | ||||
|                     "_length:km": "0.0", | ||||
|                     "_now:date": "2021-12-05", | ||||
|                     "_now:datetime": "2021-12-05 21:51:40", | ||||
|                     "_loaded:date": "2021-12-05", | ||||
|                     "_loaded:datetime": "2021-12-05 21:51:40" | ||||
|                 }, | ||||
|                 "geometry": { | ||||
|                     "type": "Polygon", | ||||
|                     "coordinates": [ | ||||
|                         [ | ||||
|                             [ | ||||
|                                 3.2431059999999974, | ||||
|                                 50.83730270000021 | ||||
|                             ], | ||||
|                             [ | ||||
|                                 3.243174299999987, | ||||
|                                 50.83728850000007 | ||||
|                             ], | ||||
|                             [ | ||||
|                                 3.2432116000000173, | ||||
|                                 50.83736910000003 | ||||
|                             ], | ||||
|                             [ | ||||
|                                 3.2433214000000254, | ||||
|                                 50.83740350000011 | ||||
|                             ], | ||||
|                             [ | ||||
|                                 3.24329779999996, | ||||
|                                 50.837435399999855 | ||||
|                             ], | ||||
|                             [ | ||||
|                                 3.2431881000000504, | ||||
|                                 50.83740090000025 | ||||
|                             ], | ||||
|                             [ | ||||
|                                 3.243152699999997, | ||||
|                                 50.83738980000017 | ||||
|                             ], | ||||
|                             [ | ||||
|                                 3.2431059999999974, | ||||
|                                 50.83730270000021 | ||||
|                             ] | ||||
|                         ] | ||||
|                     ] | ||||
|                 }, | ||||
|                 "id": "https://betadata.grbosm.site/grb?bbox=360935.6475626023,6592540.815539878,361088.52161917265,6592693.689596449/37", | ||||
|                 "_lon": 3.2432137000000116, | ||||
|                 "_lat": 50.83736194999996, | ||||
|                 "bbox": { | ||||
|                     "maxLat": 50.837435399999855, | ||||
|                     "maxLon": 3.2433214000000254, | ||||
|                     "minLat": 50.83728850000007, | ||||
|                     "minLon": 3.2431059999999974 | ||||
|                 } | ||||
|             } | ||||
|             const polyHouse = { | ||||
|                 "type": "Feature", | ||||
|                 "id": "way/594963177", | ||||
|                 "properties": { | ||||
|                     "timestamp": "2021-12-05T04:04:55Z", | ||||
|                     "version": 3, | ||||
|                     "changeset": 114571409, | ||||
|                     "user": "Pieter Vander Vennet", | ||||
|                     "uid": 3818858, | ||||
|                     "addr:housenumber": "171", | ||||
|                     "addr:street": "Kortrijksestraat", | ||||
|                     "building": "house", | ||||
|                     "source:geometry:date": "2018-10-22", | ||||
|                     "source:geometry:ref": "Gbg/5096537", | ||||
|                     "_last_edit:contributor": "Pieter Vander Vennet", | ||||
|                     "_last_edit:contributor:uid": 3818858, | ||||
|                     "_last_edit:changeset": 114571409, | ||||
|                     "_last_edit:timestamp": "2021-12-05T04:04:55Z", | ||||
|                     "_version_number": 3, | ||||
|                     "id": "way/594963177", | ||||
|                     "_backend": "https://www.openstreetmap.org", | ||||
|                     "_lat": "50.83736395", | ||||
|                     "_lon": "3.2430937", | ||||
|                     "_layer": "OSM-buildings", | ||||
|                     "_length": "43.561938680928506", | ||||
|                     "_length:km": "0.0", | ||||
|                     "_now:date": "2021-12-05", | ||||
|                     "_now:datetime": "2021-12-05 21:51:40", | ||||
|                     "_loaded:date": "2021-12-05", | ||||
|                     "_loaded:datetime": "2021-12-05 21:51:39", | ||||
|                     "_surface": "93.32785810484549", | ||||
|                     "_surface:ha": "0" | ||||
|                 }, | ||||
|                 "geometry": { | ||||
|                     "type": "Polygon", | ||||
|                     "coordinates": [ | ||||
|                         [ | ||||
|                             [ | ||||
|                                 3.2429993, | ||||
|                                 50.8373243 | ||||
|                             ], | ||||
|                             [ | ||||
|                                 3.243106, | ||||
|                                 50.8373027 | ||||
|                             ], | ||||
|                             [ | ||||
|                                 3.2431527, | ||||
|                                 50.8373898 | ||||
|                             ], | ||||
|                             [ | ||||
|                                 3.2431881, | ||||
|                                 50.8374009 | ||||
|                             ], | ||||
|                             [ | ||||
|                                 3.2431691, | ||||
|                                 50.8374252 | ||||
|                             ], | ||||
|                             [ | ||||
|                                 3.2430936, | ||||
|                                 50.837401 | ||||
|                             ], | ||||
|                             [ | ||||
|                                 3.243046, | ||||
|                                 50.8374112 | ||||
|                             ], | ||||
|                             [ | ||||
|                                 3.2429993, | ||||
|                                 50.8373243 | ||||
|                             ] | ||||
|                         ] | ||||
|                     ] | ||||
|                 }, | ||||
|                 "_lon": 3.2430937, | ||||
|                 "_lat": 50.83736395, | ||||
|                 "bbox": { | ||||
|                     "maxLat": 50.8374252, | ||||
|                     "maxLon": 3.2431881, | ||||
|                     "minLat": 50.8373027, | ||||
|                     "minLon": 3.2429993 | ||||
|                 } | ||||
|             } | ||||
| 
 | ||||
|             const p0 = turf.polygon(polyGrb.geometry.coordinates) | ||||
|             expect(p0).not.null | ||||
|             const p1 = turf.polygon(polyHouse.geometry.coordinates) | ||||
|             expect(p1).not.null | ||||
| 
 | ||||
| 
 | ||||
|             const overlaps = GeoOperations.calculateOverlap(polyGrb, [polyHouse]) | ||||
|             expect(overlaps).empty | ||||
|             const overlapsRev = GeoOperations.calculateOverlap(polyHouse, [polyGrb]) | ||||
|             expect(overlapsRev).empty | ||||
|         }) | ||||
|     }) | ||||
| }) | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue