@johnf/react-native-owl
Version:
Visual regression testing for React Native
32 lines (30 loc) • 1.02 kB
JavaScript
;
import { WEBSOCKET_PORT } from "../constants.js";
import { ANDROID_WS_HOST, IOS_WS_HOST } from "./constants.js";
/**
* Create a connection to the websocket server,
* and call the onMessage callback when it receives any messages.
*/
export const initWebSocket = (logger, platform, onMessage) => {
const ipAddress = platform === 'android' ? ANDROID_WS_HOST : IOS_WS_HOST;
const ws = new WebSocket(`ws://${ipAddress}:${WEBSOCKET_PORT}`);
return new Promise((resolve, reject) => {
ws.onopen = () => {
logger.info('[OWL - Websocket] onopen');
ws.send('OWL Client Connected!');
resolve(ws);
};
ws.onmessage = e => {
logger.info(`[OWL - Websocket] onmessage: ${e.data}`);
onMessage(e.data.toString());
};
ws.onerror = e => {
logger.info(`[OWL - Websocket] onerror: ${e.message}`);
};
ws.onclose = e => {
logger.info(`[OWL - Websocket] onclose: ${e.reason}`);
reject(e);
};
});
};
//# sourceMappingURL=websocket.js.map