Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mypurecloud/webrtc-troubleshooter
🔍 🔧 Framework agnostic WebRTC Troubleshooting Diagnostics adapted from test.webrtc.org
https://github.com/mypurecloud/webrtc-troubleshooter
webrtc webrtc-tools
Last synced: 2 months ago
JSON representation
🔍 🔧 Framework agnostic WebRTC Troubleshooting Diagnostics adapted from test.webrtc.org
- Host: GitHub
- URL: https://github.com/mypurecloud/webrtc-troubleshooter
- Owner: MyPureCloud
- License: mit
- Created: 2016-07-12T17:30:09.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2024-02-13T23:04:45.000Z (11 months ago)
- Last Synced: 2024-04-23T13:06:34.634Z (8 months ago)
- Topics: webrtc, webrtc-tools
- Language: TypeScript
- Homepage:
- Size: 10.3 MB
- Stars: 28
- Watchers: 43
- Forks: 8
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# webrtc-troubleshooter
[![Build Status](https://travis-ci.org/MyPureCloud/webrtc-troubleshooter.svg?branch=master)](https://travis-ci.org/MyPureCloud/webrtc-troubleshooter)
[![Coverage Status](https://coveralls.io/repos/github/MyPureCloud/webrtc-troubleshooter/badge.svg?branch=master)](https://coveralls.io/github/MyPureCloud/webrtc-troubleshooter?branch=master)This provides diagnostic tests for basic WebRTC functionality. See the [test-page](./test-page/) directory for usage.
# Getting Started
* `git clone` this repository
* `npm install`
* Run [unit-tests](#Testing) using `npm test`
* [Develop](#Develop) against the diagnostic tests using `npm start` and navigating to [http://localhost:8080/test-page](http://localhost:8080/test-page)# Develop
To develop diagnostic tests this repo has a utility [./test-page/index.html](./test-page/index.html) that pulls in the tests and runs them in the browser. For WebRTC connections, most of the tests force the use of `relay` since the tests make peer connections to the same host.
* `npm start` will run webpack with the `--watch` flag and serve the test-page using stupid server.
* This is super helpful when you are writing new tests. You will still need to refrash the browser to pick up any new changes, but at least webpack will rebuild the app when you save a file :)test-page/index.html
for console output of 6 tests to ensure webrtc is properly functioningHere is a stringified version of google's STUN servers for quick reference. Granted, you will still need an active TURN server for some of these tests to pass, but this will get the tests started.
```
[{"type":"stun","urls":"stun:stun.l.google.com:19302"}]
```# Testing
The tests now use [Jest](https://jestjs.io/)!> Test names must match the `*.spec.ts` or `*.spec.js` naming convention. This is configured in [jest.config.js](./jest.config.js)
* `npm test` will run both linting, all the unit-test, and report coverage in text form in the command line.
* `npm run test:watch` will run only the unit-tests and watch the files for changes (it also skips code coverage reporting).