def init_aun_actua_como_superclase_init(self): # No requiere args assert isinstance(ContextoSimulado().config, Config) config = Config(anulaciones={"foo": "bar"}) # Posarg assert ContextoSimulado(config).config is config # Kwarg assert ContextoSimulado(config=config).config is config
def sudo_tambien_cubierto(self): c = ContextoSimulado(sudo=Resultado(stderr="excelente")) assert c.sudo("no tiene colchón").stderr == "excelente" try: ContextoSimulado().sudo("bah") except NotImplementedError: pass else: assert False, "No obtuve un NotImplementedError para sudo!"
def sudo(self): mc = ContextoSimulado(sudo={"foo": Resultado("bar")}) assert mc.sudo("foo").stdout == "bar" mc.set_result_for("sudo", "foo", Resultado("biz")) assert mc.sudo("foo").stdout == "biz"
def correr(self): mc = ContextoSimulado(correr={"foo": Resultado("bar")}) assert mc.correr("foo").stdout == "bar" mc.set_result_for("correr", "foo", Resultado("biz")) assert mc.correr("foo").stdout == "biz"
def sudo(self): mc = ContextoSimulado(sudo=[Resultado("foo")]) with raises(TypeError): mc.set_result_for("sudo", "cualquier", Resultado("bar"))
def correr(self): mc = ContextoSimulado(correr=[Resultado("foo")]) with raises(TypeError): mc.set_result_for("correr", "cualquier", Resultado("bar"))
def tipo_kwarg_inesperado_produce_TypeError(self): with raises(TypeError): ContextoSimulado(correr=123)
def mapping_to_iterable(self): self._espere_NotImplementedError( ContextoSimulado(correr={"algo": [Resultado("bah")]}))
def mapping_to_single_value(self): self._espere_NotImplementedError( ContextoSimulado(correr={"algo": Resultado("bah")}))
def iterable(self): self._espere_NotImplementedError( ContextoSimulado(correr=[Resultado("bah")]))
def single_value(self): self._espere_NotImplementedError( ContextoSimulado(correr=Resultado("bah")))
def metodos_sin_valores_kwarg_genera_NotImplementedError(self): with raises(NotImplementedError): ContextoSimulado().correr( "onoz I did not anticipate this would happen")
def mapa_de_valores_devueltos_kwargs_tambien_puede_tomar_iterables(self): c = ContextoSimulado( correr={"foo": [Resultado("bar"), Resultado("biz")]}) assert c.correr("foo").stdout == "bar" assert c.correr("foo").stdout == "biz"
def valor_devuelto_kwargs_puede_ser_mapas_de_cadena_de_comandos(self): c = ContextoSimulado(correr={"foo": Resultado("bar")}) assert c.correr("foo").stdout == "bar"
def valor_devuelto_kwargs_puede_tomar_iterables_tambien(self): c = ContextoSimulado( correr=[Resultado("alguna salida"), Resultado("¡más!")]) assert c.correr("no tiene colchón").stdout == "alguna salida" assert c.correr("todavía no tiene colchón").stdout == "¡más!"
def kwargs_de_inicio_no_configs_utilizados_como_valores_de_retorno_para_metodos( self): c = ContextoSimulado(correr=Resultado("alguna salida")) assert c.correr("no tiene colchón").stdout == "alguna salida"