def test_main_with_multiprocess(monkeypatch, get, expected): monkeypatch.setattr( 'vladiate.main.parse_args', lambda: stub( list_commands=False, show_version=False, vladfile=stub(), vlads=['Something'], processes=2, )) monkeypatch.setattr('vladiate.main.find_vladfile', lambda *args, **kwargs: stub()) vlad = call_recorder(lambda *args, **kwargs: stub(validate=lambda: stub())) vlad.source = stub() monkeypatch.setattr('vladiate.main.load_vladfile', lambda *args, **kwargs: (None, { 'Something': vlad })) Pool = call_recorder( lambda *args, **kwargs: stub(map=lambda *args, **kwargs: stub())) monkeypatch.setattr('vladiate.main.Pool', Pool) def empty(calls=[]): if calls: return True calls.append(None) return False result_queue = stub(get=get, empty=empty) monkeypatch.setattr('vladiate.main.result_queue', result_queue) assert main() is expected
def test_main_list_commands(monkeypatch): monkeypatch.setattr( "vladiate.main.parse_args", lambda: stub(list_commands=True, show_version=False, vladfile=stub()), ) monkeypatch.setattr("vladiate.main.find_vladfile", lambda *args, **kwargs: stub()) vlads = ["Something"] monkeypatch.setattr("vladiate.main.load_vladfile", lambda *args, **kwargs: (None, vlads)) assert main() == exits.OK
def test_main_no_vlads_loaded(monkeypatch): monkeypatch.setattr( "vladiate.main.parse_args", lambda: stub(list_commands=False, show_version=False, vladfile=stub()), ) monkeypatch.setattr("vladiate.main.find_vladfile", lambda *args, **kwargs: stub()) vlads = [] monkeypatch.setattr("vladiate.main.load_vladfile", lambda *args, **kwargs: (None, vlads)) assert main() == exits.NOINPUT
def test_main_missing_vlads(monkeypatch): monkeypatch.setattr( 'vladiate.main.parse_args', lambda: stub( list_commands=False, show_version=False, vladfile=stub(), vlads=['Something'], )) monkeypatch.setattr('vladiate.main.find_vladfile', lambda *args, **kwargs: stub()) monkeypatch.setattr( 'vladiate.main.load_vladfile', lambda *args, **kwargs: (None, { 'Something Else': stub() })) assert main() == exits.UNAVAILABLE
def test_main_with_vlads_in_args(monkeypatch): monkeypatch.setattr( 'vladiate.main.parse_args', lambda: stub( list_commands=False, show_version=False, vladfile=stub(), vlads=['Something'], processes=1, )) monkeypatch.setattr('vladiate.main.find_vladfile', lambda *args, **kwargs: stub()) vlad = call_recorder(lambda *args, **kwargs: stub(validate=lambda: stub())) vlad.source = stub() monkeypatch.setattr('vladiate.main.load_vladfile', lambda *args, **kwargs: (None, { 'Something': vlad })) assert main() is exits.OK
def test_main_no_vlads_in_args(monkeypatch): monkeypatch.setattr( "vladiate.main.parse_args", lambda: stub( list_commands=False, show_version=False, vladfile=stub(), vlads=[], processes=1, ), ) monkeypatch.setattr("vladiate.main.find_vladfile", lambda *args, **kwargs: stub()) vlad = call_recorder(lambda *args, **kwargs: stub(validate=lambda: stub())) vlad.source = stub() monkeypatch.setattr( "vladiate.main.load_vladfile", lambda *args, **kwargs: (None, { "Something Else": vlad }), ) assert main() == exits.OK
def test_main_no_vladfile(monkeypatch): monkeypatch.setattr("vladiate.main.find_vladfile", lambda *args, **kwargs: None) assert main() == exits.NOINPUT
def test_main_show_version(monkeypatch): monkeypatch.setattr("vladiate.main.parse_args", lambda: stub(show_version=True)) assert main() == exits.OK