def test_issue306(self): """Issue306: CANVAS doesnt add generated layers in tests. See https://github.com/AIFDR/inasafe/issues/306""" result, message = setup_scenario( self.dock, hazard='Continuous Flood', exposure='Population', function='Need evacuation', function_id='FloodEvacuationRasterHazardFunction') self.assertTrue(result, message) LOGGER.info("Canvas list before:\n%s" % canvas_list()) # Enable on-the-fly reprojection set_canvas_crs(GOOGLECRS, True) set_jakarta_google_extent(self.dock) before_count = len(CANVAS.layers()) # print 'Before count %s' % before_count # Press RUN self.dock.accept() # test issue #306 after_count = len(CANVAS.layers()) LOGGER.info("Canvas list after:\n%s" % canvas_list()) message = ('Layer was not added to canvas (%s before, %s after)' % ( before_count, after_count)) # print 'After count %s' % after_count self.assertTrue(before_count == after_count - 1, message)
def test_issue306(self): """Issue306: CANVAS doesnt add generated layers in tests. See https://github.com/AIFDR/inasafe/issues/306""" result, message = setup_scenario( DOCK, hazard='A flood in Jakarta like in 2007', exposure='Penduduk Jakarta', function='Need evacuation', function_id='Flood Evacuation Function') self.assertTrue(result, message) LOGGER.info("Canvas list before:\n%s" % canvas_list()) # Enable on-the-fly reprojection set_canvas_crs(GOOGLECRS, True) set_jakarta_google_extent(DOCK) before_count = len(CANVAS.layers()) # print 'Before count %s' % before_count # Press RUN DOCK.accept() # test issue #306 after_count = len(CANVAS.layers()) LOGGER.info("Canvas list after:\n%s" % canvas_list()) message = ('Layer was not added to canvas (%s before, %s after)' % (before_count, after_count)) # print 'After count %s' % after_count self.assertTrue(before_count == after_count - 1, message)
def test_issue47(self): """Issue47: Hazard & exposure data are in different proj to viewport. See https://github.com/AIFDR/inasafe/issues/47""" result, message = setup_scenario( self.dock, hazard='Continuous Flood', exposure='Population', function='Need evacuation', function_id='FloodEvacuationRasterHazardFunction') self.assertTrue(result, message) # Enable on-the-fly reprojection set_canvas_crs(GOOGLECRS, True) set_jakarta_google_extent(self.dock) # Press RUN self.dock.accept() result = self.dock.wvResults.page_to_text() message = 'Result not as expected: %s' % result # searching for values 6700 clean water [l] in result self.assertTrue(format_int(6700) in result, message)
def test_issue306(self): """Issue306: CANVAS doesnt add generated layers in tests. See https://github.com/AIFDR/inasafe/issues/306 """ settings = QtCore.QSettings() settings.setValue('inasafe/analysis_extents_mode', 'HazardExposure') result, message = setup_scenario( self.dock, hazard='Continuous Flood', exposure='Population', function='Need evacuation', function_id='FloodEvacuationRasterHazardFunction') self.assertTrue(result, message) # LOGGER.info("Canvas list before:\n%s" % canvas_list()) # Enable on-the-fly reprojection set_canvas_crs(GOOGLECRS, True) set_jakarta_google_extent(self.dock) before_count = len(CANVAS.layers()) # Press RUN self.dock.accept() # test issue #306 after_count = len(CANVAS.layers()) # LOGGER.info("Canvas list after:\n%s" % canvas_list()) message = ('Layer was not added to canvas (%s before, %s after)' % (before_count, after_count)) # print 'After count %s' % after_count self.assertEqual(before_count, after_count - 1, message)
def test_rubber_bands(self): """Test that the rubber bands get updated.""" setup_scenario(DOCK, hazard='A flood in Jakarta like in 2007', exposure='People', function='Need evacuation', function_id='Flood Evacuation Function', aggregation_layer='kabupaten jakarta singlepart', aggregation_enabled_flag=True) DOCK.extent.show_rubber_bands = True expected_vertex_count = 5 # 4326 with enabled on-the-fly reprojection - check next set_canvas_crs(GEOCRS, True) set_small_jakarta_extent(DOCK) DOCK.show_next_analysis_extent() next_band = DOCK.extent.next_analysis_rubberband self.assertEqual(expected_vertex_count, next_band.numberOfVertices()) # 4326 with disabled on-the-fly reprojection - check next set_canvas_crs(GEOCRS, False) set_small_jakarta_extent(DOCK) DOCK.show_next_analysis_extent() next_band = DOCK.extent.next_analysis_rubberband self.assertEqual(expected_vertex_count, next_band.numberOfVertices()) # 900913 with enabled on-the-fly reprojection - check next set_canvas_crs(GOOGLECRS, True) set_jakarta_google_extent(DOCK) next_band = DOCK.extent.next_analysis_rubberband self.assertEqual(expected_vertex_count, next_band.numberOfVertices()) # 900913 with enabled on-the-fly reprojection - check last set_canvas_crs(GOOGLECRS, True) set_jakarta_google_extent(DOCK) # Press RUN # noinspection PyCallByClass,PyTypeChecker DOCK.accept() # DOCK.show_extent() last_band = DOCK.extent.last_analysis_rubberband geometry = last_band.asGeometry().exportToWkt() expected = ( 'LINESTRING(11876228.33329810947179794 -695807.82839082507416606, ' '11908350.67106631398200989 -695807.82839082507416606, ' '11908350.67106631398200989 -678083.54461829655338079, ' '11876228.33329810947179794 -678083.54461829655338079, ' '11876228.33329810947179794 -695807.82839082507416606)') expected_list = self.wkt_to_coordinates(expected) actual_list = self.wkt_to_coordinates(geometry) for item in xrange(0, len(expected_list)): print item, expected_list[item], actual_list[item] self.assertAlmostEqual(expected_list[item][0], actual_list[item][0]) self.assertAlmostEqual(expected_list[item][1], actual_list[item][1]) self.assertEqual(expected_vertex_count, last_band.numberOfVertices())
def test_rubber_bands(self): """Test that the rubber bands get updated.""" setup_scenario(DOCK, hazard='Continuous Flood', exposure='Population', function='Need evacuation', function_id='FloodEvacuationRasterHazardFunction', aggregation_layer=u'D\xedstr\xedct\'s of Jakarta', aggregation_enabled_flag=True) DOCK.extent.show_rubber_bands = True expected_vertex_count = 5 # 4326 with enabled on-the-fly reprojection - check next set_canvas_crs(GEOCRS, True) set_small_jakarta_extent(DOCK) DOCK.show_next_analysis_extent() next_band = DOCK.extent.next_analysis_rubberband self.assertEqual(expected_vertex_count, next_band.numberOfVertices()) # 4326 with disabled on-the-fly reprojection - check next set_canvas_crs(GEOCRS, False) set_small_jakarta_extent(DOCK) DOCK.show_next_analysis_extent() next_band = DOCK.extent.next_analysis_rubberband self.assertEqual(expected_vertex_count, next_band.numberOfVertices()) # 900913 with enabled on-the-fly reprojection - check next set_canvas_crs(GOOGLECRS, True) set_jakarta_google_extent(DOCK) next_band = DOCK.extent.next_analysis_rubberband self.assertEqual(expected_vertex_count, next_band.numberOfVertices()) # 900913 with enabled on-the-fly reprojection - check last set_canvas_crs(GOOGLECRS, True) set_jakarta_google_extent(DOCK) # Press RUN # noinspection PyCallByClass,PyTypeChecker DOCK.accept() # DOCK.show_extent() last_band = DOCK.extent.last_analysis_rubberband geometry = last_band.asGeometry().exportToWkt() expected = ( 'LINESTRING(11889533.87392097897827625 -691251.80866545776370913, ' '11893986.65355271473526955 -691251.80866545776370913, ' '11893986.65355271473526955 -686773.02196401008404791, ' '11889533.87392097897827625 -686773.02196401008404791, ' '11889533.87392097897827625 -691251.80866545776370913)') expected_list = self.wkt_to_coordinates(expected) actual_list = self.wkt_to_coordinates(geometry) for item in xrange(0, len(expected_list)): print item, expected_list[item], actual_list[item] self.assertAlmostEqual(expected_list[item][0], actual_list[item][0]) self.assertAlmostEqual(expected_list[item][1], actual_list[item][1]) self.assertEqual(expected_vertex_count, last_band.numberOfVertices())
def test_issue47(self): """Issue47: Hazard & exposure data are in different proj to viewport. See https://github.com/AIFDR/inasafe/issues/47""" result, message = setup_scenario( DOCK, hazard='A flood in Jakarta like in 2007', exposure='Penduduk Jakarta', function='Need evacuation', function_id='Flood Evacuation Function') self.assertTrue(result, message) # Enable on-the-fly reprojection set_canvas_crs(GOOGLECRS, True) set_jakarta_google_extent(DOCK) # Press RUN DOCK.accept() result = DOCK.wvResults.page_to_text() message = 'Result not as expected: %s' % result self.assertTrue(format_int(35793) in result, message)
def test_rubber_bands(self): """Test that the rubber bands get updated.""" setup_scenario( self.dock, hazard='Continuous Flood', exposure='Population', function='Need evacuation', function_id='FloodEvacuationRasterHazardFunction', aggregation_layer=u'D\xedstr\xedct\'s of Jakarta', aggregation_enabled_flag=True) self.dock.extent.show_rubber_bands = True expected_vertex_count = 5 # 4326 with enabled on-the-fly reprojection - check next set_canvas_crs(GEOCRS, True) set_small_jakarta_extent(self.dock) self.dock.show_next_analysis_extent() next_band = self.dock.extent.next_analysis_rubberband self.assertEqual(expected_vertex_count, next_band.numberOfVertices()) # 4326 with disabled on-the-fly reprojection - check next set_canvas_crs(GEOCRS, False) set_small_jakarta_extent(self.dock) self.dock.show_next_analysis_extent() next_band = self.dock.extent.next_analysis_rubberband self.assertEqual(expected_vertex_count, next_band.numberOfVertices()) # 900913 with enabled on-the-fly reprojection - check next set_canvas_crs(GOOGLECRS, True) set_jakarta_google_extent(self.dock) next_band = self.dock.extent.next_analysis_rubberband self.assertEqual(expected_vertex_count, next_band.numberOfVertices()) # 900913 with enabled on-the-fly reprojection - check last set_canvas_crs(GOOGLECRS, True) set_jakarta_google_extent(self.dock) # Press RUN # noinspection PyCallByClass,PyTypeChecker self.dock.accept() # self.dock.show_extent() last_band = self.dock.extent.last_analysis_rubberband geometry = last_band.asGeometry().exportToWkt() expected = ( 'LINESTRING(11889533.87392097897827625 -691251.80866545776370913, ' '11893986.65355271473526955 -691251.80866545776370913, ' '11893986.65355271473526955 -686773.02196401008404791, ' '11889533.87392097897827625 -686773.02196401008404791, ' '11889533.87392097897827625 -691251.80866545776370913)') expected_list = self.wkt_to_coordinates(expected) actual_list = self.wkt_to_coordinates(geometry) for item in xrange(0, len(expected_list)): print item, expected_list[item], actual_list[item] self.assertAlmostEqual( expected_list[item][0], actual_list[item][0]) self.assertAlmostEqual( expected_list[item][1], actual_list[item][1]) self.assertEqual( expected_vertex_count, last_band.numberOfVertices() )
def test_rubber_bands(self): """Test that the rubber bands get updated.""" setup_scenario( DOCK, hazard='A flood in Jakarta like in 2007', exposure='People', function='Need evacuation', function_id='Flood Evacuation Function', aggregation_layer='kabupaten jakarta singlepart', aggregation_enabled_flag=True) DOCK.extent.show_rubber_bands = True expected_vertex_count = 5 # 4326 with enabled on-the-fly reprojection - check next set_canvas_crs(GEOCRS, True) set_small_jakarta_extent(DOCK) DOCK.show_next_analysis_extent() next_band = DOCK.extent.next_analysis_rubberband self.assertEqual(expected_vertex_count, next_band.numberOfVertices()) # 4326 with disabled on-the-fly reprojection - check next set_canvas_crs(GEOCRS, False) set_small_jakarta_extent(DOCK) DOCK.show_next_analysis_extent() next_band = DOCK.extent.next_analysis_rubberband self.assertEqual(expected_vertex_count, next_band.numberOfVertices()) # 900913 with enabled on-the-fly reprojection - check next set_canvas_crs(GOOGLECRS, True) set_jakarta_google_extent(DOCK) next_band = DOCK.extent.next_analysis_rubberband self.assertEqual(expected_vertex_count, next_band.numberOfVertices()) # 900913 with enabled on-the-fly reprojection - check last set_canvas_crs(GOOGLECRS, True) set_jakarta_google_extent(DOCK) # Press RUN # noinspection PyCallByClass,PyTypeChecker DOCK.accept() # DOCK.show_extent() last_band = DOCK.extent.last_analysis_rubberband geometry = last_band.asGeometry().exportToWkt() expected = ( 'LINESTRING(11876228.33329810947179794 -695807.82839082507416606, ' '11908350.67106631398200989 -695807.82839082507416606, ' '11908350.67106631398200989 -678083.54461829655338079, ' '11876228.33329810947179794 -678083.54461829655338079, ' '11876228.33329810947179794 -695807.82839082507416606)') expected_list = self.wkt_to_coordinates(expected) actual_list = self.wkt_to_coordinates(geometry) for item in xrange(0, len(expected_list)): print item, expected_list[item], actual_list[item] self.assertAlmostEqual( expected_list[item][0], actual_list[item][0]) self.assertAlmostEqual( expected_list[item][1], actual_list[item][1]) self.assertEqual( expected_vertex_count, last_band.numberOfVertices() )