コード例 #1
0
ファイル: artefacto.py プロジェクト: dued/dued
        def puede_clonar_en_una_subclase(self):
            orig = Llamar(self.artefacto)

            class MiLlamada(Llamar):
                pass

            clon = orig.clonar(dentro=MiLlamada)
            assert clon == orig
            assert isinstance(clon, MiLlamada)
コード例 #2
0
ファイル: artefacto.py プロジェクト: dued/dued
        def se_le_pueden_dar_kwargs_adicionales_para_clonar_con(self):
            orig = Llamar(self.artefacto)

            class MiLlamada(Llamar):
                def __init__(self, *args, **kwargs):
                    self.hurra = kwargs.pop("hurra")
                    super(MiLlamada, self).__init__(*args, **kwargs)

            clon = orig.clonar(dentro=MiLlamada, with_={"hurra": "woo"})
            assert clon.hurra == "woo"
コード例 #3
0
ファイル: artefacto.py プロジェクト: dued/dued
 def incluye_args_y_kwargs(self):
     llamar = Llamar(
         self.artefacto,
         args=("posarg1", "posarg2"),
         # Dict de clave-única para evitar problemas ordenamiento de dict
         kwargs={"kwarg1": "val1"},
     )
     esperado = "<Llamar 'miartefacto', args: ('posarg1', 'posarg2'), kwargs: {'kwarg1': 'val1'}>"  # noqa
     assert str(llamar) == esperado
コード例 #4
0
ファイル: artefacto.py プロジェクト: dued/dued
 def devuelve_un_objeto_nuevo_pero_equivalente(self):
     orig = Llamar(self.artefacto)
     clon = orig.clonar()
     assert clon is not orig
     assert clon == orig
コード例 #5
0
ファイル: artefacto.py プロジェクト: dued/dued
 def crea_un_nuevo_Contexto_a_partir_de_la_config_dada(self):
     conf = Config(defaults={"foo": "bar"})
     c = Llamar(_).crear_contexto(conf)
     assert isinstance(c, Contexto)
     assert c.foo == "bar"
コード例 #6
0
ファイル: artefacto.py プロジェクト: dued/dued
 def requiere_argumento_de_configuracion(self):
     with raises(TypeError):
         Llamar(_).crear_contexto()
コード例 #7
0
ファイル: artefacto.py プロジェクト: dued/dued
 def omite_alias_si_el_nombre_explícito_es_el_mismo_que_el_nombre_del_artefacto(
         self):
     llamar = Llamar(self.artefacto, llamado_de="miartefacto")
     assert str(
         llamar) == "<Llamar 'miartefacto', args: (), kwargs: {}>"
コード例 #8
0
ファイル: artefacto.py プロジェクト: dued/dued
 def incluye_aka_si_se_da_un_nombre_explícito(self):
     llamar = Llamar(self.artefacto, llamado_de="noesmiartefacto")
     esperado = "<Llamar 'miartefacto' (called as: 'noesmiartefacto'), args: (), kwargs: {}>"  # noqa
     assert str(llamar) == esperado
コード例 #9
0
ファイル: artefacto.py プロジェクト: dued/dued
 def es_el_primer_posarg(self):
     assert Llamar(_).artefacto is _
コード例 #10
0
ファイル: artefacto.py プロジェクト: dued/dued
 def puede_ser_dado(self):
     assert Llamar(_, kwargs={
         "foo": "bar"
     }).kwargs == {
         "foo": "bar"
     }
コード例 #11
0
ファイル: artefacto.py プロジェクト: dued/dued
 def por_defecto_es_dic_vacio(self):
     assert Llamar(_).kwargs == dict()
コード例 #12
0
ファイル: artefacto.py プロジェクト: dued/dued
 def puede_ser_dado(self):
     assert Llamar(_, args=(1, 2, 3)).args == (1, 2, 3)
コード例 #13
0
ファイル: artefacto.py プロジェクト: dued/dued
 def por_defecto_es_tupla_vacía(self):
     assert Llamar(_).args == tuple()
コード例 #14
0
ファイル: artefacto.py プロジェクト: dued/dued
 def puede_ser_dado(self):
     assert Llamar(_, llamado_de="foo").llamado_de == "foo"
コード例 #15
0
ファイル: artefacto.py プロジェクト: dued/dued
 def pordefecto_a_None(self):
     assert Llamar(_).llamado_de is None
コード例 #16
0
ファイル: artefacto.py プロジェクト: dued/dued
 def incluye_nombre_del_artefacto(self):
     llamar = Llamar(self.artefacto)
     assert str(
         llamar) == "<Llamar 'miartefacto', args: (), kwargs: {}>"
コード例 #17
0
ファイル: artefacto.py プロジェクト: dued/dued
 def es_requerido(self):
     with raises(TypeError):
         Llamar()