def test_tenders(self): models.Country.objects.create(name='Portugal') models.ActType.objects.create(name='Anúncio de procedimento', base_id=1) models.ModelType.objects.create(name='Concurso público', base_id=1) models.ContractType.objects.create(name='Aquisição de bens móveis', base_id=1) c = TendersCrawler() tender, created = c.update_instance(3957) self.assertEqual(3957, tender.base_id) self.assertEqual(None, tender.category)
def handle(self, **options): if options['static']: if options['bootstrap'] or not ProcedureType.objects.exists(): ContractsStaticDataCrawler().retrieve_and_save_all() if options['categories']: if options['bootstrap'] or not Category.objects.exists(): build_categories() if options['entities']: crawler = EntitiesCrawler() if options['bootstrap']: crawler.update(0) else: crawler.update(-2000) if options['contracts']: crawler = ContractsCrawler() if options['bootstrap']: crawler.update(0) else: crawler.update(-2000) if options['tenders']: crawler = TendersCrawler() if options['bootstrap']: crawler.update(0) else: crawler.update(-2000)
def test_update_tenders(self): c = TendersCrawler() with self.assertRaises(ValidationError): c.update(0, 1) models.Country.objects.create(name='Portugal') models.ModelType.objects.create(name='Concurso público', base_id=1) models.ActType.objects.create(name='Declaração de retificação de anúncio', base_id=1) models.ActType.objects.create(name='Anúncio de procedimento', base_id=2) models.ContractType.objects.create(name='Empreitadas de obras públicas', base_id=1) mods = c.update(0, 1) self.assertEqual(2, mods['added'])
def test_update_tenders(self): c = TendersCrawler() with self.assertRaises(ValidationError): c.update(0, 1) models.Country.objects.create(name='Portugal') models.ModelType.objects.create(name='Concurso público', base_id=1) models.ActType.objects.create( name='Declaração de retificação de anúncio', base_id=1) models.ActType.objects.create(name='Anúncio de procedimento', base_id=2) models.ContractType.objects.create( name='Empreitadas de obras públicas', base_id=1) mods = c.update(0, 1) self.assertEqual(2, mods['added']) # call update again should not make any change mods = c.update(0, 1) self.assertEqual(0, mods['added']) self.assertEqual(0, mods['deleted']) self.assertEqual(0, mods['updated'])