mirror of
https://github.com/chidiwilliams/buzz.git
synced 2026-03-14 22:55:46 +01:00
31 lines
941 B
Python
31 lines
941 B
Python
import json
|
|
from typing import Optional
|
|
|
|
from PyQt6.QtCore import QByteArray, QObject, pyqtSignal
|
|
from PyQt6.QtNetwork import QNetworkAccessManager, QNetworkReply, QNetworkRequest
|
|
|
|
|
|
class MockNetworkReply(QNetworkReply):
|
|
def __init__(self, data: object, _: Optional[QObject] = None) -> None:
|
|
self.data = data
|
|
|
|
def readAll(self) -> "QByteArray":
|
|
return QByteArray(json.dumps(self.data).encode("utf-8"))
|
|
|
|
def error(self) -> "QNetworkReply.NetworkError":
|
|
return QNetworkReply.NetworkError.NoError
|
|
|
|
|
|
class MockNetworkAccessManager(QNetworkAccessManager):
|
|
finished = pyqtSignal(object)
|
|
reply: MockNetworkReply
|
|
|
|
def __init__(
|
|
self, reply: MockNetworkReply, parent: Optional[QObject] = None
|
|
) -> None:
|
|
super().__init__(parent)
|
|
self.reply = reply
|
|
|
|
def get(self, _: "QNetworkRequest") -> "QNetworkReply":
|
|
self.finished.emit(self.reply)
|
|
return self.reply
|