@@ -4,17 +4,15 @@ $(function () {
44 window . Carousel = typeof bootstrap !== 'undefined' ? bootstrap . Carousel : Carousel
55
66 var originWinPointerEvent = window . PointerEvent
7- var originMsPointerEvent = window . MSPointerEvent
7+ window . MSPointerEvent = null
88 var supportPointerEvent = Boolean ( window . PointerEvent || window . MSPointerEvent )
99
1010 function clearPointerEvents ( ) {
1111 window . PointerEvent = null
12- window . MSPointerEvent = null
1312 }
1413
1514 function restorePointerEvents ( ) {
1615 window . PointerEvent = originWinPointerEvent
17- window . MSPointerEvent = originMsPointerEvent
1816 }
1917
2018 var stylesCarousel = [
@@ -1032,11 +1030,15 @@ $(function () {
10321030 return
10331031 }
10341032
1033+ var sandbox = sinon . createSandbox ( )
1034+ if ( 'maxTouchPoints' in navigator ) {
1035+ sandbox . stub ( navigator , 'maxTouchPoints' ) . value ( 1 )
1036+ }
1037+
10351038 Simulator . setType ( 'pointer' )
10361039 assert . expect ( 3 )
10371040 var $styles = $ ( stylesCarousel ) . appendTo ( 'head' )
10381041 var done = assert . async ( )
1039- document . documentElement . ontouchstart = $ . noop
10401042
10411043 var carouselHTML =
10421044 '<div class="carousel" data-interval="false">' +
@@ -1050,8 +1052,7 @@ $(function () {
10501052 ' </div>' +
10511053 '</div>'
10521054
1053- var $carousel = $ ( carouselHTML )
1054- $carousel . appendTo ( '#qunit-fixture' )
1055+ var $carousel = $ ( carouselHTML ) . appendTo ( '#qunit-fixture' )
10551056 var $item = $ ( '#item' )
10561057 $carousel . bootstrapCarousel ( )
10571058 var carousel = $carousel . data ( 'bs.carousel' )
@@ -1061,8 +1062,8 @@ $(function () {
10611062 assert . ok ( true , 'slid event fired' )
10621063 assert . ok ( $item . hasClass ( 'active' ) )
10631064 assert . ok ( spy . called )
1064- delete document . documentElement . ontouchstart
10651065 $styles . remove ( )
1066+ sandbox . restore ( )
10661067 done ( )
10671068 } )
10681069
@@ -1075,6 +1076,12 @@ $(function () {
10751076 QUnit . test ( 'should allow swiperight and call prev with touch events' , function ( assert ) {
10761077 Simulator . setType ( 'touch' )
10771078 clearPointerEvents ( )
1079+
1080+ var sandbox = sinon . createSandbox ( )
1081+ if ( 'maxTouchPoints' in navigator ) {
1082+ sandbox . stub ( navigator , 'maxTouchPoints' ) . value ( 1 )
1083+ }
1084+
10781085 assert . expect ( 3 )
10791086 var done = assert . async ( )
10801087 document . documentElement . ontouchstart = $ . noop
@@ -1104,6 +1111,7 @@ $(function () {
11041111 assert . ok ( spy . called )
11051112 delete document . documentElement . ontouchstart
11061113 restorePointerEvents ( )
1114+ sandbox . restore ( )
11071115 done ( )
11081116 } )
11091117
@@ -1119,12 +1127,16 @@ $(function () {
11191127 return
11201128 }
11211129
1130+ var sandbox = sinon . createSandbox ( )
1131+ if ( 'maxTouchPoints' in navigator ) {
1132+ sandbox . stub ( navigator , 'maxTouchPoints' ) . value ( 1 )
1133+ }
1134+
11221135 assert . expect ( 3 )
11231136 Simulator . setType ( 'pointer' )
11241137
11251138 var $styles = $ ( stylesCarousel ) . appendTo ( 'head' )
11261139 var done = assert . async ( )
1127- document . documentElement . ontouchstart = $ . noop
11281140
11291141 var carouselHTML =
11301142 '<div class="carousel" data-interval="false">' +
@@ -1150,6 +1162,7 @@ $(function () {
11501162 assert . ok ( ! $item . hasClass ( 'active' ) )
11511163 assert . ok ( spy . called )
11521164 $styles . remove ( )
1165+ sandbox . restore ( )
11531166 done ( )
11541167 } )
11551168
@@ -1165,6 +1178,11 @@ $(function () {
11651178 clearPointerEvents ( )
11661179 Simulator . setType ( 'touch' )
11671180
1181+ var sandbox = sinon . createSandbox ( )
1182+ if ( 'maxTouchPoints' in navigator ) {
1183+ sandbox . stub ( navigator , 'maxTouchPoints' ) . value ( 1 )
1184+ }
1185+
11681186 var done = assert . async ( )
11691187 document . documentElement . ontouchstart = $ . noop
11701188
@@ -1192,6 +1210,7 @@ $(function () {
11921210 assert . ok ( ! $item . hasClass ( 'active' ) )
11931211 assert . ok ( spy . called )
11941212 restorePointerEvents ( )
1213+ sandbox . restore ( )
11951214 done ( )
11961215 } )
11971216
@@ -1205,6 +1224,12 @@ $(function () {
12051224 QUnit . test ( 'should not allow pinch with touch events' , function ( assert ) {
12061225 assert . expect ( 0 )
12071226 clearPointerEvents ( )
1227+
1228+ var sandbox = sinon . createSandbox ( )
1229+ if ( 'maxTouchPoints' in navigator ) {
1230+ sandbox . stub ( navigator , 'maxTouchPoints' ) . value ( 1 )
1231+ }
1232+
12081233 Simulator . setType ( 'touch' )
12091234 var done = assert . async ( )
12101235 document . documentElement . ontouchstart = $ . noop
@@ -1221,6 +1246,7 @@ $(function () {
12211246 touches : 2
12221247 } , function ( ) {
12231248 restorePointerEvents ( )
1249+ sandbox . restore ( )
12241250 done ( )
12251251 } )
12261252 } )
0 commit comments