def test_natural_key(self) -> None: self._set_obj_1() self._set_obj_2() obj = self.obj_1 expected_output = CesionNaturalKey( dte_key=DteNaturalKey( emisor_rut=Rut('76354771-K'), tipo_dte=TipoDteEnum.FACTURA_ELECTRONICA, folio=170, ), seq=1, ) self.assertEqual(obj.natural_key, expected_output) obj = self.obj_2 expected_output = CesionNaturalKey( dte_key=DteNaturalKey( emisor_rut=Rut('76354771-K'), tipo_dte=TipoDteEnum.FACTURA_ELECTRONICA, folio=170, ), seq=2, ) self.assertEqual(obj.natural_key, expected_output)
def test_alt_natural_key(self) -> None: self._set_obj_1() self._set_obj_2() obj = self.obj_1 expected_output = CesionAltNaturalKey( dte_key=DteNaturalKey( emisor_rut=Rut('76354771-K'), tipo_dte=TipoDteEnum.FACTURA_ELECTRONICA, folio=170, ), cedente_rut=Rut('76354771-K'), cesionario_rut=Rut('76389992-6'), fecha_cesion_dt=tz_utils.convert_naive_dt_to_tz_aware( dt=datetime(2019, 4, 1, 10, 22), tz=CesionAltNaturalKey.DATETIME_FIELDS_TZ, ), ) self.assertEqual(obj.alt_natural_key, expected_output) obj = self.obj_2 expected_output = CesionAltNaturalKey( dte_key=DteNaturalKey( emisor_rut=Rut('76354771-K'), tipo_dte=TipoDteEnum.FACTURA_ELECTRONICA, folio=170, ), cedente_rut=Rut('76389992-6'), cesionario_rut=Rut('76598556-0'), fecha_cesion_dt=tz_utils.convert_naive_dt_to_tz_aware( dt=datetime(2019, 4, 5, 12, 57), tz=CesionAltNaturalKey.DATETIME_FIELDS_TZ, ), ) self.assertEqual(obj.alt_natural_key, expected_output)
def setUp(self) -> None: super().setUp() self.dte_nk_1 = DteNaturalKey( emisor_rut=Rut('76354771-K'), tipo_dte=TipoDteEnum.FACTURA_ELECTRONICA, folio=170, )
class DteNaturalKeyTest(unittest.TestCase): def setUp(self) -> None: super().setUp() self.dte_nk_1 = DteNaturalKey( emisor_rut=Rut('76354771-K'), tipo_dte=TipoDteEnum.FACTURA_ELECTRONICA, folio=170, ) def test_init_fail(self) -> None: # TODO: implement for 'DteNaturalKey()' pass def test_as_dict(self) -> None: self.assertDictEqual( self.dte_nk_1.as_dict(), dict( emisor_rut=Rut('76354771-K'), tipo_dte=TipoDteEnum.FACTURA_ELECTRONICA, folio=170, ) ) def test_slug(self) -> None: self.assertEqual(self.dte_nk_1.slug, '76354771-K--33--170')
def _set_obj_1(self) -> None: obj_dte_natural_key = DteNaturalKey( emisor_rut=Rut('76354771-K'), tipo_dte=TipoDteEnum.FACTURA_ELECTRONICA, folio=170, ) obj = CesionL1( dte_key=obj_dte_natural_key, seq=32, cedente_rut=Rut('76389992-6'), cesionario_rut=Rut('76598556-0'), fecha_cesion_dt=tz_utils.convert_naive_dt_to_tz_aware( dt=datetime(2019, 4, 5, 12, 57, 32), tz=CesionL1.DATETIME_FIELDS_TZ, ), monto_cedido=2996301, fecha_ultimo_vencimiento=date(2019, 5, 1), dte_fecha_emision=date(2019, 4, 1), dte_receptor_rut=Rut('96790240-3'), dte_monto_total=2996301, ) self.assertIsInstance(obj, CesionL1) self.obj_1_dte_natural_key = obj_dte_natural_key self.obj_1 = obj
def test_natural_key(self) -> None: self.assertEqual( self.dte_l0_1.natural_key, DteNaturalKey( emisor_rut=Rut('76354771-K'), tipo_dte=TipoDteEnum.FACTURA_ELECTRONICA, folio=170, ))
def _set_obj_1(self) -> None: obj_dte_natural_key = DteNaturalKey( emisor_rut=Rut('76354771-K'), tipo_dte=TipoDteEnum.FACTURA_ELECTRONICA, folio=170, ) obj = CesionNaturalKey( dte_key=obj_dte_natural_key, seq=32, ) self.assertIsInstance(obj, CesionNaturalKey) self.obj_1 = obj
def test_as_cesion_l2(self) -> None: self._set_obj_1() obj = self.obj_1 expected_output = CesionL2( dte_key=DteNaturalKey( emisor_rut=Rut('76354771-K'), tipo_dte=TipoDteEnum.FACTURA_ELECTRONICA, folio=170, ), seq=2, cedente_rut=Rut('76389992-6'), cesionario_rut=Rut('76598556-0'), fecha_cesion_dt=tz_utils.convert_naive_dt_to_tz_aware( dt=datetime(2019, 4, 5, 12, 57, 32), tz=CesionL2.DATETIME_FIELDS_TZ, ), monto_cedido=2996301, fecha_firma_dt=tz_utils.convert_naive_dt_to_tz_aware( dt=datetime(2019, 4, 5, 12, 57, 32), tz=CesionL2.DATETIME_FIELDS_TZ, ), dte_receptor_rut=Rut('96790240-3'), dte_fecha_emision=date(2019, 4, 1), dte_monto_total=2996301, fecha_ultimo_vencimiento=date(2019, 5, 1), cedente_razon_social='ST CAPITAL S.A.', cedente_email='*****@*****.**', cesionario_razon_social= 'Fondo de Inversión Privado Deuda y Facturas', cesionario_email='*****@*****.**', dte_emisor_razon_social='INGENIERIA ENACON SPA', dte_receptor_razon_social='MINERA LOS PELAMBRES', dte_deudor_email=None, cedente_declaracion_jurada= ('Se declara bajo juramento que ST CAPITAL S.A., RUT 76389992-6 ha puesto ' 'a disposicion del cesionario Fondo de Inversión Privado Deuda y Facturas, ' 'RUT 76598556-0, el documento validamente emitido al deudor MINERA LOS ' 'PELAMBRES, RUT 96790240-3.'), dte_fecha_vencimiento=None, contacto_nombre='ST Capital Servicios Financieros', contacto_telefono=None, contacto_email='*****@*****.**', ) obj_cesion_l2 = obj.as_cesion_l2() self.assertEqual(obj_cesion_l2, expected_output) self.assertEqual(obj_cesion_l2.natural_key, obj.natural_key) self.assertEqual(obj_cesion_l2.alt_natural_key, obj.alt_natural_key) self.assertEqual(obj_cesion_l2.dte_key, obj.dte.natural_key)
def test_natural_key(self) -> None: self._set_obj_1() obj = self.obj_1 expected_output = CesionNaturalKey( dte_key=DteNaturalKey( emisor_rut=Rut('76354771-K'), tipo_dte=TipoDteEnum.FACTURA_ELECTRONICA, folio=170, ), seq=32, ) self.assertEqual(obj.natural_key, expected_output) obj_without_seq = dataclasses.replace( obj, seq=None, ) self.assertIsNone(obj_without_seq.natural_key)
def _set_obj_1(self) -> None: obj_dte_natural_key = DteNaturalKey( emisor_rut=Rut('76354771-K'), tipo_dte=TipoDteEnum.FACTURA_ELECTRONICA, folio=170, ) obj = CesionAltNaturalKey( dte_key=obj_dte_natural_key, cedente_rut=Rut('76389992-6'), cesionario_rut=Rut('76598556-0'), fecha_cesion_dt=tz_utils.convert_naive_dt_to_tz_aware( dt=datetime(2019, 4, 5, 12, 57), tz=CesionAltNaturalKey.DATETIME_FIELDS_TZ, ), ) self.assertIsInstance(obj, CesionAltNaturalKey) self.obj_1_dte_natural_key = obj_dte_natural_key self.obj_1 = obj
def test_as_cesion_l2(self) -> None: self._set_obj_1() obj = self.obj_1 expected_output = CesionL2( dte_key=DteNaturalKey( emisor_rut=Rut('76354771-K'), tipo_dte=TipoDteEnum.FACTURA_ELECTRONICA, folio=170, ), seq=1, cedente_rut=Rut('76354771-K'), cesionario_rut=Rut('76389992-6'), fecha_cesion_dt=tz_utils.convert_naive_dt_to_tz_aware( dt=datetime(2019, 4, 1, 10, 22, 2), tz=CesionL2.DATETIME_FIELDS_TZ, ), monto_cedido=2996301, dte_receptor_rut=Rut('96790240-3'), dte_fecha_emision=date(2019, 4, 1), dte_monto_total=2996301, fecha_ultimo_vencimiento=date(2019, 5, 1), cedente_razon_social= 'SERVICIOS BONILLA Y LOPEZ Y COMPAÑIA LIMITADA', cedente_email='*****@*****.**', cesionario_razon_social='ST CAPITAL S.A.', cesionario_email='*****@*****.**', dte_deudor_email=None, cedente_declaracion_jurada= ('Se declara bajo juramento que SERVICIOS BONILLA Y LOPEZ Y COMPAÑIA ' 'LIMITADA, RUT 76354771-K ha puesto a disposición del cesionario ST ' 'CAPITAL S.A., RUT 76389992-6, el o los documentos donde constan los ' 'recibos de las mercaderías entregadas o servicios prestados, entregados ' 'por parte del deudor de la factura MINERA LOS PELAMBRES, RUT 96790240-3, ' 'deacuerdo a lo establecido en la Ley N°19.983.'), ) obj_cesion_l2 = obj.as_cesion_l2() self.assertEqual(obj_cesion_l2, expected_output) self.assertEqual(obj_cesion_l2.natural_key, obj.natural_key) self.assertEqual(obj_cesion_l2.alt_natural_key, obj.alt_natural_key) self.assertEqual(obj_cesion_l2.dte_key, obj.dte.natural_key)
def test_as_cesion_l1(self): self._set_obj_1() obj = self.obj_1 expected_output = CesionL1( dte_key=DteNaturalKey( emisor_rut=Rut('76354771-K'), tipo_dte=TipoDteEnum.FACTURA_ELECTRONICA, folio=170, ), seq=32, cedente_rut=Rut('76389992-6'), cesionario_rut=Rut('76598556-0'), fecha_cesion_dt=tz_utils.convert_naive_dt_to_tz_aware( dt=datetime(2019, 4, 5, 12, 57, 32), tz=CesionL1.DATETIME_FIELDS_TZ, ), monto_cedido=2996301, fecha_ultimo_vencimiento=date(2019, 5, 1), dte_fecha_emision=date(2019, 4, 1), dte_receptor_rut=Rut('96790240-3'), dte_monto_total=2996301, ) self.assertEqual(obj.as_cesion_l1(), expected_output)