def disable_imports(): with attest.disable_imports('sys', 'os'): with Assert.raises(ImportError): import sys with Assert.raises(ImportError): import os import sys import os with attest.disable_imports(): import datetime assert datetime is sys.modules['datetime']
def iter_mods(): core = ["attest"] + [ "attest." + mod for mod in """ast codegen collectors contexts deprecated hook __main__ reporters run statistics utils pygments""".split() ] tests = ["attest.tests"] + [ "attest.tests." + mod for mod in """asserts classy collectors contexts hook _meta reporters utils dummy dummy.foo""".split() ] found = list(utils.deep_iter_modules("attest")) expected = core + tests assert set(expected) == set(found) assert len(expected) == len(found) found = list(utils.deep_iter_modules("attest.tests")) expected = tests assert set(expected) == set(found) assert len(expected) == len(found) found = list(utils.deep_iter_modules("attest.ast")) assert found == ["attest.ast"] with raises(AttributeError): list(utils.deep_iter_modules("attest._nil")) with disable_imports("attest"): with raises(ImportError): list(utils.deep_iter_modules("attest"))
def iter_mods(): core = ['attest'] + [ 'attest.' + mod for mod in '''ast codegen collectors contexts deprecated hook __main__ reporters run statistics utils pygments'''.split() ] tests = ['attest.tests'] + [ 'attest.tests.' + mod for mod in '''asserts classy collectors contexts hook _meta reporters utils dummy dummy.foo'''.split() ] found = list(utils.deep_iter_modules('attest')) expected = core + tests assert set(expected) == set(found) assert len(expected) == len(found) found = list(utils.deep_iter_modules('attest.tests')) expected = tests assert set(expected) == set(found) assert len(expected) == len(found) found = list(utils.deep_iter_modules('attest.ast')) assert found == ['attest.ast'] with raises(AttributeError): list(utils.deep_iter_modules('attest._nil')) with disable_imports('attest'): with raises(ImportError): list(utils.deep_iter_modules('attest'))
def iter_mods(): core = ['attest.' + mod for mod in '''ast codegen collectors contexts deprecated hook __main__ reporters run statistics utils pygments'''.split()] + ['attest'] tests = ['attest.tests.' + mod for mod in '''asserts classy collectors contexts hook _meta reporters utils'''.split()] + ['attest.tests'] found = list(utils.deep_iter_modules('attest')) expected = core + tests assert set(expected) == set(found) assert len(expected) == len(found) found = list(utils.deep_iter_modules('attest.tests')) expected = tests assert set(expected) == set(found) assert len(expected) == len(found) found = list(utils.deep_iter_modules('attest.ast')) assert found == ['attest.ast'] with raises(AttributeError): list(utils.deep_iter_modules('attest._nil')) with disable_imports('attest'): with raises(ImportError): list(utils.deep_iter_modules('attest'))
def terminal_size(): size = utils.get_terminal_size() assert type(size) is tuple assert len(size) == 2 assert type(size[0]) is int assert type(size[1]) is int with disable_imports("fcntl", "termios"): size = utils.get_terminal_size() assert size == (80, 24) size = utils.get_terminal_size((1, 2)) assert size == (1, 2)
def terminal_size(): size = utils.get_terminal_size() assert type(size) is tuple assert len(size) == 2 assert type(size[0]) is int assert type(size[1]) is int with disable_imports('fcntl', 'termios'): size = utils.get_terminal_size() assert size == (80, 24) size = utils.get_terminal_size((1, 2)) assert size == (1, 2)
def string_importing(): assert import_dotted_name("attest") is attest assert import_dotted_name("attest.tests") is attest.tests assert import_dotted_name("attest.utils") is utils assert import_dotted_name("attest.utils:import_dotted_name") is import_dotted_name assert import_dotted_name("attest.utils.import_dotted_name") is import_dotted_name with raises(AttributeError): import_dotted_name("attest._nil") with raises(ImportError): with disable_imports("attest"): import_dotted_name("attest")
def string_importing(): assert import_dotted_name('attest') is attest assert import_dotted_name('attest.tests') is attest.tests assert import_dotted_name('attest.utils') is utils assert import_dotted_name('attest.utils:import_dotted_name') \ is import_dotted_name assert import_dotted_name('attest.utils.import_dotted_name') \ is import_dotted_name with raises(AttributeError): import_dotted_name('attest._nil') with raises(ImportError): with disable_imports('attest'): import_dotted_name('attest')
def auto_reporter(): # Inside tests, sys.stdout is not a tty assert isinstance(attest.auto_reporter(), attest.PlainReporter) class FakeTTY(object): def isatty(self): return True sys.stdout, orig = FakeTTY(), sys.stdout try: assert isinstance(attest.auto_reporter(), attest.FancyReporter) with attest.disable_imports('progressbar', 'pygments'): assert isinstance(attest.auto_reporter(), attest.PlainReporter) finally: sys.stdout = orig
def need_hangulize(self): with disable_imports('hangulize'): with raises(ImportError): Loanword(u'štěstí', 'ces')