As OSCON Wraps Up, Urban Airship Celebrates Open Source
Open source is part of our DNA here at the Airship. Sitting here between the much larger technology communities of Silicon Valley and Seattle, Portland has the unique distinction of being at the epicenter of the open source software industry with leading foundations, businesses and a vibrant and growing tech community.
Portland has been the host city for most of the OSCON shows, and we were the first city in the US to adopt a formal policy in support of opening data to outside developers and adopting open source solutions in technology procurement. In fact, our CEO and co-founder Scott Kveton co-founded the Open Source Lab at Oregon State University, which was instrumental in helping several open source projects grow into mainstream usage, including the Mozilla Foundation, the Linux Kernel and Drupal.
As OSCON comes to a close, we’ll demonstrate our updated integration with PhoneGap, which was purchased by Adobe and contributed to the Apache Software Foundation to start a new project called Apache Cordova. Developers using the latest version of the open source mobile development framework will be able to easily add the full push messaging capabilities of Urban Airship to their iOS and Android apps in order to grow engagement and user retention.
A simple command:
drive .. runs the tests in a local JSDom node environment for quick smoke testing of recent changes. When you're fairly sure your changes work, you can simply point drive at a driver url:
drive . --driver host:port to run the tests in all environments available on the drive server. Or you can narrow the scope of your tests with
--want, which matches particular environments (e.g.,
drive . --driver host:port --want chrome --want ie).
- All console logs are piped to your terminal locally and annotated with the environment that produced them.
- All requested media is piped from your local computer, through the drive server, and into the browser.
- All test runs are namespaced, and all media is served under that namespace, so the target browsers will never cache that data.
- Designed to feel similar to mocha’s TDD api.
- Provides the node assert module.
- You can specify the HTML to be served with your test suite by providing a relative path to that HTML file.
- You can mock out XHR endpoints relative to the namespaced test suite.
- You can specify that XHR requests going to one URL should hit a namespaced URL instead (useful for testing code that contains hard coded XHR endpoints).
- Tests may be synchronous or asynchronous.
- Full access to require.
- Tests may be run with code coverage.
- Test servers may be configured to automatically include pre-defined media (e.g., jQuery, or any other library not wrapped in AMD raiment).
- Test servers accept an adaptor module that can redirect test metrics to another test result aggregation server (or simply output debug information about test runs).