def test_get_exposure_metadata(self): exp, _assets = readinput.get_exposure_lazy(self.exposure) self.assertEqual(exp.description, 'Exposure model for buildings') self.assertEqual(exp.insurance_limit_is_absolute, None) self.assertEqual(exp.deductible_is_absolute, None) self.assertEqual(exp.cost_types, [ {'type': 'per_asset', 'name': 'structural', 'unit': 'USD'}])
def test_get_exposure_metadata(self): exp, _assets = readinput.get_exposure_lazy( self.exposure, ['structural']) self.assertEqual(exp.description, 'Exposure model for buildings') self.assertTrue(exp.insurance_limit_is_absolute) self.assertTrue(exp.deductible_is_absolute) self.assertEqual([tuple(ct) for ct in exp.cost_types], [('structural', 'per_asset', 'USD')])
def read_exposure(self): """ Read the exposure, the riskmodel and update the attributes .exposure, .sitecol, .assets_by_site, .cost_types, .taxonomies. """ logging.info("Reading the exposure") with self.monitor("reading exposure", autoflush=True): self.exposure = readinput.get_exposure(self.oqparam) arefs = numpy.array(self.exposure.asset_refs) self.datastore["asset_refs"] = arefs self.datastore.set_attrs("asset_refs", nbytes=arefs.nbytes) all_cost_types = set(self.oqparam.all_cost_types) fname = self.oqparam.inputs["exposure"] self.cost_calculator = readinput.get_exposure_lazy(fname, all_cost_types)[-1] self.sitecol, self.assets_by_site = readinput.get_sitecol_assets(self.oqparam, self.exposure) if len(self.exposure.cost_types): self.cost_types = self.exposure.cost_types
def read_exposure(self): """ Read the exposure, the riskmodel and update the attributes .exposure, .sitecol, .assets_by_site, .cost_types, .taxonomies. """ logging.info('Reading the exposure') with self.monitor('reading exposure', autoflush=True): self.exposure = readinput.get_exposure(self.oqparam) arefs = numpy.array(self.exposure.asset_refs) self.datastore['asset_refs'] = arefs self.datastore.set_attrs('asset_refs', nbytes=arefs.nbytes) all_cost_types = set(self.oqparam.all_cost_types) fname = self.oqparam.inputs['exposure'] self.cost_calculator = readinput.get_exposure_lazy( fname, all_cost_types)[-1] self.sitecol, self.assets_by_site = (readinput.get_sitecol_assets( self.oqparam, self.exposure)) if len(self.exposure.cost_types): self.cost_types = self.exposure.cost_types