Exemplo n.º 1
0
 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)
Exemplo n.º 2
0
 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)
Exemplo n.º 3
0
 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'))
Exemplo n.º 6
0
    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'))