示例#1
0
    def test_recompute_counts(self):
        """Test we can recompute counts in a layer."""
        layer = load_test_vector_layer('gisv4',
                                       'exposure',
                                       'population.geojson',
                                       clone=True)

        self.assertIn(female_count_field['key'],
                      layer.keywords['inasafe_fields'])

        layer = prepare_vector_layer(layer)
        layer = from_counts_to_ratios(layer)

        self.assertIn(female_count_field['key'],
                      layer.keywords['inasafe_fields'])
        self.assertIn(female_ratio_field['key'],
                      layer.keywords['inasafe_fields'])

        # Check that each feature has correct ratio
        for feature in layer.getFeatures():
            manual_ratio = feature[female_count_field['field_name']] / feature[
                population_count_field['field_name']]
            diff = abs(manual_ratio -
                       feature[female_ratio_field['field_name']])

            self.assertTrue(diff < 10**-2, diff)
示例#2
0
    def test_recompute_counts(self):
        """Test we can recompute counts in a layer."""
        layer = load_test_vector_layer('gisv4',
                                       'exposure',
                                       'population.geojson',
                                       clone=True)

        self.assertIn(female_count_field['key'],
                      layer.keywords['inasafe_fields'])

        layer = prepare_vector_layer(layer)
        layer = from_counts_to_ratios(layer)

        self.assertIn(female_count_field['key'],
                      layer.keywords['inasafe_fields'])
        self.assertIn(female_ratio_field['key'],
                      layer.keywords['inasafe_fields'])

        # Check that each feature has correct ratio
        for feature in layer.getFeatures():
            female_count = feature[female_count_field['field_name']]
            population_count = feature[population_count_field['field_name']]
            manual_ratio = female_count / float(population_count)

            computing_ratio = feature[female_ratio_field['field_name']]
            diff = abs(manual_ratio - computing_ratio)

            message = 'The ratio difference is too big, diff = %s' % diff
            self.assertTrue(diff < 10**-2, message)
    def test_recompute_counts(self):
        """Test we can recompute counts in a layer."""
        layer = load_test_vector_layer(
            'gisv4', 'exposure', 'population.geojson',
            clone=True)

        self.assertIn(
            female_count_field['key'], layer.keywords['inasafe_fields'])

        layer = prepare_vector_layer(layer)
        layer = from_counts_to_ratios(layer)

        self.assertIn(
            female_count_field['key'], layer.keywords['inasafe_fields'])
        self.assertIn(
            female_ratio_field['key'], layer.keywords['inasafe_fields'])

        # Check that each feature has correct ratio
        for feature in layer.getFeatures():
            manual_ratio = feature[female_count_field['field_name']] / feature[
                population_count_field['field_name']]
            diff = abs(
                manual_ratio - feature[female_ratio_field['field_name']])

            self.assertTrue(diff < 10 ** -2, diff)
示例#4
0
    def test_recompute_counts(self):
        """Test we can recompute counts in a layer."""
        layer = load_test_vector_layer(
            'gisv4', 'exposure', 'population.geojson',
            clone=True)

        self.assertIn(
            female_count_field['key'], layer.keywords['inasafe_fields'])

        layer = prepare_vector_layer(layer)
        layer = from_counts_to_ratios(layer)

        self.assertIn(
            female_count_field['key'], layer.keywords['inasafe_fields'])
        self.assertIn(
            female_ratio_field['key'], layer.keywords['inasafe_fields'])

        # Check that each feature has correct ratio
        for feature in layer.getFeatures():
            female_count = feature[female_count_field['field_name']]
            population_count = feature[population_count_field['field_name']]
            manual_ratio = female_count / float(population_count)

            computing_ratio = feature[female_ratio_field['field_name']]
            diff = abs(manual_ratio - computing_ratio)

            message = 'The ratio difference is too big, diff = %s' % diff
            self.assertTrue(diff < 10 ** -2, message)