Name: gaia
Owner: Mozilla-B2G
Description: Gaia is a HTML5-based Phone UI for the Boot 2 Gecko Project. NOTE: For details of what branches are used for what releases, see
Created: 2011-09-03 01:38:46.0
Updated: 2018-01-13 15:33:21.0
Pushed: 2017-03-26 21:44:16.0
Homepage: https://wiki.mozilla.org/B2G
Size: 1243169
Language: JavaScript
GitHub Committers
User | Most Recent Commit | # Commits |
---|
Other Committers
User | Most Recent Commit | # Commits |
---|
Gaia is Mozilla's Phone UX for the Boot to Gecko (B2G) project.
Boot to Gecko aims to create a complete, standalone operating system for the open web.
You can read more about B2G here:
follow us on twitter: @Boot2Gecko
join the Gaia mailing list:
and talk to us on IRC:
fxos on irc.mozilla.org
The Gaia/Hacking page on MDN has all the information that you need to start working on Gaia, including building and running Gaia on a compatible device or desktop computer.
Autolander is a bot which integrates github and bugzilla workflows.
Features available:
Unit tests for an app go in apps/<APP>/test/unit/
.
To run all the unit tests with B2G Desktop:
Run DEBUG=1 make
Run make test-agent-server &
Run B2G Desktop and open the Test Agent app
Run make test-agent-test
or make test-agent-test APP=<APP>
to run unit tests for a
specific app
More importantly, you can use test-agent-server to watch the files on the filesystem and execute relevant tests when they change:
DEBUG=1 make
make test-agent-server &
Note: If you add new files, you will need to restart test-agent-server.
As a convenience, you can also use the gaia-test
script to launch the
test-agent-server and open the Test Agent app in firefox:
$PATH
or set $FIREFOX
to your preferred
firefox/aurora/nightly binary../bin/gaia-test
to run the test-agent-server and launch firefox.make test-agent-test
or modify files as described above.For more details on writing tests, see: https://developer.mozilla.org/en/Mozilla/Boot_to_Gecko/Gaia_Unit_Tests
Gaia uses
marionette-js-runner
for ui testing. Tests need to live in apps/<some
app>/test/marionette
and should be named *_test.js
. Gaia's marionette
tests run on nodejs and you'll need nodejs>=v0.12 and npm>=v2.0 installed.
Shared code for tests lives in plugins at
tests/jsmarionette/plugins
or in helpers at shared/test/integration
.
For more details on writing integration tests, see: https://developer.mozilla.org/en-US/docs/Mozilla/Firefox_OS/Automated_testing/Gaia_integration_tests
test-integration
<APP> make test-integration
_FILES="/abs/path/to/some_test.js /abs/path/to/other_test.js" make test-integration
You can run tests on device by plugging in your phone and adding the BUILDAPP=device to the make command:
DAPP=device make test-integration
VERBOSE=1
pipes gecko logs to your command line process for debugging.Build system has its own unit test and integration test. Both are running on Node.js
To run unit test locally, using following command:
ke build-test-unit
To run integration test locally, using following command:
ke build-test-integration
Both the build unit or integration test can invoke specific test files by TEST_FILES
build-test-unit TEST_FILES=<test file path>
build-test-integration TEST_FILES=<test file path>
For example, we could run the keyboard_test.js
build integration test in keyboard app with the below command.
build-test-integration TEST_FILES=apps/keyboard/test/build/integration/keyboard_test.js
If you would like to run more than one test, we could do the below command.
build-test-integration TEST_FILES="apps/keyboard/test/build/integration/keyboard_test.js apps/keyboard/test/build/integration/keyboard_layout_test.js"
To generate API reference locally, run make docs
command to generate docs. The generated per app API docs will be located in docs
folder.
You could generate single app doc with this:
lp jsdoc:system