diff options
Diffstat (limited to 'test/ng/rafSpec.js')
| -rw-r--r-- | test/ng/rafSpec.js | 47 | 
1 files changed, 47 insertions, 0 deletions
| diff --git a/test/ng/rafSpec.js b/test/ng/rafSpec.js new file mode 100644 index 00000000..6c15e2d2 --- /dev/null +++ b/test/ng/rafSpec.js @@ -0,0 +1,47 @@ +'use strict'; + +describe('$$rAF', function() { +  it('should queue and block animation frames', inject(function($$rAF) { +    if(!$$rAF.supported) return; + +    var message; +    $$rAF(function() { +      message = 'yes'; +    }); + +    expect(message).toBeUndefined(); +    $$rAF.flush(); +    expect(message).toBe('yes'); +  })); + +  it('should provide a cancellation method', inject(function($$rAF) { +    if(!$$rAF.supported) return; + +    var present = true; +    var cancel = $$rAF(function() { +      present = false; +    }); + +    expect(present).toBe(true); +    cancel(); + +    try { +      $$rAF.flush(); +    } catch(e) {}; +    expect(present).toBe(true); +  })); + +  describe('mocks', function() { +    it('should throw an error if no frames are present', inject(function($$rAF) { +      if($$rAF.supported) { +        var failed = false; +        try { +          $$rAF.flush(); +        } catch(e) { +          failed = true; +        } +        expect(failed).toBe(true); +      } +    })); +  }); +}); | 
