diff options
| author | Misko Hevery | 2012-02-10 21:16:50 -0800 | 
|---|---|---|
| committer | Misko Hevery | 2012-02-21 22:45:59 -0800 | 
| commit | c8ee631c1999fc87c0002bb27bd411fb953a726f (patch) | |
| tree | 7a0ffbb36db38a5c6f7c5fe9102c8b99d5ac8338 /test/jqLiteSpec.js | |
| parent | cae9ad4ba9c31dfa9e1aa2acc945dfc8242d1c72 (diff) | |
| download | angular.js-c8ee631c1999fc87c0002bb27bd411fb953a726f.tar.bz2 | |
feat(mouseenter/mouseleave): emulating ie events
Diffstat (limited to 'test/jqLiteSpec.js')
| -rw-r--r-- | test/jqLiteSpec.js | 44 | 
1 files changed, 44 insertions, 0 deletions
| diff --git a/test/jqLiteSpec.js b/test/jqLiteSpec.js index 8b49502f..358b8c4a 100644 --- a/test/jqLiteSpec.js +++ b/test/jqLiteSpec.js @@ -603,6 +603,50 @@ describe('jqLite', function() {        browserTrigger(a, 'click');      }); + +    describe('mouseenter-mouseleave', function() { +      var root, parent, sibling, child, log; + +      beforeEach(function() { +        log = ''; +        root = jqLite('<div>root<p>parent<span>child</span></p><ul></ul></div>'); +        parent = root.find('p'); +        sibling = root.find('ul'); +        child = parent.find('span'); + +        parent.bind('mouseenter', function() { log += 'parentEnter;'; }); +        parent.bind('mouseleave', function() { log += 'parentLeave;'; }); +        parent.mouseover = function(event) { parent.data('bind').mouseover(event || {}); }; +        parent.mouseout = function(event) { parent.data('bind').mouseout(event || {}); }; + +        child.bind('mouseenter', function() { log += 'childEnter;'; }); +        child.bind('mouseleave', function() { log += 'childLeave;'; }); +        child.mouseover = function(event) { child.data('bind').mouseover(event || {}); }; +        child.mouseout = function(event) { child.data('bind').mouseout(event || {}); }; +      }); + +      afterEach(function() { +        dealoc(root); +      }); + +      it('should fire mouseenter when coming from outside the browser window', function() { +        if (window.jQuery) return; +        parent.mouseover(); +        expect(log).toEqual('parentEnter;'); + +        child.mouseover(); +        expect(log).toEqual('parentEnter;childEnter;'); +        child.mouseover(); +        expect(log).toEqual('parentEnter;childEnter;'); + +        child.mouseout(); +        expect(log).toEqual('parentEnter;childEnter;'); +        child.mouseout(); +        expect(log).toEqual('parentEnter;childEnter;childLeave;'); +        parent.mouseout(); +        expect(log).toEqual('parentEnter;childEnter;childLeave;parentLeave;'); +      }); +    });    }); | 
