def test_to_xdr_does_not_exist(self): """ """ value_date = datetime(1995, 1, 1) rate = convert.to_xdr('EUR', value_date, 100) self.assertEqual(rate, 0)
def test_to_xdr(self): """ """ value_date = datetime(1994, 1, 1) rate = convert.to_xdr('EUR', value_date, 100) self.assertEqual(rate, 150)
def convert_xdr_values(apps, schema_editor): """ convert all transaction's xdr values takes ~20 mins """ update_contenttypes(apps.get_app_config('iati'), interactive=False) # make sure all content types exist try: # don't run on first migration Budget = apps.get_model('iati', 'Budget') Transaction = apps.get_model('iati', 'Transaction') Activity = apps.get_model('iati', 'Activity') TranasctionSector = apps.get_model('iati', 'TranasctionSector') TransactionRecipientCountry = apps.get_model( 'iati', 'TransactionRecipientCountry') TransactionRecipientSector = apps.get_model( 'iati', 'TransactionRecipientSector') except: return for budget in Budget.objects.all().iterator(): budget.xdr_value = convert.to_xdr(budget.currency_id, budget.value_date, budget.value) budget.save() for transaction in Transaction.objects.all().iterator(): transaction.xdr_value = convert.to_xdr(transaction.currency_id, transaction.value_date, transaction.value) transaction.save() for activity in Activity.objects.all().iterator(): TransactionSector.objects.all().filter( transaction__activity=activity).delete() TransactionRecipientCountry.objects.all().filter( transaction__activity=activity).delete() TransactionRecipientSector.objects.all().filter( transaction__activity=activity).delete() post_save.set_sector_transaction(activity) post_save.set_country_region_transaction(activity)