def test_output_file_none(monkeypatch): mocked_stdout = MockStdStream() mocked_stderr = MockStdStream() monkeypatch.setattr(sys.stdout, 'write', mocked_stdout.write) monkeypatch.setattr(sys.stderr, 'write', mocked_stderr.write) save_if_needs(None, 'license list') # stdout and stderr are expected not to be called assert '' == mocked_stdout.printed assert '' == mocked_stderr.printed
def test_output_file_error(monkeypatch): def mocked_open(*args, **kwargs): raise IOError mocked_stdout = MockStdStream() mocked_stderr = MockStdStream() monkeypatch.setattr(piplicenses, 'open', mocked_open) monkeypatch.setattr(sys.stdout, 'write', mocked_stdout.write) monkeypatch.setattr(sys.stderr, 'write', mocked_stderr.write) monkeypatch.setattr(sys, 'exit', lambda n: None) save_if_needs('/foo/bar.txt', 'license list') assert '' == mocked_stdout.printed assert 'check path: ' in mocked_stderr.printed
def test_output_file_sccess(monkeypatch): def mocked_open(*args, **kwargs): import tempfile return tempfile.TemporaryFile('w') mocked_stdout = MockStdStream() mocked_stderr = MockStdStream() monkeypatch.setattr(piplicenses, 'open', mocked_open) monkeypatch.setattr(sys.stdout, 'write', mocked_stdout.write) monkeypatch.setattr(sys.stderr, 'write', mocked_stderr.write) monkeypatch.setattr(sys, 'exit', lambda n: None) save_if_needs('/foo/bar.txt', 'license list') assert 'created path: ' in mocked_stdout.printed assert '' == mocked_stderr.printed