react-native-reanimated-carousel
Version:
Simple carousel component.fully implemented using Reanimated 2.Infinitely scrolling, very smooth.
2 lines • 5.9 kB
JavaScript
var _computedWithAutoFillData=require("./computed-with-auto-fill-data");var _constants=require("../constants");var SINGLE_ITEM=_constants.DATA_LENGTH.SINGLE_ITEM,DOUBLE_ITEM=_constants.DATA_LENGTH.DOUBLE_ITEM;describe("computed-with-auto-fill-data utilities",function(){describe("computedFillDataWithAutoFillData",function(){it("should handle single item",function(){var data=[1];var result=(0,_computedWithAutoFillData.computedFillDataWithAutoFillData)({data:data,loop:true,autoFillData:true,dataLength:SINGLE_ITEM});expect(result).toEqual([1,1,1]);});it("should handle double items",function(){var data=[1,2];var result=(0,_computedWithAutoFillData.computedFillDataWithAutoFillData)({data:data,loop:true,autoFillData:true,dataLength:DOUBLE_ITEM});expect(result).toEqual([1,2,1,2]);});it("should return original data when autoFillData is false",function(){var data=[1,2,3];var result=(0,_computedWithAutoFillData.computedFillDataWithAutoFillData)({data:data,loop:true,autoFillData:false,dataLength:3});expect(result).toEqual(data);});it("should return original data when loop is false",function(){var data=[1,2,3];var result=(0,_computedWithAutoFillData.computedFillDataWithAutoFillData)({data:data,loop:false,autoFillData:true,dataLength:3});expect(result).toEqual(data);});it("should handle empty data array",function(){var data=[];var result=(0,_computedWithAutoFillData.computedFillDataWithAutoFillData)({data:data,loop:true,autoFillData:true,dataLength:0});expect(result).toEqual([]);});it("should handle data length greater than 2",function(){var data=[1,2,3,4,5];var result=(0,_computedWithAutoFillData.computedFillDataWithAutoFillData)({data:data,loop:true,autoFillData:true,dataLength:5});expect(result).toEqual(data);});it("should handle both loop and autoFillData false",function(){var data=[1];var result=(0,_computedWithAutoFillData.computedFillDataWithAutoFillData)({data:data,loop:false,autoFillData:false,dataLength:SINGLE_ITEM});expect(result).toEqual(data);});});describe("computedOffsetXValueWithAutoFillData",function(){var size=300;it("should handle single item",function(){var result=(0,_computedWithAutoFillData.computedOffsetXValueWithAutoFillData)({value:size*2,size:size,rawDataLength:SINGLE_ITEM,loop:true,autoFillData:true});expect(result).toBe(0);});it("should handle double items",function(){var result=(0,_computedWithAutoFillData.computedOffsetXValueWithAutoFillData)({value:size*3,size:size,rawDataLength:DOUBLE_ITEM,loop:true,autoFillData:true});expect(result).toBe(size*1);});it("should return original value when autoFillData is false",function(){var value=size*2;var result=(0,_computedWithAutoFillData.computedOffsetXValueWithAutoFillData)({value:value,size:size,rawDataLength:3,loop:true,autoFillData:false});expect(result).toBe(value);});it("should return original value when loop is false",function(){var value=size*2;var result=(0,_computedWithAutoFillData.computedOffsetXValueWithAutoFillData)({value:value,size:size,rawDataLength:3,loop:false,autoFillData:true});expect(result).toBe(value);});it("should handle zero value",function(){var result=(0,_computedWithAutoFillData.computedOffsetXValueWithAutoFillData)({value:0,size:size,rawDataLength:SINGLE_ITEM,loop:true,autoFillData:true});expect(result).toBe(0);});it("should handle negative values",function(){var result=(0,_computedWithAutoFillData.computedOffsetXValueWithAutoFillData)({value:-size,size:size,rawDataLength:SINGLE_ITEM,loop:true,autoFillData:true});expect(result).toBe(-0);});it("should handle fractional values",function(){var result=(0,_computedWithAutoFillData.computedOffsetXValueWithAutoFillData)({value:size*1.5,size:size,rawDataLength:DOUBLE_ITEM,loop:true,autoFillData:true});expect(result).toBe(size*1.5);});it("should handle both conditions false",function(){var value=size*3;var result=(0,_computedWithAutoFillData.computedOffsetXValueWithAutoFillData)({value:value,size:size,rawDataLength:3,loop:false,autoFillData:false});expect(result).toBe(value);});});describe("computedRealIndexWithAutoFillData",function(){it("should handle single item",function(){var result=(0,_computedWithAutoFillData.computedRealIndexWithAutoFillData)({index:2,dataLength:SINGLE_ITEM,loop:true,autoFillData:true});expect(result).toBe(0);});it("should handle double items",function(){var result=(0,_computedWithAutoFillData.computedRealIndexWithAutoFillData)({index:3,dataLength:DOUBLE_ITEM,loop:true,autoFillData:true});expect(result).toBe(1);});it("should return original index when autoFillData is false",function(){var index=2;var result=(0,_computedWithAutoFillData.computedRealIndexWithAutoFillData)({index:index,dataLength:3,loop:true,autoFillData:false});expect(result).toBe(index);});it("should return original index when loop is false",function(){var index=2;var result=(0,_computedWithAutoFillData.computedRealIndexWithAutoFillData)({index:index,dataLength:3,loop:false,autoFillData:true});expect(result).toBe(index);});});describe("convertToSharedIndex",function(){it("should handle single item",function(){var result=(0,_computedWithAutoFillData.convertToSharedIndex)({index:2,rawDataLength:SINGLE_ITEM,loop:true,autoFillData:true});expect(result).toBe(0);});it("should handle double items",function(){var result=(0,_computedWithAutoFillData.convertToSharedIndex)({index:3,rawDataLength:DOUBLE_ITEM,loop:true,autoFillData:true});expect(result).toBe(1);});it("should return original index when autoFillData is false",function(){var index=2;var result=(0,_computedWithAutoFillData.convertToSharedIndex)({index:index,rawDataLength:3,loop:true,autoFillData:false});expect(result).toBe(index);});it("should return original index when loop is false",function(){var index=2;var result=(0,_computedWithAutoFillData.convertToSharedIndex)({index:index,rawDataLength:3,loop:false,autoFillData:true});expect(result).toBe(index);});});});
//# sourceMappingURL=computed-with-auto-fill-data.test.js.map