def test_when_adjudicacion_2_return_proveedores(self): adjudicacion = Adjudicacion(fixtures.adjudicaciones[2]) proveedores = adjudicacion.get_proveedores() self.assertTrue("LEONARDO MAZZEO" in proveedores) self.assertTrue("DISTRIBUIDORA SYNERGIA S.R.L." in proveedores) self.assertTrue("SUALIER SA" in proveedores) self.assertTrue("VIMI S.A." in proveedores)
def test_when_adjudicacion_0_return_proveedor2(self): adjudicacion = Adjudicacion(fixtures.adjudicaciones[8]) proveedores = adjudicacion.get_proveedores() precios = adjudicacion.get_precios() self.assertTrue("LA LEY S.A." in proveedores) self.assertEqual("LA LEY S.A.", proveedores[0]) self.assertEqual(len(proveedores), len(precios))
def parsea_boletin(boletin_str, cursor, filename = ""): boletin = Boletin(boletin_str) adjudicaciones_str = boletin.get_modulos_seccion("Adjudicaciones") totales = { "adjudicaciones" : 0, "sociedades" : 0, "oferentes" : 0, "reparticiones" : 0} boletin_regex = re.compile("-",re.IGNORECASE | re.MULTILINE) matchs = boletin_regex.split(filename) cursor.execute(db_inserts['boletin'], (matchs[0], matchs[1].replace('.txt', ''))) boletin_id = cursor.lastrowid for adjudicacion_str in adjudicaciones_str: adjudicacion = Adjudicacion(adjudicacion_str) reparticion = adjudicacion.get_entidad_publica() cursor.execute(db_queries['reparticion'], '%'+string.capwords(reparticion)+'%') reparticion_id = cursor.fetchone() if not reparticion_id: cursor.execute(db_inserts['reparticion'], reparticion) totales['reparticiones'] += 1 reparticion_id = cursor.lastrowid else: reparticion_id = reparticion_id[0] try: adjudicacion_objeto = adjudicacion.get_objeto() cursor.execute(db_inserts['adjudicacion'], (adjudicacion_objeto, adjudicacion.get_texto(), reparticion_id, boletin_id)) except Exception, e: logging.error(logging_msg, filename, adjudicacion.get_texto()) adjudicacion_id = cursor.lastrowid precios = adjudicacion.get_precios() proveedores = adjudicacion.get_proveedores() for proveedor, precio in zip(proveedores, precios): proveedor_title = string.capwords(proveedor) cursor.execute(db_queries['sociedad'], proveedor_title) sociedad = cursor.fetchone() if not sociedad: cursor.execute(db_inserts['sociedad'], proveedor_title) totales['sociedades'] += 1 proveedor_id = cursor.lastrowid else: proveedor_id = sociedad[0] #cursor.execute(db_inserts['sociedad2'], proveedor_title) precio_str = "{0} {1}".format(precio['moneda'], precio['valor']) cursor.execute(db_inserts['oferente'], (proveedor_id, adjudicacion_id, precio_str)) totales['oferentes'] += 1 totales['adjudicaciones'] += 1
def test_when_adjudicacion_1_return_proveedor(self): adjudicacion = Adjudicacion(fixtures.adjudicaciones[1]) self.assertTrue("CAE USA INC." in adjudicacion.get_proveedores())
def test_when_adjudicacion_0_return_proveedor3(self): adjudicacion = Adjudicacion(fixtures.adjudicaciones[9]) proveedores = adjudicacion.get_proveedores() precios = adjudicacion.get_precios() self.assertEqual(len(proveedores), len(precios))
def test_when_adjudicacion_0_return_proveedor(self): adjudicacion = Adjudicacion(fixtures.adjudicaciones[0]) proveedores = adjudicacion.get_proveedores() self.assertTrue("METEO S.A. " in proveedores)
def test_when_adjudicacion_4_return_proveedores(self): adjudicacion = Adjudicacion(fixtures.adjudicaciones[4]) proveedores = adjudicacion.get_proveedores() self.assertTrue("FEDERICO LOPEZ." in proveedores)
def test_when_adjudicacion_3_return_proveedores(self): adjudicacion = Adjudicacion(fixtures.adjudicaciones[3]) proveedores = adjudicacion.get_proveedores() self.assertTrue("PROMETIN S.A." in proveedores) self.assertTrue("TECNOELECTRIC S.R.L." in proveedores)
def parsea_boletin(boletin_str, cursor, filename=""): boletin = Boletin(boletin_str) adjudicaciones_str = boletin.get_modulos_seccion("Adjudicaciones") totales = { "adjudicaciones": 0, "sociedades": 0, "oferentes": 0, "reparticiones": 0 } boletin_regex = re.compile("-", re.IGNORECASE | re.MULTILINE) matchs = boletin_regex.split(filename) cursor.execute(db_inserts['boletin'], (matchs[0], matchs[1].replace('.txt', ''))) boletin_id = cursor.lastrowid for adjudicacion_str in adjudicaciones_str: adjudicacion = Adjudicacion(adjudicacion_str) reparticion = adjudicacion.get_entidad_publica() cursor.execute(db_queries['reparticion'], '%' + string.capwords(reparticion) + '%') reparticion_id = cursor.fetchone() if not reparticion_id: cursor.execute(db_inserts['reparticion'], reparticion) totales['reparticiones'] += 1 reparticion_id = cursor.lastrowid else: reparticion_id = reparticion_id[0] try: adjudicacion_objeto = adjudicacion.get_objeto() cursor.execute(db_inserts['adjudicacion'], (adjudicacion_objeto, adjudicacion.get_texto(), reparticion_id, boletin_id)) except Exception, e: logging.error(logging_msg, filename, adjudicacion.get_texto()) adjudicacion_id = cursor.lastrowid precios = adjudicacion.get_precios() proveedores = adjudicacion.get_proveedores() for proveedor, precio in zip(proveedores, precios): proveedor_title = string.capwords(proveedor) cursor.execute(db_queries['sociedad'], proveedor_title) sociedad = cursor.fetchone() if not sociedad: cursor.execute(db_inserts['sociedad'], proveedor_title) totales['sociedades'] += 1 proveedor_id = cursor.lastrowid else: proveedor_id = sociedad[0] #cursor.execute(db_inserts['sociedad2'], proveedor_title) precio_str = "{0} {1}".format(precio['moneda'], precio['valor']) cursor.execute(db_inserts['oferente'], (proveedor_id, adjudicacion_id, precio_str)) totales['oferentes'] += 1 totales['adjudicaciones'] += 1
def test_when_adjudicacion_1_return_proveedor(self): adjudicacion = Adjudicacion(fixtures.adjudicaciones[1]) self.assertTrue("CAE USA INC." in adjudicacion.get_proveedores());