def test_load_state_from_keywords(self): """Test load_state_from_keywords works.""" layer = clone_raster_layer(name='padang_tsunami_mw8', extension='.tif', include_keywords=True, source_directory=test_data_path('hazard')) dialog = KeywordsDialog(PARENT, IFACE, layer=layer) dialog.load_state_from_keywords() keywords = dialog.get_keywords() expected_keywords = { 'title': 'A tsunami in Padang (Mw 8.8)', 'category': 'hazard', 'subcategory': 'tsunami', 'unit': 'm' } message = 'The keyword should be %s, but it returns %s' % ( expected_keywords, keywords) self.assertEqual(keywords, expected_keywords, message)
def test_load_state_from_keywords(self): """Test load_state_from_keywords works.""" layer = clone_raster_layer( name='padang_tsunami_mw8', extension='.tif', include_keywords=True, source_directory=test_data_path('hazard') ) dialog = KeywordsDialog(PARENT, IFACE, layer=layer) dialog.load_state_from_keywords() keywords = dialog.get_keywords() expected_keywords = { 'title': 'A tsunami in Padang (Mw 8.8)', 'category': 'hazard', 'subcategory': 'tsunami', 'unit': 'm'} message = 'The keyword should be %s, but it returns %s' % ( expected_keywords, keywords) self.assertEqual(keywords, expected_keywords, message)
def test_load_state_from_keywords(self): """Test load_state_from_keywords works.""" layer = clone_raster_layer(name='tsunami_wgs84', extension='.tif', include_keywords=True, source_directory=test_data_path('hazard')) dialog = KeywordsDialog(PARENT, IFACE, layer=layer) dialog.load_state_from_keywords() keywords = dialog.get_keywords() expected_keywords = { 'category': 'hazard', 'unit': 'metres_depth', 'subcategory': 'tsunami', 'data_type': 'continuous', 'title': 'Tsunami' } message = 'The keyword should be %s, but it returns %s' % ( expected_keywords, keywords) self.assertEqual(keywords, expected_keywords, message)
def test_load_state_from_keywords(self): """Test load_state_from_keywords works.""" layer = clone_raster_layer( name='tsunami_wgs84', extension='.tif', include_keywords=True, source_directory=test_data_path('hazard') ) dialog = KeywordsDialog(PARENT, IFACE, layer=layer) dialog.load_state_from_keywords() keywords = dialog.get_keywords() expected_keywords = { 'category': 'hazard', 'unit': 'metres_depth', 'subcategory': 'tsunami', 'data_type': 'continuous', 'title': 'Tsunami'} message = 'The keyword should be %s, but it returns %s' % ( expected_keywords, keywords) self.assertEqual(keywords, expected_keywords, message)
def test_check_aggregation(self): """Test for keywords dialog's behavior for aggregation layer.""" layer = clone_shp_layer( name='district_osm_jakarta', include_keywords=True, source_directory=test_data_path('boundaries')) dialog = KeywordsDialog(PARENT, IFACE, layer=layer) # Load existing keywords keywords = dialog.get_keywords() expected_keywords = { u'category': u'postprocessing', u'aggregation attribute': u'KAB_NAME', u'title': u'D\xedstr\xedct\'s of Jakarta', u'elderly ratio attribute': u'Global default', u'youth ratio default': u'0.26', u'elderly ratio default': u'0.08', u'adult ratio attribute': u'Global default', u'female ratio attribute': u'PEREMPUAN', u'youth ratio attribute': u'Global default', u'adult ratio default': u'0.66'} message = 'Expected %s but I got %s' % (expected_keywords, keywords) self.assertDictEqual(expected_keywords, keywords, message) # Check age ratios are valid good_sum_ratio, _ = dialog.age_ratios_are_valid(keywords) message = 'Expected %s but I got %s' % (True, good_sum_ratio) self.assertEqual(True, good_sum_ratio, message) # Change youth ratio attribute to Don't Use dialog.cboYouthRatioAttribute.setCurrentIndex(1) keywords = dialog.get_keywords() expected_keywords = { u'category': u'postprocessing', u'aggregation attribute': u'KAB_NAME', u'title': u'D\xedstr\xedct\'s of Jakarta', u'elderly ratio attribute': u'Global default', u'elderly ratio default': u'0.08', u'adult ratio attribute': u'Global default', u'female ratio attribute': u'PEREMPUAN', u'youth ratio attribute': u'Don\'t use', u'adult ratio default': u'0.66'} message = 'Expected %s but I got %s' % (expected_keywords, keywords) self.assertDictEqual(expected_keywords, keywords, message) good_sum_ratio, _ = dialog.age_ratios_are_valid(keywords) message = 'Expected %s but I got %s' % (True, good_sum_ratio) self.assertEqual(True, good_sum_ratio, message) # Change youth ratio attribute to Global Default # Change youth ratio default to 0.99 dialog.cboYouthRatioAttribute.setCurrentIndex(0) dialog.dsbYouthRatioDefault.setValue(0.99) keywords = dialog.get_keywords() expected_keywords = { u'category': u'postprocessing', u'aggregation attribute': u'KAB_NAME', u'title': u'D\xedstr\xedct\'s of Jakarta', u'elderly ratio attribute': u'Global default', u'elderly ratio default': u'0.08', u'adult ratio attribute': u'Global default', u'female ratio attribute': u'PEREMPUAN', u'youth ratio attribute': u'Global default', u'youth ratio default': u'0.99', u'adult ratio default': u'0.66'} message = 'Expected %s but I got %s' % (expected_keywords, keywords) self.assertDictEqual(expected_keywords, keywords, message) good_sum_ratio, _ = dialog.age_ratios_are_valid(keywords) message = 'Expected %s but I got %s' % (False, good_sum_ratio) self.assertEqual(False, good_sum_ratio, message) # We need to delete reference to layer on Windows before removing # the files del layer del dialog.layer # Using clone_shp_layer the files are saved in testing dir under # InaSAFE temp dir shutil.rmtree(temp_dir(sub_dir='testing'))
def test_check_aggregation(self): """Test for keywords dialog's behavior for aggregation layer.""" layer = clone_shp_layer(name='district_osm_jakarta', include_keywords=True, source_directory=test_data_path('boundaries')) dialog = KeywordsDialog(PARENT, IFACE, layer=layer) # Load existing keywords keywords = dialog.get_keywords() expected_keywords = { u'category': u'postprocessing', u'aggregation attribute': u'KAB_NAME', u'title': u'D\xedstr\xedct\'s of Jakarta', u'elderly ratio attribute': u'Global default', u'youth ratio default': u'0.26', u'elderly ratio default': u'0.08', u'adult ratio attribute': u'Global default', u'female ratio attribute': u'PEREMPUAN', u'youth ratio attribute': u'Global default', u'adult ratio default': u'0.66' } message = 'Expected %s but I got %s' % (expected_keywords, keywords) self.assertDictEqual(expected_keywords, keywords, message) # Check age ratios are valid good_sum_ratio, _ = dialog.age_ratios_are_valid(keywords) message = 'Expected %s but I got %s' % (True, good_sum_ratio) self.assertEqual(True, good_sum_ratio, message) # Change youth ratio attribute to Don't Use dialog.cboYouthRatioAttribute.setCurrentIndex(1) keywords = dialog.get_keywords() expected_keywords = { u'category': u'postprocessing', u'aggregation attribute': u'KAB_NAME', u'title': u'D\xedstr\xedct\'s of Jakarta', u'elderly ratio attribute': u'Global default', u'elderly ratio default': u'0.08', u'adult ratio attribute': u'Global default', u'female ratio attribute': u'PEREMPUAN', u'youth ratio attribute': u'Don\'t use', u'adult ratio default': u'0.66' } message = 'Expected %s but I got %s' % (expected_keywords, keywords) self.assertDictEqual(expected_keywords, keywords, message) good_sum_ratio, _ = dialog.age_ratios_are_valid(keywords) message = 'Expected %s but I got %s' % (True, good_sum_ratio) self.assertEqual(True, good_sum_ratio, message) # Change youth ratio attribute to Global Default # Change youth ratio default to 0.99 dialog.cboYouthRatioAttribute.setCurrentIndex(0) dialog.dsbYouthRatioDefault.setValue(0.99) keywords = dialog.get_keywords() expected_keywords = { u'category': u'postprocessing', u'aggregation attribute': u'KAB_NAME', u'title': u'D\xedstr\xedct\'s of Jakarta', u'elderly ratio attribute': u'Global default', u'elderly ratio default': u'0.08', u'adult ratio attribute': u'Global default', u'female ratio attribute': u'PEREMPUAN', u'youth ratio attribute': u'Global default', u'youth ratio default': u'0.99', u'adult ratio default': u'0.66' } message = 'Expected %s but I got %s' % (expected_keywords, keywords) self.assertDictEqual(expected_keywords, keywords, message) good_sum_ratio, _ = dialog.age_ratios_are_valid(keywords) message = 'Expected %s but I got %s' % (False, good_sum_ratio) self.assertEqual(False, good_sum_ratio, message) # We need to delete reference to layer on Windows before removing # the files del layer del dialog.layer # Using clone_shp_layer the files are saved in testing dir under # InaSAFE temp dir shutil.rmtree(temp_dir(sub_dir='testing'))