Video call exploration
-
Talkilla currently requires Firefox > 23.
-
Make sure you have node installed.
-
Install the required node dependencies:
$ npm install # or alternatively: $ make install -
Start the server:
$ env PORT=5000 node app.js # or alternatively: $ make runserver -
In Firefox, set
media.navigator.permission.disabledtotrue -
Point your web browser to http://localhost:5000.
App configuration is done using JSON files stored in the config/ directory:
dev.jsonfor thedevenvironment configurationprod.jsonfor theprodenvironment configurationlocal.jsonfor any settings you may want to override locally (this file is never versionned)
Settings are:
DEBUG: to have log messages printed out to the browser consoleWSURL: the url to the WebSocket server endpoint
To run the unit tests:
-
Make sure you've installed node and the required modules as per the local development section.
-
On Mac, you need to have /Applications/FirefoxNightly.app installed (aka Firefox 24)
-
On Linux, you need to have /usr/bin/firefox-nightly present, or a Firefox will be downloaded for you.
-
Run the tests:
$ make test
To run the front-end unit tests standalone:
-
First make sure you are running the server in development mode:
$ make runserver_dev
It can useful to execute individual functional tests in the Node debugger. Example usage:
- (add a "debugger;" statement to the code where you want the debugger to break)
- (debug)
- (remove the debugger statement)
Note that because most of the things in the webdriver-selenium API that look like imperative statements are actually magic things that cause most of the semantics of the commands be enqueued by the ControlFlow piece of the "promise manager" to be executed at some point in the future. It can take some experimenting to figure out where to usefully put the debugger statements. It may be particularly useful to add a then() handler to the first promise-returning statement in the test you want to debug and put the debugger statement there.
https://code.google.com/p/selenium/wiki/WebDriverJs#Writing_Tests has more details on how this stuff fits together.
Look for a file named CONTRIBUTING.md in this repository. It
contains our contributing guidelines.
All source code here is available under the MPL 2.0 license, unless otherwise indicated.