Projet

Général

Profil

0003-visualisation-return-0.0-for-None-measures-in-json_d.patch

Benjamin Dauvergne, 14 janvier 2020 17:55

Télécharger (2,05 ko)

Voir les différences:

Subject: [PATCH 3/3] visualisation: return 0.0 for None measures in json_data
 (#38913)

 bijoe/schemas.py             | 6 ++++++
 bijoe/visualization/utils.py | 2 +-
 tests/test_schema1.py        | 4 ++--
 3 files changed, 9 insertions(+), 3 deletions(-)
bijoe/schemas.py
137 137
        'expression': str,
138 138
    }
139 139

  
140
    @property
141
    def default_value(self):
142
        if self.type in ['integer', 'percent']:
143
            return 0
144
        return None
145

  
140 146

  
141 147
class Dimension(Base):
142 148
    __slots__ = ['name', 'label', 'type', 'join', 'value', 'value_label',
bijoe/visualization/utils.py
177 177
        return data
178 178

  
179 179
    def default_cell(self):
180
        return MeasureCell(measure=self.measure, value=None)
180
        return MeasureCell(measure=self.measure, value=self.measure.default_value)
181 181

  
182 182
    def table_2d(self):
183 183
        '''Layout data into 2d tables'''
tests/test_schema1.py
192 192
    assert visu.json_data() == [
193 193
        {
194 194
            'coords': [{'value': u'2017'}, {'value': u'cat\xe92'}],
195
            'measures': [{'value': None}]
195
            'measures': [{'value': 0}]
196 196
        },
197 197
        {
198 198
            'coords': [{'value': u'2017'}, {'value': u'cat\xe93'}],
199
            'measures': [{'value': None}]},
199
            'measures': [{'value': 0}]},
200 200
        {
201 201
            'coords': [{'value': u'2017'}, {'value': u'cat\xe91'}],
202 202
            'measures': [{'value': 94.11764705882354}]},
203
-