@@ -220,6 +220,35 @@ describe('carousel', () => {
220
220
tickMilliseconds ( fixture , 700 ) ;
221
221
expect ( carouselContents [ 1 ] . nativeElement . classList ) . toContain ( 'slick-active' ) ;
222
222
} ) ) ;
223
+
224
+ it ( 'should disable loop work' , fakeAsync ( ( ) => {
225
+ testComponent . loop = false ;
226
+ fixture . detectChanges ( ) ;
227
+ swipe ( testComponent . nzCarouselComponent , - 10 ) ;
228
+ tickMilliseconds ( fixture , 700 ) ;
229
+ expect ( carouselContents [ 0 ] . nativeElement . classList ) . toContain ( 'slick-active' ) ;
230
+ swipe ( testComponent . nzCarouselComponent , - 1000 ) ;
231
+ tickMilliseconds ( fixture , 700 ) ;
232
+ expect ( carouselContents [ 0 ] . nativeElement . classList ) . toContain ( 'slick-active' ) ;
233
+
234
+ testComponent . loop = true ;
235
+ fixture . detectChanges ( ) ;
236
+ swipe ( testComponent . nzCarouselComponent , - 1000 ) ;
237
+ tickMilliseconds ( fixture , 700 ) ;
238
+ expect ( carouselContents [ 3 ] . nativeElement . classList ) . toContain ( 'slick-active' ) ;
239
+ swipe ( testComponent . nzCarouselComponent , 1000 ) ;
240
+ tickMilliseconds ( fixture , 700 ) ;
241
+ expect ( carouselContents [ 0 ] . nativeElement . classList ) . toContain ( 'slick-active' ) ;
242
+
243
+ testComponent . loop = false ;
244
+ testComponent . autoPlay = true ;
245
+ testComponent . autoPlaySpeed = 1000 ;
246
+ fixture . detectChanges ( ) ;
247
+ tick ( 10000 ) ;
248
+ expect ( carouselContents [ 3 ] . nativeElement . classList ) . toContain ( 'slick-active' ) ;
249
+ tick ( 1000 + 10 ) ;
250
+ expect ( carouselContents [ 3 ] . nativeElement . classList ) . toContain ( 'slick-active' ) ;
251
+ } ) ) ;
223
252
} ) ;
224
253
225
254
describe ( 'strategies' , ( ) => {
@@ -406,6 +435,7 @@ function swipe(carousel: NzCarouselComponent, distance: number): void {
406
435
[nzDotRender]="dotRender"
407
436
[nzAutoPlay]="autoPlay"
408
437
[nzAutoPlaySpeed]="autoPlaySpeed"
438
+ [nzLoop]="loop"
409
439
(nzAfterChange)="afterChange($event)"
410
440
(nzBeforeChange)="beforeChange($event)"
411
441
>
@@ -426,6 +456,7 @@ export class NzTestCarouselBasicComponent {
426
456
array = [ 1 , 2 , 3 , 4 ] ;
427
457
autoPlay = false ;
428
458
autoPlaySpeed = 3000 ;
459
+ loop = true ;
429
460
afterChange = jasmine . createSpy ( 'afterChange callback' ) ;
430
461
beforeChange = jasmine . createSpy ( 'beforeChange callback' ) ;
431
462
}
0 commit comments