def test_fetch_icon_emit_got_icon_signal(monkeypatch, qtbot, tmpdir): sr = SetupRunner([]) dest = str(tmpdir.join('icon.png')) monkeypatch.setattr('treq.get', fake_get) monkeypatch.setattr('treq.content', lambda _: b'0') with qtbot.wait_signal(sr.got_icon) as blocker: yield sr.fetch_icon('http://example.org/icon.png', dest) assert blocker.args == [dest]
def test_fetch_icon(monkeypatch, tmpdir): sr = SetupRunner([]) dest = str(tmpdir.join('icon.png')) monkeypatch.setattr('treq.get', fake_get) monkeypatch.setattr('treq.content', lambda _: b'0') yield sr.fetch_icon('http://example.org/icon.png', dest) with open(dest) as f: assert f.read() == '0'
def test_fetch_icon(monkeypatch, tmpdir): sr = SetupRunner([]) dest = str(tmpdir.join("icon.png")) monkeypatch.setattr("treq.get", fake_get) monkeypatch.setattr("treq.content", lambda _: b"0") yield sr.fetch_icon("http://example.org/icon.png", dest) with open(dest) as f: assert f.read() == "0"
def test_fetch_icon_use_tor(monkeypatch, tmpdir): sr = SetupRunner([], use_tor=True) dest = str(tmpdir.join("icon.png")) fake_tor_web_agent = MagicMock() def fake_tor(*args): tor = MagicMock() tor.web_agent.return_value = fake_tor_web_agent return tor kwargs_received = [] def fake_treq_get(*args, **kwargs): response = MagicMock() response.code = 200 kwargs_received.append(kwargs) return response monkeypatch.setattr("treq.get", fake_treq_get) monkeypatch.setattr("treq.content", lambda _: b"0") monkeypatch.setattr("gridsync.setup.get_tor", fake_tor) yield sr.fetch_icon("http://example.org/icon.png", dest) assert kwargs_received == [{"agent": fake_tor_web_agent}]
def test_fetch_icon_no_emit_got_icon_signal(monkeypatch, qtbot, tmpdir): sr = SetupRunner([]) dest = str(tmpdir.join('icon.png')) monkeypatch.setattr('treq.get', fake_get_code_500) with qtbot.assert_not_emitted(sr.got_icon): yield sr.fetch_icon('http://example.org/icon.png', dest)
def test_fetch_icon_use_tor_raise_tor_error(monkeypatch, tmpdir): sr = SetupRunner([], use_tor=True) dest = str(tmpdir.join("icon.png")) monkeypatch.setattr("gridsync.setup.get_tor", lambda _: None) with pytest.raises(TorError): yield sr.fetch_icon("http://example.org/icon.png", dest)