diff options
| author | Miško Hevery | 2012-12-14 05:49:22 -0800 | 
|---|---|---|
| committer | Igor Minar | 2013-01-22 11:32:27 -0800 | 
| commit | b49c3a1a1efc85b31053481eea450c7be407957c (patch) | |
| tree | 38796448344647593b528f68a3376328a58daecd /src | |
| parent | c7addd488677307c6d2b35c7656179fbe6d80999 (diff) | |
| download | angular.js-b49c3a1a1efc85b31053481eea450c7be407957c.tar.bz2 | |
docs(q): added testing information
Diffstat (limited to 'src')
| -rw-r--r-- | src/ng/q.js | 24 | 
1 files changed, 24 insertions, 0 deletions
diff --git a/src/ng/q.js b/src/ng/q.js index fd412a33..8b474755 100644 --- a/src/ng/q.js +++ b/src/ng/q.js @@ -123,6 +123,30 @@   *   you can treat promises attached to a scope as if they were the resulting values.   * - Q has many more features that $q, but that comes at a cost of bytes. $q is tiny, but contains   *   all the important functionality needed for common async tasks. + *  + *  # Testing + *  + *  <pre> + *    it('should simulate promise', inject(function($q, $rootSCope) { + *      var deferred = $q.defer(); + *      var promise = deferred.promise; + *      var resolvedValue; + *  + *      promise.then(function(value) { resolvedValue = value; }); + *      expect(resolvedValue).toBeUndefined(); + *  + *      // Simulate resolving of promise + *      defered.resolve(123); + *      // Note that the 'then' function does not get called synchronously. + *      // This is because we want the promise API to always be async, whether or not + *      // it got called synchronously or asynchronously. + *      expect(resolvedValue).toBeUndefined(); + *  + *      // Propagate promise resolution to 'then' functions using $apply(). + *      $rootScope.$apply(); + *      expect(resolvedValue).toEqual(123); + *    }); + *  </pre>   */  function $QProvider() {  | 
