From 04d7317cdd95ba00783389f89f6e9a7e1fc418f8 Mon Sep 17 00:00:00 2001 From: Matias Niemelä Date: Mon, 24 Feb 2014 18:14:29 -0500 Subject: chore(core): introduce a wrapper for requestAnimationFrame --- test/ng/rafSpec.js | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 test/ng/rafSpec.js (limited to 'test') 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); + } + })); + }); +}); -- cgit v1.2.3