aboutsummaryrefslogtreecommitdiffstats
path: root/test/ngTouch/directive/ngClickSpec.js
diff options
context:
space:
mode:
authorMatias Niemelä2013-09-06 16:06:37 -0400
committerMatias Niemelä2013-09-06 17:00:37 -0400
commit28f56a383e9d1ff378e3568a3039e941c7ffb1d8 (patch)
treec87df3d5838df200782a1261f46c2ad74d609cda /test/ngTouch/directive/ngClickSpec.js
parent32ad2926116e5f52ed04d788220bd389f8d0a4ac (diff)
downloadangular.js-28f56a383e9d1ff378e3568a3039e941c7ffb1d8.tar.bz2
fix(ngScenario): provide event parameters as object
BREAKING CHANGE: browserTrigger now uses an eventData object instead of direct parameters for mouse events. To migrate, place the `keys`,`x` and `y` parameters inside of an object and place that as the third parameter for the browserTrigger function.
Diffstat (limited to 'test/ngTouch/directive/ngClickSpec.js')
-rw-r--r--test/ngTouch/directive/ngClickSpec.js246
1 files changed, 205 insertions, 41 deletions
diff --git a/test/ngTouch/directive/ngClickSpec.js b/test/ngTouch/directive/ngClickSpec.js
index 2a11adee..0eccc8f3 100644
--- a/test/ngTouch/directive/ngClickSpec.js
+++ b/test/ngTouch/directive/ngClickSpec.js
@@ -58,10 +58,18 @@ describe('ngClick (touch)', function() {
expect($rootScope.count).toBe(0);
time = 10;
- browserTrigger(element, 'touchstart', [], 10, 10);
+ browserTrigger(element, 'touchstart',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
time = 900;
- browserTrigger(element, 'touchend', [], 10, 10);
+ browserTrigger(element, 'touchend',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
expect($rootScope.count).toBe(0);
}));
@@ -74,8 +82,16 @@ describe('ngClick (touch)', function() {
expect($rootScope.tapped).toBeUndefined();
- browserTrigger(element, 'touchstart', [], 10, 10);
- browserTrigger(element, 'touchend', [], 400, 400);
+ browserTrigger(element, 'touchstart',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
+ browserTrigger(element, 'touchend',{
+ keys: [],
+ x: 400,
+ y: 400
+ });
expect($rootScope.tapped).toBeUndefined();
}));
@@ -88,9 +104,17 @@ describe('ngClick (touch)', function() {
expect($rootScope.tapped).toBeUndefined();
- browserTrigger(element, 'touchstart', [], 10, 10);
+ browserTrigger(element, 'touchstart',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
browserTrigger(element, 'touchmove');
- browserTrigger(element, 'touchend', [], 400, 400);
+ browserTrigger(element, 'touchend',{
+ keys: [],
+ x: 400,
+ y: 400
+ });
expect($rootScope.tapped).toBeUndefined();
}));
@@ -104,9 +128,17 @@ describe('ngClick (touch)', function() {
var CSS_CLASS = 'ng-click-active';
expect(element.hasClass(CSS_CLASS)).toBe(false);
- browserTrigger(element, 'touchstart', 10, 10);
+ browserTrigger(element, 'touchstart',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
expect(element.hasClass(CSS_CLASS)).toBe(true);
- browserTrigger(element, 'touchend', 10, 10);
+ browserTrigger(element, 'touchend',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
expect(element.hasClass(CSS_CLASS)).toBe(false);
expect($rootScope.tapped).toBe(true);
}));
@@ -135,15 +167,27 @@ describe('ngClick (touch)', function() {
// Fire touchstart at 10ms, touchend at 50ms, the click at 300ms.
time = 10;
- browserTrigger(element, 'touchstart', [], 10, 10);
+ browserTrigger(element, 'touchstart',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
time = 50;
- browserTrigger(element, 'touchend', [], 10, 10);
+ browserTrigger(element, 'touchend',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
expect($rootScope.count).toBe(1);
time = 100;
- browserTrigger(element, 'click', [], 10, 10);
+ browserTrigger(element, 'click',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
expect($rootScope.count).toBe(1);
}));
@@ -169,15 +213,27 @@ describe('ngClick (touch)', function() {
expect($rootScope.count2).toBe(0);
time = 10;
- browserTrigger(element1, 'touchstart', [], 10, 10);
+ browserTrigger(element1, 'touchstart',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
time = 50;
- browserTrigger(element1, 'touchend', [], 10, 10);
+ browserTrigger(element1, 'touchend',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
expect($rootScope.count1).toBe(1);
time = 100;
- browserTrigger(element2, 'click', [], 10, 10);
+ browserTrigger(element2, 'click',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
expect($rootScope.count1).toBe(1);
expect($rootScope.count2).toBe(0);
@@ -203,40 +259,76 @@ describe('ngClick (touch)', function() {
expect($rootScope.count2).toBe(0);
time = 10;
- browserTrigger(element1, 'touchstart', [], 10, 10);
+ browserTrigger(element1, 'touchstart',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
time = 50;
- browserTrigger(element1, 'touchend', [], 10, 10);
+ browserTrigger(element1, 'touchend',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
expect($rootScope.count1).toBe(1);
time = 90;
// Verify that it is blured so we don't get soft-keyboard
element1[0].blur = jasmine.createSpy('blur');
- browserTrigger(element1, 'click', [], 10, 10);
+ browserTrigger(element1, 'click',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
expect(element1[0].blur).toHaveBeenCalled();
expect($rootScope.count1).toBe(1);
time = 100;
- browserTrigger(element1, 'touchstart', [], 10, 10);
+ browserTrigger(element1, 'touchstart',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
time = 130;
- browserTrigger(element1, 'touchend', [], 10, 10);
+ browserTrigger(element1, 'touchend',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
expect($rootScope.count1).toBe(2);
// Click on other element that should go through.
time = 150;
- browserTrigger(element2, 'touchstart', [], 100, 120);
- browserTrigger(element2, 'touchend', [], 100, 120);
- browserTrigger(element2, 'click', [], 100, 120);
+ browserTrigger(element2, 'touchstart',{
+ keys: [],
+ x: 100,
+ y: 120
+ });
+ browserTrigger(element2, 'touchend',{
+ keys: [],
+ x: 100,
+ y: 120
+ });
+ browserTrigger(element2, 'click',{
+ keys: [],
+ x: 100,
+ y: 120
+ });
expect($rootScope.count2).toBe(1);
// Click event for the element that should be busted.
time = 200;
- browserTrigger(element1, 'click', [], 10, 10);
+ browserTrigger(element1, 'click',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
expect($rootScope.count1).toBe(2);
expect($rootScope.count2).toBe(1);
@@ -253,14 +345,26 @@ describe('ngClick (touch)', function() {
expect($rootScope.count).toBe(0);
time = 10;
- browserTrigger(element1, 'touchstart', [], 10, 10);
+ browserTrigger(element1, 'touchstart',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
time = 50;
- browserTrigger(element1, 'touchend', [], 10, 10);
+ browserTrigger(element1, 'touchend',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
expect($rootScope.count).toBe(1);
time = 2700;
- browserTrigger(element1, 'click', [], 10, 10);
+ browserTrigger(element1, 'click',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
expect($rootScope.count).toBe(2);
}));
@@ -276,15 +380,27 @@ describe('ngClick (touch)', function() {
expect($rootScope.count).toBe(0);
time = 10;
- browserTrigger(element1, 'touchstart', [], 10, 10);
+ browserTrigger(element1, 'touchstart',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
time = 50;
- browserTrigger(element1, 'touchend', [], 10, 10);
+ browserTrigger(element1, 'touchend',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
expect($rootScope.count).toBe(1);
time = 2700;
- browserTrigger(element1, 'click', [], 10, 10);
+ browserTrigger(element1, 'click',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
expect($rootScope.count).toBe(2);
}));
@@ -319,8 +435,16 @@ describe('ngClick (touch)', function() {
$rootScope.disabled = true;
$rootScope.$digest();
- browserTrigger(element, 'touchstart', [], 10, 10);
- browserTrigger(element, 'touchend', [], 10, 10);
+ browserTrigger(element, 'touchstart',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
+ browserTrigger(element, 'touchend',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
expect($rootScope.event).toBeUndefined();
}));
@@ -329,32 +453,64 @@ describe('ngClick (touch)', function() {
$rootScope.disabled = false;
$rootScope.$digest();
- browserTrigger(element, 'touchstart', [], 10, 10);
- browserTrigger(element, 'touchend', [], 10, 10);
+ browserTrigger(element, 'touchstart',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
+ browserTrigger(element, 'touchend',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
expect($rootScope.event).toBeDefined();
}));
it('should not trigger click if regular disabled is true', inject(function($rootScope, $compile) {
element = $compile('<div ng-click="event = $event" disabled="true"></div>')($rootScope);
- browserTrigger(element, 'touchstart', [], 10, 10);
- browserTrigger(element, 'touchend', [], 10, 10);
+ browserTrigger(element, 'touchstart',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
+ browserTrigger(element, 'touchend',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
expect($rootScope.event).toBeUndefined();
}));
it('should not trigger click if regular disabled is present', inject(function($rootScope, $compile) {
element = $compile('<button ng-click="event = $event" disabled ></button>')($rootScope);
- browserTrigger(element, 'touchstart', [], 10, 10);
- browserTrigger(element, 'touchend', [], 10, 10);
+ browserTrigger(element, 'touchstart',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
+ browserTrigger(element, 'touchend',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
expect($rootScope.event).toBeUndefined();
}));
it('should trigger click if regular disabled is not present', inject(function($rootScope, $compile) {
element = $compile('<div ng-click="event = $event" ></div>')($rootScope);
- browserTrigger(element, 'touchstart', [], 10, 10);
- browserTrigger(element, 'touchend', [], 10, 10);
+ browserTrigger(element, 'touchstart',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
+ browserTrigger(element, 'touchend',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
expect($rootScope.event).toBeDefined();
}));
@@ -371,8 +527,16 @@ describe('ngClick (touch)', function() {
called = true;
});
- browserTrigger(element, 'touchstart', [], 10, 10);
- browserTrigger(element, 'touchend', [], 10, 10);
+ browserTrigger(element, 'touchstart',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
+ browserTrigger(element, 'touchend',{
+ keys: [],
+ x: 10,
+ y: 10
+ });
expect(called).toEqual(true);
}));