# -*- coding: utf-8 -*- """ Created on Fri Feb 12 17:24:53 2021 @author: Lucia """ from Dates import fechas_tablas import pandas.testing as pdt import pandas as pd print("---CASOS FECHAS---") tabla_documentos = pd.DataFrame({'ID': [8,9], 'EHR': [2,3]}) resultado_date = pd.DataFrame({'date_id':[0,1,2,3,4,5,6], 'note_date': ["2021-07-23","2021-07-23","2021-07-23","2021-07-23","2021-07-23","2021-07-23","2021-07-23"]}) resultado_note_date = pd.DataFrame({'note_id': [8,8,8,8,8,8,8],'date_id':[0,1,2,3,4,5,6], 'begin': [0,0,0,0,0,0,0],'end':[10,10,10,10,10,10,10]}) print("TEST 1 -> fechas con -") anotaciones = [[{"word": "23 - 7 - 2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23-7-2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23-7se-2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23 - 7 - 2021se","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23-7-2021se","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23-7 - 2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23 - 7-2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}]] fechas = fechas_tablas(anotaciones, tabla_documentos) try: pdt.assert_frame_equal(fechas[0], resultado_date) pdt.assert_frame_equal(fechas[1], resultado_note_date) print('OK') except AssertionError: print('TEST 1 NOT PASSED') print("TEST 2 -> fechas con /") anotaciones = [[{"word": "23 / 7 / 2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23/7/2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23/7se/2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23 / 7 / 2021se","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23/7/2021se","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23/7 / 2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23 / 7/2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}]] fechas = fechas_tablas(anotaciones, tabla_documentos) try: pdt.assert_frame_equal(fechas[0], resultado_date) pdt.assert_frame_equal(fechas[1], resultado_note_date) print('OK') except AssertionError: print('TEST 2 NOT PASSED') print("TEST 3 -> fechas con .") anotaciones = [[{"word": "23 . 7 . 2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23.7.2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23.7se.2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23 . 7 . 2021se","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23.7.2021se","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23.7 . 2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23 . 7.2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}]] fechas = fechas_tablas(anotaciones, tabla_documentos) try: pdt.assert_frame_equal(fechas[0], resultado_date) pdt.assert_frame_equal(fechas[1], resultado_note_date) print('OK') except AssertionError: print('TEST 3 NOT PASSED') print("TEST 4 -> fechas con letra") anotaciones = [[{"word": "23 de julio del 2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23 julio 2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23se julio 2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23 de julio 2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23 de julio 2021se","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23 / julio / 2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23.julio.2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}]] fechas = fechas_tablas(anotaciones, tabla_documentos) try: pdt.assert_frame_equal(fechas[0], resultado_date) pdt.assert_frame_equal(fechas[1], resultado_note_date) print('OK') except AssertionError: print('TEST 4 NOT PASSED') print("---CASO INPUT VACIO---") print("TEST 5 -> anotaciones vacias") anotaciones_vacia = [[]] tabla_documentos_vacia = pd.DataFrame({'ID': [8,9], 'EHR': [2,3]}) fechas = fechas_tablas(anotaciones_vacia, tabla_documentos_vacia) if (fechas[0].empty) and (fechas[1].empty): print('OK') else: print('TEST 5 NOT PASSED') print("---CASO INPUTS INCORRECTOS---") print("TEST 6 -> no es una fecha") anotaciones = [[{"word": "hola","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "32 julio 2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "2435271","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23 / 13 / 2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "no es una fecha","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "no","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "fecha","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}]] fechas = fechas_tablas(anotaciones, tabla_documentos) if (fechas[0].empty) and (fechas[1].empty): print('OK') else: print('TEST 6 NOT PASSED') print("TEST 7 -> inputs al reves") ''' anotaciones = [[{"word": "hola","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "32 julio 2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "2435271","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "23 / 13 / 2021","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "no es una fecha","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": "","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}, {"word": ".","score": 0,"entity": "B_DATE","index": 0,"start": 0,"end": 10}]] fechas = fechas_tablas(tabla_documentos, anotaciones) try: pdt.assert_frame_equal(fechas[0], resultado_date_vacia) pdt.assert_frame_equal(fechas[1], resultado_note_date_vacia) print('OK') except AssertionError: print('TEST 7 NOT PASSED') '''