@vived/core 1.4.2 → 1.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +118 -20
- package/dist/cjs/AppObject/AppObject.js +53 -0
- package/dist/cjs/AppObject/AppObject.js.map +1 -1
- package/dist/cjs/AppObject/AppObjectComponent.js +78 -0
- package/dist/cjs/AppObject/AppObjectComponent.js.map +1 -1
- package/dist/cjs/AppObject/AppObjectController.js +22 -0
- package/dist/cjs/AppObject/AppObjectController.js.map +1 -1
- package/dist/cjs/AppObject/AppObjectEntity.js +52 -0
- package/dist/cjs/AppObject/AppObjectEntity.js.map +1 -1
- package/dist/cjs/AppObject/AppObjectEntityRepo.js +75 -1
- package/dist/cjs/AppObject/AppObjectEntityRepo.js.map +1 -1
- package/dist/cjs/AppObject/AppObjectPM.js +46 -0
- package/dist/cjs/AppObject/AppObjectPM.js.map +1 -1
- package/dist/cjs/AppObject/AppObjectRepo.js +20 -0
- package/dist/cjs/AppObject/AppObjectRepo.js.map +1 -1
- package/dist/cjs/AppObject/AppObjectUC.js +23 -0
- package/dist/cjs/AppObject/AppObjectUC.js.map +1 -1
- package/dist/cjs/AppObject/AppObjectView.js +22 -0
- package/dist/cjs/AppObject/AppObjectView.js.map +1 -1
- package/dist/cjs/AppObject/getSingletonComponent.js +19 -0
- package/dist/cjs/AppObject/getSingletonComponent.js.map +1 -1
- package/dist/cjs/Entities/MemoizedAngle.js +21 -0
- package/dist/cjs/Entities/MemoizedAngle.js.map +1 -1
- package/dist/cjs/Entities/MemoizedBoolean.js +21 -0
- package/dist/cjs/Entities/MemoizedBoolean.js.map +1 -1
- package/dist/cjs/Entities/MemoizedColor.js +21 -0
- package/dist/cjs/Entities/MemoizedColor.js.map +1 -1
- package/dist/cjs/Entities/MemoizedNumber.js +21 -0
- package/dist/cjs/Entities/MemoizedNumber.js.map +1 -1
- package/dist/cjs/Entities/MemoizedQuaternion.js +21 -0
- package/dist/cjs/Entities/MemoizedQuaternion.js.map +1 -1
- package/dist/cjs/Entities/MemoizedString.js +21 -0
- package/dist/cjs/Entities/MemoizedString.js.map +1 -1
- package/dist/cjs/Entities/MemoizedVector2.js +21 -0
- package/dist/cjs/Entities/MemoizedVector2.js.map +1 -1
- package/dist/cjs/Entities/MemoizedVector3.js +21 -0
- package/dist/cjs/Entities/MemoizedVector3.js.map +1 -1
- package/dist/cjs/Entities/ObservableEntity.js +17 -0
- package/dist/cjs/Entities/ObservableEntity.js.map +1 -1
- package/dist/cjs/Entities/ObserverList.js +21 -0
- package/dist/cjs/Entities/ObserverList.js.map +1 -1
- package/dist/cjs/Entities/RangedNumber.js +29 -0
- package/dist/cjs/Entities/RangedNumber.js.map +1 -1
- package/dist/cjs/Types/PmAdapter.js.map +1 -1
- package/dist/cjs/Types/SingletonPmAdapter.js.map +1 -1
- package/dist/cjs/ValueObjects/Angle.js +1 -1
- package/dist/cjs/ValueObjects/Angle.js.map +1 -1
- package/dist/cjs/ValueObjects/LineSegment2D.js +6 -6
- package/dist/cjs/ValueObjects/LineSegment2D.js.map +1 -1
- package/dist/cjs/ValueObjects/Matrix.js +6 -6
- package/dist/cjs/ValueObjects/Matrix.js.map +1 -1
- package/dist/cjs/ValueObjects/Quaternion.js +17 -17
- package/dist/cjs/ValueObjects/Quaternion.js.map +1 -1
- package/dist/cjs/ValueObjects/Vector2.js +15 -8
- package/dist/cjs/ValueObjects/Vector2.js.map +1 -1
- package/dist/esm/AppObject/AppObject.js +53 -0
- package/dist/esm/AppObject/AppObject.js.map +1 -1
- package/dist/esm/AppObject/AppObjectComponent.js +78 -0
- package/dist/esm/AppObject/AppObjectComponent.js.map +1 -1
- package/dist/esm/AppObject/AppObjectController.js +22 -0
- package/dist/esm/AppObject/AppObjectController.js.map +1 -1
- package/dist/esm/AppObject/AppObjectEntity.js +52 -0
- package/dist/esm/AppObject/AppObjectEntity.js.map +1 -1
- package/dist/esm/AppObject/AppObjectEntityRepo.js +75 -1
- package/dist/esm/AppObject/AppObjectEntityRepo.js.map +1 -1
- package/dist/esm/AppObject/AppObjectPM.js +46 -0
- package/dist/esm/AppObject/AppObjectPM.js.map +1 -1
- package/dist/esm/AppObject/AppObjectRepo.js +20 -0
- package/dist/esm/AppObject/AppObjectRepo.js.map +1 -1
- package/dist/esm/AppObject/AppObjectUC.js +24 -1
- package/dist/esm/AppObject/AppObjectUC.js.map +1 -1
- package/dist/esm/AppObject/AppObjectView.js +23 -1
- package/dist/esm/AppObject/AppObjectView.js.map +1 -1
- package/dist/esm/AppObject/getSingletonComponent.js +19 -0
- package/dist/esm/AppObject/getSingletonComponent.js.map +1 -1
- package/dist/esm/Entities/MemoizedAngle.js +21 -0
- package/dist/esm/Entities/MemoizedAngle.js.map +1 -1
- package/dist/esm/Entities/MemoizedBoolean.js +21 -0
- package/dist/esm/Entities/MemoizedBoolean.js.map +1 -1
- package/dist/esm/Entities/MemoizedColor.js +21 -0
- package/dist/esm/Entities/MemoizedColor.js.map +1 -1
- package/dist/esm/Entities/MemoizedNumber.js +21 -0
- package/dist/esm/Entities/MemoizedNumber.js.map +1 -1
- package/dist/esm/Entities/MemoizedQuaternion.js +21 -0
- package/dist/esm/Entities/MemoizedQuaternion.js.map +1 -1
- package/dist/esm/Entities/MemoizedString.js +21 -0
- package/dist/esm/Entities/MemoizedString.js.map +1 -1
- package/dist/esm/Entities/MemoizedVector2.js +21 -0
- package/dist/esm/Entities/MemoizedVector2.js.map +1 -1
- package/dist/esm/Entities/MemoizedVector3.js +21 -0
- package/dist/esm/Entities/MemoizedVector3.js.map +1 -1
- package/dist/esm/Entities/ObservableEntity.js +17 -0
- package/dist/esm/Entities/ObservableEntity.js.map +1 -1
- package/dist/esm/Entities/ObserverList.js +21 -0
- package/dist/esm/Entities/ObserverList.js.map +1 -1
- package/dist/esm/Entities/RangedNumber.js +29 -0
- package/dist/esm/Entities/RangedNumber.js.map +1 -1
- package/dist/esm/Types/PmAdapter.js.map +1 -1
- package/dist/esm/Types/SingletonPmAdapter.js.map +1 -1
- package/dist/esm/ValueObjects/Angle.js +1 -1
- package/dist/esm/ValueObjects/Angle.js.map +1 -1
- package/dist/esm/ValueObjects/LineSegment2D.js +6 -6
- package/dist/esm/ValueObjects/LineSegment2D.js.map +1 -1
- package/dist/esm/ValueObjects/Matrix.js +6 -6
- package/dist/esm/ValueObjects/Matrix.js.map +1 -1
- package/dist/esm/ValueObjects/Quaternion.js +17 -17
- package/dist/esm/ValueObjects/Quaternion.js.map +1 -1
- package/dist/esm/ValueObjects/Vector2.js +15 -8
- package/dist/esm/ValueObjects/Vector2.js.map +1 -1
- package/dist/types/AppObject/AppObject.d.ts +42 -0
- package/dist/types/AppObject/AppObject.d.ts.map +1 -1
- package/dist/types/AppObject/AppObjectComponent.d.ts +80 -0
- package/dist/types/AppObject/AppObjectComponent.d.ts.map +1 -1
- package/dist/types/AppObject/AppObjectController.d.ts +22 -0
- package/dist/types/AppObject/AppObjectController.d.ts.map +1 -1
- package/dist/types/AppObject/AppObjectEntity.d.ts +55 -0
- package/dist/types/AppObject/AppObjectEntity.d.ts.map +1 -1
- package/dist/types/AppObject/AppObjectEntityRepo.d.ts +75 -0
- package/dist/types/AppObject/AppObjectEntityRepo.d.ts.map +1 -1
- package/dist/types/AppObject/AppObjectPM.d.ts +53 -0
- package/dist/types/AppObject/AppObjectPM.d.ts.map +1 -1
- package/dist/types/AppObject/AppObjectRepo.d.ts +124 -0
- package/dist/types/AppObject/AppObjectRepo.d.ts.map +1 -1
- package/dist/types/AppObject/AppObjectUC.d.ts +23 -0
- package/dist/types/AppObject/AppObjectUC.d.ts.map +1 -1
- package/dist/types/AppObject/AppObjectView.d.ts +22 -0
- package/dist/types/AppObject/AppObjectView.d.ts.map +1 -1
- package/dist/types/AppObject/getSingletonComponent.d.ts +19 -0
- package/dist/types/AppObject/getSingletonComponent.d.ts.map +1 -1
- package/dist/types/Entities/MemoizedAngle.d.ts +21 -0
- package/dist/types/Entities/MemoizedAngle.d.ts.map +1 -1
- package/dist/types/Entities/MemoizedBoolean.d.ts +21 -0
- package/dist/types/Entities/MemoizedBoolean.d.ts.map +1 -1
- package/dist/types/Entities/MemoizedColor.d.ts +21 -0
- package/dist/types/Entities/MemoizedColor.d.ts.map +1 -1
- package/dist/types/Entities/MemoizedNumber.d.ts +21 -0
- package/dist/types/Entities/MemoizedNumber.d.ts.map +1 -1
- package/dist/types/Entities/MemoizedQuaternion.d.ts +21 -0
- package/dist/types/Entities/MemoizedQuaternion.d.ts.map +1 -1
- package/dist/types/Entities/MemoizedString.d.ts +21 -0
- package/dist/types/Entities/MemoizedString.d.ts.map +1 -1
- package/dist/types/Entities/MemoizedVector2.d.ts +21 -0
- package/dist/types/Entities/MemoizedVector2.d.ts.map +1 -1
- package/dist/types/Entities/MemoizedVector3.d.ts +21 -0
- package/dist/types/Entities/MemoizedVector3.d.ts.map +1 -1
- package/dist/types/Entities/ObservableEntity.d.ts +20 -0
- package/dist/types/Entities/ObservableEntity.d.ts.map +1 -1
- package/dist/types/Entities/ObserverList.d.ts +21 -0
- package/dist/types/Entities/ObserverList.d.ts.map +1 -1
- package/dist/types/Entities/RangedNumber.d.ts +37 -0
- package/dist/types/Entities/RangedNumber.d.ts.map +1 -1
- package/dist/types/Types/PmAdapter.d.ts +60 -0
- package/dist/types/Types/PmAdapter.d.ts.map +1 -1
- package/dist/types/Types/SingletonPmAdapter.d.ts +55 -0
- package/dist/types/Types/SingletonPmAdapter.d.ts.map +1 -1
- package/dist/types/ValueObjects/Angle.d.ts +1 -1
- package/dist/types/ValueObjects/Matrix.d.ts +5 -5
- package/dist/types/ValueObjects/Matrix.d.ts.map +1 -1
- package/dist/types/ValueObjects/Quaternion.d.ts +17 -17
- package/dist/types/ValueObjects/Vector2.d.ts +8 -3
- package/dist/types/ValueObjects/Vector2.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/cjs/AppObject/AppObject.test.js +0 -113
- package/dist/cjs/AppObject/AppObject.test.js.map +0 -1
- package/dist/cjs/AppObject/AppObjectComponent.test.js +0 -132
- package/dist/cjs/AppObject/AppObjectComponent.test.js.map +0 -1
- package/dist/cjs/AppObject/AppObjectEntity.test.js +0 -108
- package/dist/cjs/AppObject/AppObjectEntity.test.js.map +0 -1
- package/dist/cjs/AppObject/AppObjectEntityRepo.test.js +0 -149
- package/dist/cjs/AppObject/AppObjectEntityRepo.test.js.map +0 -1
- package/dist/cjs/AppObject/AppObjectPM.test.js +0 -103
- package/dist/cjs/AppObject/AppObjectPM.test.js.map +0 -1
- package/dist/cjs/AppObject/AppObjectRepo.test.js +0 -213
- package/dist/cjs/AppObject/AppObjectRepo.test.js.map +0 -1
- package/dist/cjs/AppObject/getSingletonComponent.test.js +0 -13
- package/dist/cjs/AppObject/getSingletonComponent.test.js.map +0 -1
- package/dist/cjs/Entities/MemoizedAngle.test.js +0 -30
- package/dist/cjs/Entities/MemoizedAngle.test.js.map +0 -1
- package/dist/cjs/Entities/MemoizedBoolean.test.js +0 -34
- package/dist/cjs/Entities/MemoizedBoolean.test.js.map +0 -1
- package/dist/cjs/Entities/MemoizedColor.test.js +0 -32
- package/dist/cjs/Entities/MemoizedColor.test.js.map +0 -1
- package/dist/cjs/Entities/MemoizedNumber.test.js +0 -29
- package/dist/cjs/Entities/MemoizedNumber.test.js.map +0 -1
- package/dist/cjs/Entities/MemoizedQuaternion.test.js +0 -32
- package/dist/cjs/Entities/MemoizedQuaternion.test.js.map +0 -1
- package/dist/cjs/Entities/MemoizedString.test.js +0 -29
- package/dist/cjs/Entities/MemoizedString.test.js.map +0 -1
- package/dist/cjs/Entities/MemoizedVector2.test.js +0 -32
- package/dist/cjs/Entities/MemoizedVector2.test.js.map +0 -1
- package/dist/cjs/Entities/MemoizedVector3.test.js +0 -32
- package/dist/cjs/Entities/MemoizedVector3.test.js.map +0 -1
- package/dist/cjs/Entities/ObservableEntity.test.js +0 -25
- package/dist/cjs/Entities/ObservableEntity.test.js.map +0 -1
- package/dist/cjs/Entities/ObserverList.test.js +0 -44
- package/dist/cjs/Entities/ObserverList.test.js.map +0 -1
- package/dist/cjs/Entities/RangedNumber.test.js +0 -96
- package/dist/cjs/Entities/RangedNumber.test.js.map +0 -1
- package/dist/cjs/Utilities/LengthConverters.test.js +0 -24
- package/dist/cjs/Utilities/LengthConverters.test.js.map +0 -1
- package/dist/cjs/Utilities/LerpNumber.test.js +0 -90
- package/dist/cjs/Utilities/LerpNumber.test.js.map +0 -1
- package/dist/cjs/Utilities/addAlphaToHex.test.js +0 -34
- package/dist/cjs/Utilities/addAlphaToHex.test.js.map +0 -1
- package/dist/cjs/Utilities/alphaToHex.test.js +0 -75
- package/dist/cjs/Utilities/alphaToHex.test.js.map +0 -1
- package/dist/cjs/Utilities/degreesToRadians.test.js +0 -9
- package/dist/cjs/Utilities/degreesToRadians.test.js.map +0 -1
- package/dist/cjs/Utilities/easeFunctions.test.js +0 -209
- package/dist/cjs/Utilities/easeFunctions.test.js.map +0 -1
- package/dist/cjs/Utilities/interpolateNumber.test.js +0 -26
- package/dist/cjs/Utilities/interpolateNumber.test.js.map +0 -1
- package/dist/cjs/ValueObjects/Angle.test.js +0 -28
- package/dist/cjs/ValueObjects/Angle.test.js.map +0 -1
- package/dist/cjs/ValueObjects/Color.test.js +0 -147
- package/dist/cjs/ValueObjects/Color.test.js.map +0 -1
- package/dist/cjs/ValueObjects/LineSegment2D.test.js +0 -102
- package/dist/cjs/ValueObjects/LineSegment2D.test.js.map +0 -1
- package/dist/cjs/ValueObjects/Matrix.test.js +0 -385
- package/dist/cjs/ValueObjects/Matrix.test.js.map +0 -1
- package/dist/cjs/ValueObjects/ParametricLine.test.js +0 -126
- package/dist/cjs/ValueObjects/ParametricLine.test.js.map +0 -1
- package/dist/cjs/ValueObjects/ParametricPlane.test.js +0 -101
- package/dist/cjs/ValueObjects/ParametricPlane.test.js.map +0 -1
- package/dist/cjs/ValueObjects/Quaternion.test.js +0 -240
- package/dist/cjs/ValueObjects/Quaternion.test.js.map +0 -1
- package/dist/cjs/ValueObjects/Rectangle.test.js +0 -32
- package/dist/cjs/ValueObjects/Rectangle.test.js.map +0 -1
- package/dist/cjs/ValueObjects/Vector2.test.js +0 -136
- package/dist/cjs/ValueObjects/Vector2.test.js.map +0 -1
- package/dist/cjs/ValueObjects/Vector3.test.js +0 -188
- package/dist/cjs/ValueObjects/Vector3.test.js.map +0 -1
- package/dist/cjs/ValueObjects/Version.test.js +0 -310
- package/dist/cjs/ValueObjects/Version.test.js.map +0 -1
- package/dist/esm/AppObject/AppObject.test.js +0 -110
- package/dist/esm/AppObject/AppObject.test.js.map +0 -1
- package/dist/esm/AppObject/AppObjectComponent.test.js +0 -130
- package/dist/esm/AppObject/AppObjectComponent.test.js.map +0 -1
- package/dist/esm/AppObject/AppObjectEntity.test.js +0 -106
- package/dist/esm/AppObject/AppObjectEntity.test.js.map +0 -1
- package/dist/esm/AppObject/AppObjectEntityRepo.test.js +0 -147
- package/dist/esm/AppObject/AppObjectEntityRepo.test.js.map +0 -1
- package/dist/esm/AppObject/AppObjectPM.test.js +0 -101
- package/dist/esm/AppObject/AppObjectPM.test.js.map +0 -1
- package/dist/esm/AppObject/AppObjectRepo.test.js +0 -211
- package/dist/esm/AppObject/AppObjectRepo.test.js.map +0 -1
- package/dist/esm/AppObject/getSingletonComponent.test.js +0 -11
- package/dist/esm/AppObject/getSingletonComponent.test.js.map +0 -1
- package/dist/esm/Entities/MemoizedAngle.test.js +0 -28
- package/dist/esm/Entities/MemoizedAngle.test.js.map +0 -1
- package/dist/esm/Entities/MemoizedBoolean.test.js +0 -32
- package/dist/esm/Entities/MemoizedBoolean.test.js.map +0 -1
- package/dist/esm/Entities/MemoizedColor.test.js +0 -30
- package/dist/esm/Entities/MemoizedColor.test.js.map +0 -1
- package/dist/esm/Entities/MemoizedNumber.test.js +0 -27
- package/dist/esm/Entities/MemoizedNumber.test.js.map +0 -1
- package/dist/esm/Entities/MemoizedQuaternion.test.js +0 -30
- package/dist/esm/Entities/MemoizedQuaternion.test.js.map +0 -1
- package/dist/esm/Entities/MemoizedString.test.js +0 -27
- package/dist/esm/Entities/MemoizedString.test.js.map +0 -1
- package/dist/esm/Entities/MemoizedVector2.test.js +0 -30
- package/dist/esm/Entities/MemoizedVector2.test.js.map +0 -1
- package/dist/esm/Entities/MemoizedVector3.test.js +0 -30
- package/dist/esm/Entities/MemoizedVector3.test.js.map +0 -1
- package/dist/esm/Entities/ObservableEntity.test.js +0 -23
- package/dist/esm/Entities/ObservableEntity.test.js.map +0 -1
- package/dist/esm/Entities/ObserverList.test.js +0 -42
- package/dist/esm/Entities/ObserverList.test.js.map +0 -1
- package/dist/esm/Entities/RangedNumber.test.js +0 -94
- package/dist/esm/Entities/RangedNumber.test.js.map +0 -1
- package/dist/esm/Utilities/LengthConverters.test.js +0 -22
- package/dist/esm/Utilities/LengthConverters.test.js.map +0 -1
- package/dist/esm/Utilities/LerpNumber.test.js +0 -88
- package/dist/esm/Utilities/LerpNumber.test.js.map +0 -1
- package/dist/esm/Utilities/addAlphaToHex.test.js +0 -32
- package/dist/esm/Utilities/addAlphaToHex.test.js.map +0 -1
- package/dist/esm/Utilities/alphaToHex.test.js +0 -73
- package/dist/esm/Utilities/alphaToHex.test.js.map +0 -1
- package/dist/esm/Utilities/degreesToRadians.test.js +0 -7
- package/dist/esm/Utilities/degreesToRadians.test.js.map +0 -1
- package/dist/esm/Utilities/easeFunctions.test.js +0 -207
- package/dist/esm/Utilities/easeFunctions.test.js.map +0 -1
- package/dist/esm/Utilities/interpolateNumber.test.js +0 -24
- package/dist/esm/Utilities/interpolateNumber.test.js.map +0 -1
- package/dist/esm/ValueObjects/Angle.test.js +0 -26
- package/dist/esm/ValueObjects/Angle.test.js.map +0 -1
- package/dist/esm/ValueObjects/Color.test.js +0 -145
- package/dist/esm/ValueObjects/Color.test.js.map +0 -1
- package/dist/esm/ValueObjects/LineSegment2D.test.js +0 -100
- package/dist/esm/ValueObjects/LineSegment2D.test.js.map +0 -1
- package/dist/esm/ValueObjects/Matrix.test.js +0 -383
- package/dist/esm/ValueObjects/Matrix.test.js.map +0 -1
- package/dist/esm/ValueObjects/ParametricLine.test.js +0 -124
- package/dist/esm/ValueObjects/ParametricLine.test.js.map +0 -1
- package/dist/esm/ValueObjects/ParametricPlane.test.js +0 -99
- package/dist/esm/ValueObjects/ParametricPlane.test.js.map +0 -1
- package/dist/esm/ValueObjects/Quaternion.test.js +0 -238
- package/dist/esm/ValueObjects/Quaternion.test.js.map +0 -1
- package/dist/esm/ValueObjects/Rectangle.test.js +0 -30
- package/dist/esm/ValueObjects/Rectangle.test.js.map +0 -1
- package/dist/esm/ValueObjects/Vector2.test.js +0 -134
- package/dist/esm/ValueObjects/Vector2.test.js.map +0 -1
- package/dist/esm/ValueObjects/Vector3.test.js +0 -186
- package/dist/esm/ValueObjects/Vector3.test.js.map +0 -1
- package/dist/esm/ValueObjects/Version.test.js +0 -308
- package/dist/esm/ValueObjects/Version.test.js.map +0 -1
- package/dist/types/AppObject/AppObject.test.d.ts +0 -7
- package/dist/types/AppObject/AppObject.test.d.ts.map +0 -1
- package/dist/types/AppObject/AppObjectComponent.test.d.ts +0 -2
- package/dist/types/AppObject/AppObjectComponent.test.d.ts.map +0 -1
- package/dist/types/AppObject/AppObjectEntity.test.d.ts +0 -2
- package/dist/types/AppObject/AppObjectEntity.test.d.ts.map +0 -1
- package/dist/types/AppObject/AppObjectEntityRepo.test.d.ts +0 -2
- package/dist/types/AppObject/AppObjectEntityRepo.test.d.ts.map +0 -1
- package/dist/types/AppObject/AppObjectPM.test.d.ts +0 -2
- package/dist/types/AppObject/AppObjectPM.test.d.ts.map +0 -1
- package/dist/types/AppObject/AppObjectRepo.test.d.ts +0 -2
- package/dist/types/AppObject/AppObjectRepo.test.d.ts.map +0 -1
- package/dist/types/AppObject/getSingletonComponent.test.d.ts +0 -2
- package/dist/types/AppObject/getSingletonComponent.test.d.ts.map +0 -1
- package/dist/types/Entities/MemoizedAngle.test.d.ts +0 -2
- package/dist/types/Entities/MemoizedAngle.test.d.ts.map +0 -1
- package/dist/types/Entities/MemoizedBoolean.test.d.ts +0 -2
- package/dist/types/Entities/MemoizedBoolean.test.d.ts.map +0 -1
- package/dist/types/Entities/MemoizedColor.test.d.ts +0 -2
- package/dist/types/Entities/MemoizedColor.test.d.ts.map +0 -1
- package/dist/types/Entities/MemoizedNumber.test.d.ts +0 -2
- package/dist/types/Entities/MemoizedNumber.test.d.ts.map +0 -1
- package/dist/types/Entities/MemoizedQuaternion.test.d.ts +0 -2
- package/dist/types/Entities/MemoizedQuaternion.test.d.ts.map +0 -1
- package/dist/types/Entities/MemoizedString.test.d.ts +0 -2
- package/dist/types/Entities/MemoizedString.test.d.ts.map +0 -1
- package/dist/types/Entities/MemoizedVector2.test.d.ts +0 -2
- package/dist/types/Entities/MemoizedVector2.test.d.ts.map +0 -1
- package/dist/types/Entities/MemoizedVector3.test.d.ts +0 -2
- package/dist/types/Entities/MemoizedVector3.test.d.ts.map +0 -1
- package/dist/types/Entities/ObservableEntity.test.d.ts +0 -2
- package/dist/types/Entities/ObservableEntity.test.d.ts.map +0 -1
- package/dist/types/Entities/ObserverList.test.d.ts +0 -2
- package/dist/types/Entities/ObserverList.test.d.ts.map +0 -1
- package/dist/types/Entities/RangedNumber.test.d.ts +0 -2
- package/dist/types/Entities/RangedNumber.test.d.ts.map +0 -1
- package/dist/types/Utilities/LengthConverters.test.d.ts +0 -2
- package/dist/types/Utilities/LengthConverters.test.d.ts.map +0 -1
- package/dist/types/Utilities/LerpNumber.test.d.ts +0 -2
- package/dist/types/Utilities/LerpNumber.test.d.ts.map +0 -1
- package/dist/types/Utilities/addAlphaToHex.test.d.ts +0 -2
- package/dist/types/Utilities/addAlphaToHex.test.d.ts.map +0 -1
- package/dist/types/Utilities/alphaToHex.test.d.ts +0 -2
- package/dist/types/Utilities/alphaToHex.test.d.ts.map +0 -1
- package/dist/types/Utilities/degreesToRadians.test.d.ts +0 -2
- package/dist/types/Utilities/degreesToRadians.test.d.ts.map +0 -1
- package/dist/types/Utilities/easeFunctions.test.d.ts +0 -2
- package/dist/types/Utilities/easeFunctions.test.d.ts.map +0 -1
- package/dist/types/Utilities/interpolateNumber.test.d.ts +0 -2
- package/dist/types/Utilities/interpolateNumber.test.d.ts.map +0 -1
- package/dist/types/ValueObjects/Angle.test.d.ts +0 -2
- package/dist/types/ValueObjects/Angle.test.d.ts.map +0 -1
- package/dist/types/ValueObjects/Color.test.d.ts +0 -2
- package/dist/types/ValueObjects/Color.test.d.ts.map +0 -1
- package/dist/types/ValueObjects/LineSegment2D.test.d.ts +0 -2
- package/dist/types/ValueObjects/LineSegment2D.test.d.ts.map +0 -1
- package/dist/types/ValueObjects/Matrix.test.d.ts +0 -2
- package/dist/types/ValueObjects/Matrix.test.d.ts.map +0 -1
- package/dist/types/ValueObjects/ParametricLine.test.d.ts +0 -2
- package/dist/types/ValueObjects/ParametricLine.test.d.ts.map +0 -1
- package/dist/types/ValueObjects/ParametricPlane.test.d.ts +0 -2
- package/dist/types/ValueObjects/ParametricPlane.test.d.ts.map +0 -1
- package/dist/types/ValueObjects/Quaternion.test.d.ts +0 -2
- package/dist/types/ValueObjects/Quaternion.test.d.ts.map +0 -1
- package/dist/types/ValueObjects/Rectangle.test.d.ts +0 -2
- package/dist/types/ValueObjects/Rectangle.test.d.ts.map +0 -1
- package/dist/types/ValueObjects/Vector2.test.d.ts +0 -2
- package/dist/types/ValueObjects/Vector2.test.d.ts.map +0 -1
- package/dist/types/ValueObjects/Vector3.test.d.ts +0 -2
- package/dist/types/ValueObjects/Vector3.test.d.ts.map +0 -1
- package/dist/types/ValueObjects/Version.test.d.ts +0 -2
- package/dist/types/ValueObjects/Version.test.d.ts.map +0 -1
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { Vector2 } from "../ValueObjects";
|
|
2
|
-
import { MemoizedVector2 } from "./MemoizedVector2";
|
|
3
|
-
test("Initial value is stored", () => {
|
|
4
|
-
const initialVec = new Vector2(5, 6);
|
|
5
|
-
const memoizedVector = new MemoizedVector2(initialVec, jest.fn());
|
|
6
|
-
expect(memoizedVector.val).toEqual(new Vector2(5, 6));
|
|
7
|
-
});
|
|
8
|
-
test("Callback is called when the val changes", () => {
|
|
9
|
-
const cb = jest.fn();
|
|
10
|
-
const initialVec = new Vector2(5, 6);
|
|
11
|
-
const memoizedVector = new MemoizedVector2(initialVec, cb);
|
|
12
|
-
memoizedVector.val = new Vector2(8, 9);
|
|
13
|
-
expect(cb).toBeCalled();
|
|
14
|
-
});
|
|
15
|
-
test("Callback is called only when the val changes", () => {
|
|
16
|
-
const cb = jest.fn();
|
|
17
|
-
const initialVec = new Vector2(5, 6);
|
|
18
|
-
const memoizedVector = new MemoizedVector2(initialVec, cb);
|
|
19
|
-
memoizedVector.val = new Vector2(5, 6);
|
|
20
|
-
memoizedVector.val = new Vector2(5, 6);
|
|
21
|
-
memoizedVector.val = new Vector2(5, 6);
|
|
22
|
-
expect(cb).not.toBeCalled();
|
|
23
|
-
});
|
|
24
|
-
test("Setting the value quietly should not notify", () => {
|
|
25
|
-
const cb = jest.fn();
|
|
26
|
-
const memoizedBoolean = new MemoizedVector2(Vector2.One(), cb);
|
|
27
|
-
memoizedBoolean.setValQuietly(Vector2.Zero());
|
|
28
|
-
expect(cb).not.toBeCalled();
|
|
29
|
-
});
|
|
30
|
-
//# sourceMappingURL=MemoizedVector2.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MemoizedVector2.test.js","sourceRoot":"","sources":["../../../src/Entities/MemoizedVector2.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACnC,MAAM,UAAU,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACrC,MAAM,cAAc,GAAG,IAAI,eAAe,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAClE,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACxD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,yCAAyC,EAAE,GAAG,EAAE;IACnD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,UAAU,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACrC,MAAM,cAAc,GAAG,IAAI,eAAe,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAE3D,cAAc,CAAC,GAAG,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAEvC,MAAM,CAAC,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC;AAC1B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,8CAA8C,EAAE,GAAG,EAAE;IACxD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,UAAU,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACrC,MAAM,cAAc,GAAG,IAAI,eAAe,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAE3D,cAAc,CAAC,GAAG,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACvC,cAAc,CAAC,GAAG,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACvC,cAAc,CAAC,GAAG,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAEvC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;IACvD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;IAE/D,eAAe,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAE9C,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAC","sourcesContent":["import { Vector2 } from \"../ValueObjects\";\r\nimport { MemoizedVector2 } from \"./MemoizedVector2\";\r\n\r\ntest(\"Initial value is stored\", () => {\r\n const initialVec = new Vector2(5, 6);\r\n const memoizedVector = new MemoizedVector2(initialVec, jest.fn());\r\n expect(memoizedVector.val).toEqual(new Vector2(5, 6));\r\n});\r\n\r\ntest(\"Callback is called when the val changes\", () => {\r\n const cb = jest.fn();\r\n const initialVec = new Vector2(5, 6);\r\n const memoizedVector = new MemoizedVector2(initialVec, cb);\r\n\r\n memoizedVector.val = new Vector2(8, 9);\r\n\r\n expect(cb).toBeCalled();\r\n});\r\n\r\ntest(\"Callback is called only when the val changes\", () => {\r\n const cb = jest.fn();\r\n const initialVec = new Vector2(5, 6);\r\n const memoizedVector = new MemoizedVector2(initialVec, cb);\r\n\r\n memoizedVector.val = new Vector2(5, 6);\r\n memoizedVector.val = new Vector2(5, 6);\r\n memoizedVector.val = new Vector2(5, 6);\r\n\r\n expect(cb).not.toBeCalled();\r\n});\r\n\r\ntest(\"Setting the value quietly should not notify\", () => {\r\n const cb = jest.fn();\r\n const memoizedBoolean = new MemoizedVector2(Vector2.One(), cb);\r\n\r\n memoizedBoolean.setValQuietly(Vector2.Zero());\r\n\r\n expect(cb).not.toBeCalled();\r\n});\r\n"]}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { Vector3 } from "../ValueObjects";
|
|
2
|
-
import { MemoizedVector3 } from "./MemoizedVector3";
|
|
3
|
-
test("Initial value is stored", () => {
|
|
4
|
-
const initialVec = new Vector3(5, 6, 7);
|
|
5
|
-
const memoizedVector = new MemoizedVector3(initialVec, jest.fn());
|
|
6
|
-
expect(memoizedVector.val).toEqual(new Vector3(5, 6, 7));
|
|
7
|
-
});
|
|
8
|
-
test("Callback is called when the val changes", () => {
|
|
9
|
-
const cb = jest.fn();
|
|
10
|
-
const initialVec = new Vector3(5, 6, 7);
|
|
11
|
-
const memoizedVector = new MemoizedVector3(initialVec, cb);
|
|
12
|
-
memoizedVector.val = new Vector3(8, 9, 10);
|
|
13
|
-
expect(cb).toBeCalled();
|
|
14
|
-
});
|
|
15
|
-
test("Callback is called only when the val changes", () => {
|
|
16
|
-
const cb = jest.fn();
|
|
17
|
-
const initialVec = new Vector3(5, 6, 7);
|
|
18
|
-
const memoizedVector = new MemoizedVector3(initialVec, cb);
|
|
19
|
-
memoizedVector.val = new Vector3(5, 6, 7);
|
|
20
|
-
memoizedVector.val = new Vector3(5, 6, 7);
|
|
21
|
-
memoizedVector.val = new Vector3(5, 6, 7);
|
|
22
|
-
expect(cb).not.toBeCalled();
|
|
23
|
-
});
|
|
24
|
-
test("Setting the value quietly should not notify", () => {
|
|
25
|
-
const cb = jest.fn();
|
|
26
|
-
const memoizedBoolean = new MemoizedVector3(Vector3.One(), cb);
|
|
27
|
-
memoizedBoolean.setValQuietly(Vector3.Zero());
|
|
28
|
-
expect(cb).not.toBeCalled();
|
|
29
|
-
});
|
|
30
|
-
//# sourceMappingURL=MemoizedVector3.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MemoizedVector3.test.js","sourceRoot":"","sources":["../../../src/Entities/MemoizedVector3.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACnC,MAAM,UAAU,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACxC,MAAM,cAAc,GAAG,IAAI,eAAe,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAClE,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,yCAAyC,EAAE,GAAG,EAAE;IACnD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,UAAU,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACxC,MAAM,cAAc,GAAG,IAAI,eAAe,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAE3D,cAAc,CAAC,GAAG,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAE3C,MAAM,CAAC,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC;AAC1B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,8CAA8C,EAAE,GAAG,EAAE;IACxD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,UAAU,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACxC,MAAM,cAAc,GAAG,IAAI,eAAe,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAE3D,cAAc,CAAC,GAAG,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1C,cAAc,CAAC,GAAG,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1C,cAAc,CAAC,GAAG,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAE1C,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;IACvD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;IAE/D,eAAe,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAE9C,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAC","sourcesContent":["import { Vector3 } from \"../ValueObjects\";\r\nimport { MemoizedVector3 } from \"./MemoizedVector3\";\r\n\r\ntest(\"Initial value is stored\", () => {\r\n const initialVec = new Vector3(5, 6, 7);\r\n const memoizedVector = new MemoizedVector3(initialVec, jest.fn());\r\n expect(memoizedVector.val).toEqual(new Vector3(5, 6, 7));\r\n});\r\n\r\ntest(\"Callback is called when the val changes\", () => {\r\n const cb = jest.fn();\r\n const initialVec = new Vector3(5, 6, 7);\r\n const memoizedVector = new MemoizedVector3(initialVec, cb);\r\n\r\n memoizedVector.val = new Vector3(8, 9, 10);\r\n\r\n expect(cb).toBeCalled();\r\n});\r\n\r\ntest(\"Callback is called only when the val changes\", () => {\r\n const cb = jest.fn();\r\n const initialVec = new Vector3(5, 6, 7);\r\n const memoizedVector = new MemoizedVector3(initialVec, cb);\r\n\r\n memoizedVector.val = new Vector3(5, 6, 7);\r\n memoizedVector.val = new Vector3(5, 6, 7);\r\n memoizedVector.val = new Vector3(5, 6, 7);\r\n\r\n expect(cb).not.toBeCalled();\r\n});\r\n\r\ntest(\"Setting the value quietly should not notify\", () => {\r\n const cb = jest.fn();\r\n const memoizedBoolean = new MemoizedVector3(Vector3.One(), cb);\r\n\r\n memoizedBoolean.setValQuietly(Vector3.Zero());\r\n\r\n expect(cb).not.toBeCalled();\r\n});\r\n"]}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { ObservableEntity } from "./ObservableEntity";
|
|
2
|
-
class ObservableEntityImp extends ObservableEntity {
|
|
3
|
-
}
|
|
4
|
-
function makeTestRig() {
|
|
5
|
-
const observableEntity = new ObservableEntityImp();
|
|
6
|
-
const observer = jest.fn();
|
|
7
|
-
observableEntity.addObserver(observer);
|
|
8
|
-
return { observableEntity, observer };
|
|
9
|
-
}
|
|
10
|
-
describe("Abstract Observable Entity", () => {
|
|
11
|
-
it("Notifies", () => {
|
|
12
|
-
const { observer, observableEntity } = makeTestRig();
|
|
13
|
-
observableEntity.notify();
|
|
14
|
-
expect(observer).toBeCalled();
|
|
15
|
-
});
|
|
16
|
-
it("Removes an observer", () => {
|
|
17
|
-
const { observer, observableEntity } = makeTestRig();
|
|
18
|
-
observableEntity.removeObserver(observer);
|
|
19
|
-
observableEntity.notify();
|
|
20
|
-
expect(observer).not.toBeCalled();
|
|
21
|
-
});
|
|
22
|
-
});
|
|
23
|
-
//# sourceMappingURL=ObservableEntity.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ObservableEntity.test.js","sourceRoot":"","sources":["../../../src/Entities/ObservableEntity.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,mBAAoB,SAAQ,gBAAgB;CAAG;AAErD,SAAS,WAAW;IAClB,MAAM,gBAAgB,GAAG,IAAI,mBAAmB,EAAE,CAAC;IACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAC3B,gBAAgB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAEvC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,CAAC;AACxC,CAAC;AAED,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IAC1C,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE;QAClB,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,WAAW,EAAE,CAAC;QACrD,gBAAgB,CAAC,MAAM,EAAE,CAAC;QAE1B,MAAM,CAAC,QAAQ,CAAC,CAAC,UAAU,EAAE,CAAC;IAChC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qBAAqB,EAAE,GAAG,EAAE;QAC7B,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,WAAW,EAAE,CAAC;QACrD,gBAAgB,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAC1C,gBAAgB,CAAC,MAAM,EAAE,CAAC;QAE1B,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;IACpC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { ObservableEntity } from \"./ObservableEntity\";\r\n\r\nclass ObservableEntityImp extends ObservableEntity {}\r\n\r\nfunction makeTestRig() {\r\n const observableEntity = new ObservableEntityImp();\r\n const observer = jest.fn();\r\n observableEntity.addObserver(observer);\r\n\r\n return { observableEntity, observer };\r\n}\r\n\r\ndescribe(\"Abstract Observable Entity\", () => {\r\n it(\"Notifies\", () => {\r\n const { observer, observableEntity } = makeTestRig();\r\n observableEntity.notify();\r\n\r\n expect(observer).toBeCalled();\r\n });\r\n\r\n it(\"Removes an observer\", () => {\r\n const { observer, observableEntity } = makeTestRig();\r\n observableEntity.removeObserver(observer);\r\n observableEntity.notify();\r\n\r\n expect(observer).not.toBeCalled();\r\n });\r\n});\r\n"]}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { ObserverList } from "./ObserverList";
|
|
2
|
-
test("An observer that recieves nothing", () => {
|
|
3
|
-
const observers = new ObserverList();
|
|
4
|
-
const obs = jest.fn();
|
|
5
|
-
observers.add(obs);
|
|
6
|
-
observers.notify();
|
|
7
|
-
expect(obs).toBeCalled();
|
|
8
|
-
});
|
|
9
|
-
test("An observer that recieves a string", () => {
|
|
10
|
-
const observers = new ObserverList();
|
|
11
|
-
const obs = jest.fn();
|
|
12
|
-
observers.add(obs);
|
|
13
|
-
observers.notify("!yolo");
|
|
14
|
-
expect(obs).toBeCalledWith("!yolo");
|
|
15
|
-
});
|
|
16
|
-
test("An observer that recieves a number", () => {
|
|
17
|
-
const observers = new ObserverList();
|
|
18
|
-
const obs = jest.fn();
|
|
19
|
-
observers.add(obs);
|
|
20
|
-
observers.notify(55);
|
|
21
|
-
expect(obs).toBeCalledWith(55);
|
|
22
|
-
});
|
|
23
|
-
test("Observer can be removed", () => {
|
|
24
|
-
const observers = new ObserverList();
|
|
25
|
-
const obs = jest.fn();
|
|
26
|
-
observers.add(obs);
|
|
27
|
-
observers.notify();
|
|
28
|
-
expect(obs).toBeCalled();
|
|
29
|
-
obs.mockClear();
|
|
30
|
-
observers.remove(obs);
|
|
31
|
-
observers.notify();
|
|
32
|
-
expect(obs).not.toBeCalled();
|
|
33
|
-
});
|
|
34
|
-
test("Clearing the oberver list", () => {
|
|
35
|
-
const observers = new ObserverList();
|
|
36
|
-
const obs = jest.fn();
|
|
37
|
-
observers.add(obs);
|
|
38
|
-
observers.clear();
|
|
39
|
-
observers.notify();
|
|
40
|
-
expect(obs).not.toBeCalled();
|
|
41
|
-
});
|
|
42
|
-
//# sourceMappingURL=ObserverList.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ObserverList.test.js","sourceRoot":"","sources":["../../../src/Entities/ObserverList.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,IAAI,CAAC,mCAAmC,EAAE,GAAG,EAAE;IAC7C,MAAM,SAAS,GAAG,IAAI,YAAY,EAAQ,CAAC;IAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAEtB,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACnB,SAAS,CAAC,MAAM,EAAE,CAAC;IAEnB,MAAM,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;AAC3B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,oCAAoC,EAAE,GAAG,EAAE;IAC9C,MAAM,SAAS,GAAG,IAAI,YAAY,EAAU,CAAC;IAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAEtB,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACnB,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAE1B,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,oCAAoC,EAAE,GAAG,EAAE;IAC9C,MAAM,SAAS,GAAG,IAAI,YAAY,EAAU,CAAC;IAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAEtB,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAEnB,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAErB,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACnC,MAAM,SAAS,GAAG,IAAI,YAAY,EAAQ,CAAC;IAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAEtB,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACnB,SAAS,CAAC,MAAM,EAAE,CAAC;IAEnB,MAAM,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;IAEzB,GAAG,CAAC,SAAS,EAAE,CAAC;IAChB,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACtB,SAAS,CAAC,MAAM,EAAE,CAAC;IAEnB,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;AAC/B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,2BAA2B,EAAE,GAAE,EAAE;IACpC,MAAM,SAAS,GAAG,IAAI,YAAY,EAAQ,CAAC;IAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAEtB,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAEnB,SAAS,CAAC,KAAK,EAAE,CAAC;IAElB,SAAS,CAAC,MAAM,EAAE,CAAC;IAEnB,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;AAC/B,CAAC,CAAC,CAAA","sourcesContent":["import { ObserverList } from \"./ObserverList\";\r\n\r\ntest(\"An observer that recieves nothing\", () => {\r\n const observers = new ObserverList<void>();\r\n const obs = jest.fn();\r\n\r\n observers.add(obs);\r\n observers.notify();\r\n\r\n expect(obs).toBeCalled();\r\n});\r\n\r\ntest(\"An observer that recieves a string\", () => {\r\n const observers = new ObserverList<string>();\r\n const obs = jest.fn();\r\n\r\n observers.add(obs);\r\n observers.notify(\"!yolo\");\r\n\r\n expect(obs).toBeCalledWith(\"!yolo\");\r\n});\r\n\r\ntest(\"An observer that recieves a number\", () => {\r\n const observers = new ObserverList<number>();\r\n const obs = jest.fn();\r\n\r\n observers.add(obs);\r\n\r\n observers.notify(55);\r\n\r\n expect(obs).toBeCalledWith(55);\r\n});\r\n\r\ntest(\"Observer can be removed\", () => {\r\n const observers = new ObserverList<void>();\r\n const obs = jest.fn();\r\n\r\n observers.add(obs);\r\n observers.notify();\r\n\r\n expect(obs).toBeCalled();\r\n\r\n obs.mockClear();\r\n observers.remove(obs);\r\n observers.notify();\r\n\r\n expect(obs).not.toBeCalled();\r\n});\r\n\r\ntest(\"Clearing the oberver list\", ()=>{\r\n const observers = new ObserverList<void>();\r\n const obs = jest.fn();\r\n\r\n observers.add(obs);\r\n\r\n observers.clear();\r\n\r\n observers.notify();\r\n\r\n expect(obs).not.toBeCalled();\r\n})\r\n"]}
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
import { RangedNumber } from "./RangedNumber";
|
|
2
|
-
it("Stores the initial value", () => {
|
|
3
|
-
const props = {
|
|
4
|
-
initialValue: 5,
|
|
5
|
-
max: 10,
|
|
6
|
-
min: 1,
|
|
7
|
-
};
|
|
8
|
-
const memoizedNumber = new RangedNumber(props, jest.fn());
|
|
9
|
-
expect(memoizedNumber.val).toEqual(5);
|
|
10
|
-
});
|
|
11
|
-
it("Clamps the initial value", () => {
|
|
12
|
-
const props = {
|
|
13
|
-
initialValue: 50,
|
|
14
|
-
max: 10,
|
|
15
|
-
min: 1,
|
|
16
|
-
};
|
|
17
|
-
const memoizedNumber = new RangedNumber(props, jest.fn());
|
|
18
|
-
expect(memoizedNumber.val).toEqual(10);
|
|
19
|
-
});
|
|
20
|
-
it("Clamps the value", () => {
|
|
21
|
-
const props = {
|
|
22
|
-
initialValue: 5,
|
|
23
|
-
max: 10,
|
|
24
|
-
min: 1,
|
|
25
|
-
};
|
|
26
|
-
const memoizedNumber = new RangedNumber(props, jest.fn());
|
|
27
|
-
expect(memoizedNumber.val).toEqual(5);
|
|
28
|
-
memoizedNumber.val = 11;
|
|
29
|
-
expect(memoizedNumber.val).toEqual(10);
|
|
30
|
-
memoizedNumber.val = 0;
|
|
31
|
-
expect(memoizedNumber.val).toEqual(1);
|
|
32
|
-
});
|
|
33
|
-
it("Triggers the callback when something changes", () => {
|
|
34
|
-
const cb = jest.fn();
|
|
35
|
-
const props = {
|
|
36
|
-
initialValue: 5,
|
|
37
|
-
max: 10,
|
|
38
|
-
min: 1,
|
|
39
|
-
};
|
|
40
|
-
const memoizedNumber = new RangedNumber(props, cb);
|
|
41
|
-
expect(cb).not.toBeCalled();
|
|
42
|
-
memoizedNumber.val = 6;
|
|
43
|
-
expect(cb).toBeCalled();
|
|
44
|
-
});
|
|
45
|
-
it("Only triggers the CB when something changes", () => {
|
|
46
|
-
const cb = jest.fn();
|
|
47
|
-
const props = {
|
|
48
|
-
initialValue: 5,
|
|
49
|
-
max: 10,
|
|
50
|
-
min: 1,
|
|
51
|
-
};
|
|
52
|
-
const memoizedNumber = new RangedNumber(props, cb);
|
|
53
|
-
memoizedNumber.val = 5;
|
|
54
|
-
memoizedNumber.val = 5;
|
|
55
|
-
memoizedNumber.val = 5;
|
|
56
|
-
expect(cb).not.toBeCalled();
|
|
57
|
-
});
|
|
58
|
-
it("Checks the clamped value before triggering", () => {
|
|
59
|
-
const cb = jest.fn();
|
|
60
|
-
const props = {
|
|
61
|
-
initialValue: 10,
|
|
62
|
-
max: 10,
|
|
63
|
-
min: 1,
|
|
64
|
-
};
|
|
65
|
-
const memoizedNumber = new RangedNumber(props, cb);
|
|
66
|
-
memoizedNumber.val = 11;
|
|
67
|
-
memoizedNumber.val = 12;
|
|
68
|
-
memoizedNumber.val = 13;
|
|
69
|
-
expect(cb).not.toBeCalled();
|
|
70
|
-
});
|
|
71
|
-
it("Does not notify if set quietly", () => {
|
|
72
|
-
const cb = jest.fn();
|
|
73
|
-
const props = {
|
|
74
|
-
initialValue: 5,
|
|
75
|
-
max: 10,
|
|
76
|
-
min: 1,
|
|
77
|
-
};
|
|
78
|
-
const memoizedNumber = new RangedNumber(props, cb);
|
|
79
|
-
memoizedNumber.setValQuietly(6);
|
|
80
|
-
expect(memoizedNumber.val).toEqual(6);
|
|
81
|
-
expect(cb).not.toBeCalled();
|
|
82
|
-
});
|
|
83
|
-
it("Setting quietly is clamped", () => {
|
|
84
|
-
const cb = jest.fn();
|
|
85
|
-
const props = {
|
|
86
|
-
initialValue: 5,
|
|
87
|
-
max: 10,
|
|
88
|
-
min: 1,
|
|
89
|
-
};
|
|
90
|
-
const memoizedNumber = new RangedNumber(props, cb);
|
|
91
|
-
memoizedNumber.setValQuietly(-1);
|
|
92
|
-
expect(memoizedNumber.val).toEqual(1);
|
|
93
|
-
});
|
|
94
|
-
//# sourceMappingURL=RangedNumber.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RangedNumber.test.js","sourceRoot":"","sources":["../../../src/Entities/RangedNumber.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { RangedNumber, RangedNumberProperties } from \"./RangedNumber\";\r\n\r\nit(\"Stores the initial value\", () => {\r\n const props: RangedNumberProperties = {\r\n initialValue: 5,\r\n max: 10,\r\n min: 1,\r\n };\r\n\r\n const memoizedNumber = new RangedNumber(props, jest.fn());\r\n expect(memoizedNumber.val).toEqual(5);\r\n});\r\n\r\nit(\"Clamps the initial value\", () => {\r\n const props: RangedNumberProperties = {\r\n initialValue: 50,\r\n max: 10,\r\n min: 1,\r\n };\r\n\r\n const memoizedNumber = new RangedNumber(props, jest.fn());\r\n expect(memoizedNumber.val).toEqual(10);\r\n});\r\n\r\nit(\"Clamps the value\", () => {\r\n const props: RangedNumberProperties = {\r\n initialValue: 5,\r\n max: 10,\r\n min: 1,\r\n };\r\n\r\n const memoizedNumber = new RangedNumber(props, jest.fn());\r\n\r\n expect(memoizedNumber.val).toEqual(5);\r\n\r\n memoizedNumber.val = 11;\r\n expect(memoizedNumber.val).toEqual(10);\r\n\r\n memoizedNumber.val = 0;\r\n expect(memoizedNumber.val).toEqual(1);\r\n});\r\n\r\nit(\"Triggers the callback when something changes\", () => {\r\n const cb = jest.fn();\r\n\r\n const props: RangedNumberProperties = {\r\n initialValue: 5,\r\n max: 10,\r\n min: 1,\r\n };\r\n const memoizedNumber = new RangedNumber(props, cb);\r\n\r\n expect(cb).not.toBeCalled();\r\n\r\n memoizedNumber.val = 6;\r\n\r\n expect(cb).toBeCalled();\r\n});\r\n\r\nit(\"Only triggers the CB when something changes\", () => {\r\n const cb = jest.fn();\r\n const props: RangedNumberProperties = {\r\n initialValue: 5,\r\n max: 10,\r\n min: 1,\r\n };\r\n const memoizedNumber = new RangedNumber(props, cb);\r\n\r\n memoizedNumber.val = 5;\r\n memoizedNumber.val = 5;\r\n memoizedNumber.val = 5;\r\n\r\n expect(cb).not.toBeCalled();\r\n});\r\n\r\nit(\"Checks the clamped value before triggering\", () => {\r\n const cb = jest.fn();\r\n const props: RangedNumberProperties = {\r\n initialValue: 10,\r\n max: 10,\r\n min: 1,\r\n };\r\n const memoizedNumber = new RangedNumber(props, cb);\r\n\r\n memoizedNumber.val = 11;\r\n memoizedNumber.val = 12;\r\n memoizedNumber.val = 13;\r\n\r\n expect(cb).not.toBeCalled();\r\n});\r\n\r\nit(\"Does not notify if set quietly\", () => {\r\n const cb = jest.fn();\r\n const props: RangedNumberProperties = {\r\n initialValue: 5,\r\n max: 10,\r\n min: 1,\r\n };\r\n const memoizedNumber = new RangedNumber(props, cb);\r\n\r\n memoizedNumber.setValQuietly(6);\r\n\r\n expect(memoizedNumber.val).toEqual(6);\r\n expect(cb).not.toBeCalled();\r\n});\r\n\r\nit(\"Setting quietly is clamped\", () => {\r\n const cb = jest.fn();\r\n const props: RangedNumberProperties = {\r\n initialValue: 5,\r\n max: 10,\r\n min: 1,\r\n };\r\n const memoizedNumber = new RangedNumber(props, cb);\r\n\r\n memoizedNumber.setValQuietly(-1);\r\n expect(memoizedNumber.val).toEqual(1);\r\n});\r\n"]}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { feetToMeters, inchesToMeters, metersToFeet, metersToInches, } from "./LengthConverters";
|
|
2
|
-
test("Converting inches to meters", () => {
|
|
3
|
-
expect(inchesToMeters(0)).toEqual(0);
|
|
4
|
-
expect(inchesToMeters(12)).toEqual(0.30479983540808886);
|
|
5
|
-
expect(inchesToMeters(-12)).toEqual(-0.30479983540808886);
|
|
6
|
-
});
|
|
7
|
-
test("Converting meters to inches", () => {
|
|
8
|
-
expect(metersToInches(0)).toEqual(0);
|
|
9
|
-
expect(metersToInches(2)).toEqual(78.7402);
|
|
10
|
-
expect(metersToInches(-2)).toEqual(-78.7402);
|
|
11
|
-
});
|
|
12
|
-
test("Converting feet to meters", () => {
|
|
13
|
-
expect(feetToMeters(0)).toEqual(0);
|
|
14
|
-
expect(feetToMeters(5)).toEqual(1.5239999512320015);
|
|
15
|
-
expect(feetToMeters(-5)).toEqual(-1.5239999512320015);
|
|
16
|
-
});
|
|
17
|
-
test("Converting meters to feet", () => {
|
|
18
|
-
expect(metersToFeet(0)).toEqual(0);
|
|
19
|
-
expect(metersToFeet(2)).toEqual(6.56168);
|
|
20
|
-
expect(metersToFeet(-2)).toEqual(-6.56168);
|
|
21
|
-
});
|
|
22
|
-
//# sourceMappingURL=LengthConverters.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LengthConverters.test.js","sourceRoot":"","sources":["../../../src/Utilities/LengthConverters.test.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,cAAc,GACf,MAAM,oBAAoB,CAAC;AAE5B,IAAI,CAAC,6BAA6B,EAAE,GAAG,EAAE;IACvC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACrC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACxD,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,mBAAmB,CAAC,CAAC;AAC5D,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6BAA6B,EAAE,GAAG,EAAE;IACvC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACrC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3C,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC;AAC/C,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACrC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACpD,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,kBAAkB,CAAC,CAAC;AACxD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACrC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACzC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC;AAC7C,CAAC,CAAC,CAAC","sourcesContent":["import {\r\n feetToMeters,\r\n inchesToMeters,\r\n metersToFeet,\r\n metersToInches,\r\n} from \"./LengthConverters\";\r\n\r\ntest(\"Converting inches to meters\", () => {\r\n expect(inchesToMeters(0)).toEqual(0);\r\n expect(inchesToMeters(12)).toEqual(0.30479983540808886);\r\n expect(inchesToMeters(-12)).toEqual(-0.30479983540808886);\r\n});\r\n\r\ntest(\"Converting meters to inches\", () => {\r\n expect(metersToInches(0)).toEqual(0);\r\n expect(metersToInches(2)).toEqual(78.7402);\r\n expect(metersToInches(-2)).toEqual(-78.7402);\r\n});\r\n\r\ntest(\"Converting feet to meters\", () => {\r\n expect(feetToMeters(0)).toEqual(0);\r\n expect(feetToMeters(5)).toEqual(1.5239999512320015);\r\n expect(feetToMeters(-5)).toEqual(-1.5239999512320015);\r\n});\r\n\r\ntest(\"Converting meters to feet\", () => {\r\n expect(metersToFeet(0)).toEqual(0);\r\n expect(metersToFeet(2)).toEqual(6.56168);\r\n expect(metersToFeet(-2)).toEqual(-6.56168);\r\n});\r\n"]}
|
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
import { LerpNumber } from "./LerpNumber";
|
|
2
|
-
describe("Lerp Number", () => {
|
|
3
|
-
let lerpNumber;
|
|
4
|
-
let updateFn;
|
|
5
|
-
beforeEach(() => {
|
|
6
|
-
lerpNumber = new LerpNumber();
|
|
7
|
-
updateFn = jest.fn();
|
|
8
|
-
jest.useFakeTimers();
|
|
9
|
-
});
|
|
10
|
-
afterEach(() => {
|
|
11
|
-
jest.useRealTimers();
|
|
12
|
-
});
|
|
13
|
-
it("should lerp from start to end value", async () => {
|
|
14
|
-
lerpNumber.defaultDurationMS = 1000;
|
|
15
|
-
const promise = lerpNumber.lerp({
|
|
16
|
-
start: 0,
|
|
17
|
-
end: 100,
|
|
18
|
-
update: updateFn,
|
|
19
|
-
});
|
|
20
|
-
// Test middle point (should have multiple updates by this point)
|
|
21
|
-
jest.advanceTimersByTime(500);
|
|
22
|
-
expect(updateFn).toHaveBeenCalledWith(expect.closeTo(50, 5)); // Allow some margin due to interval timing
|
|
23
|
-
// Complete animation
|
|
24
|
-
jest.advanceTimersByTime(500);
|
|
25
|
-
await promise;
|
|
26
|
-
expect(updateFn).toHaveBeenCalledWith(0); // Start value
|
|
27
|
-
expect(updateFn).toHaveBeenLastCalledWith(100); // End value
|
|
28
|
-
});
|
|
29
|
-
it("should cancel lerp when requested", async () => {
|
|
30
|
-
const onCancel = jest.fn();
|
|
31
|
-
const promise = lerpNumber.lerp({
|
|
32
|
-
start: 0,
|
|
33
|
-
end: 100,
|
|
34
|
-
update: updateFn,
|
|
35
|
-
onCancel,
|
|
36
|
-
});
|
|
37
|
-
expect(lerpNumber.isLerping).toBe(true);
|
|
38
|
-
lerpNumber.cancel();
|
|
39
|
-
jest.advanceTimersByTime(10); // Allow interval to execute
|
|
40
|
-
await promise;
|
|
41
|
-
expect(lerpNumber.isLerping).toBe(false);
|
|
42
|
-
expect(onCancel).toHaveBeenCalled();
|
|
43
|
-
});
|
|
44
|
-
it("should respect custom duration", async () => {
|
|
45
|
-
const promise = lerpNumber.lerp({
|
|
46
|
-
start: 0,
|
|
47
|
-
end: 100,
|
|
48
|
-
update: updateFn,
|
|
49
|
-
durationMS: 500,
|
|
50
|
-
});
|
|
51
|
-
jest.advanceTimersByTime(250); // Half way
|
|
52
|
-
expect(updateFn).toHaveBeenLastCalledWith(expect.any(Number));
|
|
53
|
-
jest.advanceTimersByTime(250); // Complete
|
|
54
|
-
await promise;
|
|
55
|
-
expect(updateFn).toHaveBeenLastCalledWith(100);
|
|
56
|
-
});
|
|
57
|
-
it("should call onComplete when finished", async () => {
|
|
58
|
-
const onComplete = jest.fn();
|
|
59
|
-
const promise = lerpNumber.lerp({
|
|
60
|
-
start: 0,
|
|
61
|
-
end: 100,
|
|
62
|
-
update: updateFn,
|
|
63
|
-
onComplete,
|
|
64
|
-
});
|
|
65
|
-
jest.advanceTimersByTime(1000);
|
|
66
|
-
await promise;
|
|
67
|
-
expect(onComplete).toHaveBeenCalled();
|
|
68
|
-
});
|
|
69
|
-
it("should cancel existing lerp when starting a new one", async () => {
|
|
70
|
-
const onCancel = jest.fn();
|
|
71
|
-
const firstPromise = lerpNumber.lerp({
|
|
72
|
-
start: 0,
|
|
73
|
-
end: 100,
|
|
74
|
-
update: updateFn,
|
|
75
|
-
onCancel,
|
|
76
|
-
});
|
|
77
|
-
const secondPromise = lerpNumber.lerp({
|
|
78
|
-
start: 200,
|
|
79
|
-
end: 300,
|
|
80
|
-
update: updateFn,
|
|
81
|
-
});
|
|
82
|
-
jest.advanceTimersByTime(1000);
|
|
83
|
-
await Promise.all([firstPromise, secondPromise]);
|
|
84
|
-
expect(onCancel).toHaveBeenCalled();
|
|
85
|
-
expect(updateFn).toHaveBeenLastCalledWith(300);
|
|
86
|
-
});
|
|
87
|
-
});
|
|
88
|
-
//# sourceMappingURL=LerpNumber.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LerpNumber.test.js","sourceRoot":"","sources":["../../../src/Utilities/LerpNumber.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { LerpNumber } from \"./LerpNumber\";\r\n\r\ndescribe(\"Lerp Number\", () => {\r\n let lerpNumber: LerpNumber;\r\n let updateFn: jest.Mock;\r\n\r\n beforeEach(() => {\r\n lerpNumber = new LerpNumber();\r\n updateFn = jest.fn();\r\n jest.useFakeTimers();\r\n });\r\n\r\n afterEach(() => {\r\n jest.useRealTimers();\r\n });\r\n\r\n it(\"should lerp from start to end value\", async () => {\r\n lerpNumber.defaultDurationMS = 1000;\r\n const promise = lerpNumber.lerp({\r\n start: 0,\r\n end: 100,\r\n update: updateFn,\r\n });\r\n\r\n // Test middle point (should have multiple updates by this point)\r\n jest.advanceTimersByTime(500);\r\n expect(updateFn).toHaveBeenCalledWith(expect.closeTo(50, 5)); // Allow some margin due to interval timing\r\n\r\n // Complete animation\r\n jest.advanceTimersByTime(500);\r\n await promise;\r\n\r\n expect(updateFn).toHaveBeenCalledWith(0); // Start value\r\n expect(updateFn).toHaveBeenLastCalledWith(100); // End value\r\n });\r\n\r\n it(\"should cancel lerp when requested\", async () => {\r\n const onCancel = jest.fn();\r\n const promise = lerpNumber.lerp({\r\n start: 0,\r\n end: 100,\r\n update: updateFn,\r\n onCancel,\r\n });\r\n\r\n expect(lerpNumber.isLerping).toBe(true);\r\n\r\n lerpNumber.cancel();\r\n jest.advanceTimersByTime(10); // Allow interval to execute\r\n await promise;\r\n\r\n expect(lerpNumber.isLerping).toBe(false);\r\n expect(onCancel).toHaveBeenCalled();\r\n });\r\n\r\n it(\"should respect custom duration\", async () => {\r\n const promise = lerpNumber.lerp({\r\n start: 0,\r\n end: 100,\r\n update: updateFn,\r\n durationMS: 500,\r\n });\r\n\r\n jest.advanceTimersByTime(250); // Half way\r\n expect(updateFn).toHaveBeenLastCalledWith(expect.any(Number));\r\n\r\n jest.advanceTimersByTime(250); // Complete\r\n await promise;\r\n\r\n expect(updateFn).toHaveBeenLastCalledWith(100);\r\n });\r\n\r\n it(\"should call onComplete when finished\", async () => {\r\n const onComplete = jest.fn();\r\n const promise = lerpNumber.lerp({\r\n start: 0,\r\n end: 100,\r\n update: updateFn,\r\n onComplete,\r\n });\r\n\r\n jest.advanceTimersByTime(1000);\r\n await promise;\r\n\r\n expect(onComplete).toHaveBeenCalled();\r\n });\r\n\r\n it(\"should cancel existing lerp when starting a new one\", async () => {\r\n const onCancel = jest.fn();\r\n const firstPromise = lerpNumber.lerp({\r\n start: 0,\r\n end: 100,\r\n update: updateFn,\r\n onCancel,\r\n });\r\n\r\n const secondPromise = lerpNumber.lerp({\r\n start: 200,\r\n end: 300,\r\n update: updateFn,\r\n });\r\n\r\n jest.advanceTimersByTime(1000);\r\n await Promise.all([firstPromise, secondPromise]);\r\n\r\n expect(onCancel).toHaveBeenCalled();\r\n expect(updateFn).toHaveBeenLastCalledWith(300);\r\n });\r\n});\r\n"]}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { addAlphaToHex } from "./addAlphaToHex";
|
|
2
|
-
describe("addAlphaToHex", () => {
|
|
3
|
-
it("should add alpha channel to hex color code", () => {
|
|
4
|
-
expect(addAlphaToHex("#ffffff", 0.5)).toBe("#ffffff80");
|
|
5
|
-
expect(addAlphaToHex("#000000", 0.1)).toBe("#0000001a");
|
|
6
|
-
expect(addAlphaToHex("#123456", 0)).toBe("#12345600");
|
|
7
|
-
expect(addAlphaToHex("#abcdef", 1)).toBe("#abcdefff");
|
|
8
|
-
});
|
|
9
|
-
it("should add alpha channel to short hex color code", () => {
|
|
10
|
-
expect(addAlphaToHex("#fff", 0.5)).toBe("#ffffff80");
|
|
11
|
-
expect(addAlphaToHex("#000", 0.1)).toBe("#0000001a");
|
|
12
|
-
});
|
|
13
|
-
it("should log a warning and return Hex with alpha 0 if alpha value is out of bounds", () => {
|
|
14
|
-
console.warn = jest.fn();
|
|
15
|
-
expect(addAlphaToHex("#ffffff", -0.1)).toBe("#ffffff00");
|
|
16
|
-
expect(console.warn).toHaveBeenCalledWith("[alphaToHex] Alpha value must be between 0 and 1.");
|
|
17
|
-
expect(addAlphaToHex("#ffffff", 1.1)).toBe("#ffffff00");
|
|
18
|
-
expect(console.warn).toHaveBeenCalledWith("[alphaToHex] Alpha value must be between 0 and 1.");
|
|
19
|
-
});
|
|
20
|
-
it("should log a warning and return #000 for invalid hex values", () => {
|
|
21
|
-
console.warn = jest.fn();
|
|
22
|
-
expect(addAlphaToHex("#gggggg", 0.5)).toBe("#000");
|
|
23
|
-
expect(console.warn).toHaveBeenCalledWith("[addAlphaToHex] Hex value is not valid.");
|
|
24
|
-
expect(addAlphaToHex("#ffff", 0.5)).toBe("#000");
|
|
25
|
-
expect(console.warn).toHaveBeenCalledWith("[addAlphaToHex] Hex value is not valid.");
|
|
26
|
-
expect(addAlphaToHex("ffffff", 0.5)).toBe("#000");
|
|
27
|
-
expect(console.warn).toHaveBeenCalledWith("[addAlphaToHex] Hex value is not valid.");
|
|
28
|
-
expect(addAlphaToHex("#fff0", 0.5)).toBe("#000");
|
|
29
|
-
expect(console.warn).toHaveBeenCalledWith("[addAlphaToHex] Hex value is not valid.");
|
|
30
|
-
});
|
|
31
|
-
});
|
|
32
|
-
//# sourceMappingURL=addAlphaToHex.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"addAlphaToHex.test.js","sourceRoot":"","sources":["../../../src/Utilities/addAlphaToHex.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxD,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxD,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACtD,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACrD,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kFAAkF,EAAE,GAAG,EAAE;QAC1F,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QACzB,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACzD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,oBAAoB,CACvC,mDAAmD,CACpD,CAAC;QACF,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,oBAAoB,CACvC,mDAAmD,CACpD,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,GAAG,EAAE;QACrE,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QACzB,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,oBAAoB,CACvC,yCAAyC,CAC1C,CAAC;QAEF,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,oBAAoB,CACvC,yCAAyC,CAC1C,CAAC;QAEF,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,oBAAoB,CACvC,yCAAyC,CAC1C,CAAC;QAEF,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,oBAAoB,CACvC,yCAAyC,CAC1C,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { addAlphaToHex } from \"./addAlphaToHex\";\r\n\r\ndescribe(\"addAlphaToHex\", () => {\r\n it(\"should add alpha channel to hex color code\", () => {\r\n expect(addAlphaToHex(\"#ffffff\", 0.5)).toBe(\"#ffffff80\");\r\n expect(addAlphaToHex(\"#000000\", 0.1)).toBe(\"#0000001a\");\r\n expect(addAlphaToHex(\"#123456\", 0)).toBe(\"#12345600\");\r\n expect(addAlphaToHex(\"#abcdef\", 1)).toBe(\"#abcdefff\");\r\n });\r\n\r\n it(\"should add alpha channel to short hex color code\", () => {\r\n expect(addAlphaToHex(\"#fff\", 0.5)).toBe(\"#ffffff80\");\r\n expect(addAlphaToHex(\"#000\", 0.1)).toBe(\"#0000001a\");\r\n });\r\n\r\n it(\"should log a warning and return Hex with alpha 0 if alpha value is out of bounds\", () => {\r\n console.warn = jest.fn();\r\n expect(addAlphaToHex(\"#ffffff\", -0.1)).toBe(\"#ffffff00\");\r\n expect(console.warn).toHaveBeenCalledWith(\r\n \"[alphaToHex] Alpha value must be between 0 and 1.\"\r\n );\r\n expect(addAlphaToHex(\"#ffffff\", 1.1)).toBe(\"#ffffff00\");\r\n expect(console.warn).toHaveBeenCalledWith(\r\n \"[alphaToHex] Alpha value must be between 0 and 1.\"\r\n );\r\n });\r\n\r\n it(\"should log a warning and return #000 for invalid hex values\", () => {\r\n console.warn = jest.fn();\r\n expect(addAlphaToHex(\"#gggggg\", 0.5)).toBe(\"#000\");\r\n expect(console.warn).toHaveBeenCalledWith(\r\n \"[addAlphaToHex] Hex value is not valid.\"\r\n );\r\n\r\n expect(addAlphaToHex(\"#ffff\", 0.5)).toBe(\"#000\");\r\n expect(console.warn).toHaveBeenCalledWith(\r\n \"[addAlphaToHex] Hex value is not valid.\"\r\n );\r\n\r\n expect(addAlphaToHex(\"ffffff\", 0.5)).toBe(\"#000\");\r\n expect(console.warn).toHaveBeenCalledWith(\r\n \"[addAlphaToHex] Hex value is not valid.\"\r\n );\r\n\r\n expect(addAlphaToHex(\"#fff0\", 0.5)).toBe(\"#000\");\r\n expect(console.warn).toHaveBeenCalledWith(\r\n \"[addAlphaToHex] Hex value is not valid.\"\r\n );\r\n });\r\n});\r\n"]}
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import { alphaToHex, roundHalfToEven } from "./alphaToHex";
|
|
2
|
-
describe("roundHalfToEven", () => {
|
|
3
|
-
it("should round 0.49 to 0", () => {
|
|
4
|
-
expect(roundHalfToEven(0.49)).toBe(0);
|
|
5
|
-
});
|
|
6
|
-
it("should round 0.5 to 0", () => {
|
|
7
|
-
expect(roundHalfToEven(0.5)).toBe(0);
|
|
8
|
-
});
|
|
9
|
-
it("should round 0.51 to 1", () => {
|
|
10
|
-
expect(roundHalfToEven(0.51)).toBe(1);
|
|
11
|
-
});
|
|
12
|
-
it("should round 0.55 to 1", () => {
|
|
13
|
-
expect(roundHalfToEven(0.55)).toBe(1);
|
|
14
|
-
});
|
|
15
|
-
it("should round 0.75 to 1", () => {
|
|
16
|
-
expect(roundHalfToEven(0.75)).toBe(1);
|
|
17
|
-
});
|
|
18
|
-
it("should round 123.5 to 124", () => {
|
|
19
|
-
expect(roundHalfToEven(123.5)).toBe(124);
|
|
20
|
-
});
|
|
21
|
-
});
|
|
22
|
-
describe("alphaToHex", () => {
|
|
23
|
-
it("should return '00' for alpha 0", () => {
|
|
24
|
-
expect(alphaToHex(0)).toBe("00");
|
|
25
|
-
});
|
|
26
|
-
it("should return 'ff' for alpha 1", () => {
|
|
27
|
-
expect(alphaToHex(1)).toBe("ff");
|
|
28
|
-
});
|
|
29
|
-
it("should return '1f' for alpha 0.12 (12%)", () => {
|
|
30
|
-
expect(alphaToHex(0.12)).toBe("1f");
|
|
31
|
-
});
|
|
32
|
-
it("should return '80' for alpha 0.5 (50%)", () => {
|
|
33
|
-
expect(alphaToHex(0.5)).toBe("80");
|
|
34
|
-
});
|
|
35
|
-
it("should return 'bf' for alpha 0.75 (75%)", () => {
|
|
36
|
-
expect(alphaToHex(0.75)).toBe("bf");
|
|
37
|
-
});
|
|
38
|
-
it("should return '00' for alpha just above 0", () => {
|
|
39
|
-
expect(alphaToHex(0.0012)).toBe("00");
|
|
40
|
-
});
|
|
41
|
-
it("should return '03' for alpha 0.01", () => {
|
|
42
|
-
expect(alphaToHex(0.01)).toBe("03");
|
|
43
|
-
});
|
|
44
|
-
it("should return '03' for alpha just above 0 with rounding", () => {
|
|
45
|
-
expect(alphaToHex(0.01)).toBe("03");
|
|
46
|
-
});
|
|
47
|
-
it("should return 'ff' for alpha just below 1", () => {
|
|
48
|
-
expect(alphaToHex(0.9988)).toBe("ff");
|
|
49
|
-
});
|
|
50
|
-
it("should return 'fc' for alpha 0.99", () => {
|
|
51
|
-
expect(alphaToHex(0.99)).toBe("fc");
|
|
52
|
-
});
|
|
53
|
-
it("should return 'fc' for alpha just below 1 with rounding", () => {
|
|
54
|
-
expect(alphaToHex(0.99)).toBe("fc");
|
|
55
|
-
});
|
|
56
|
-
it("should return 'fe' for alpha 0.996", () => {
|
|
57
|
-
expect(alphaToHex(0.996)).toBe("fe");
|
|
58
|
-
});
|
|
59
|
-
it("should return 'fe' for alpha 0.998", () => {
|
|
60
|
-
expect(alphaToHex(0.998)).toBe("fe");
|
|
61
|
-
});
|
|
62
|
-
it("should log a warning and return '00' (0) for alpha less than 0", () => {
|
|
63
|
-
console.warn = jest.fn();
|
|
64
|
-
expect(alphaToHex(-0.1)).toBe("00");
|
|
65
|
-
expect(console.warn).toHaveBeenCalledWith("[alphaToHex] Alpha value must be between 0 and 1.");
|
|
66
|
-
});
|
|
67
|
-
it("should log a warning and return '00' (0) for alpha greater than 1", () => {
|
|
68
|
-
console.warn = jest.fn();
|
|
69
|
-
expect(alphaToHex(1.1)).toBe("00");
|
|
70
|
-
expect(console.warn).toHaveBeenCalledWith("[alphaToHex] Alpha value must be between 0 and 1.");
|
|
71
|
-
});
|
|
72
|
-
});
|
|
73
|
-
//# sourceMappingURL=alphaToHex.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"alphaToHex.test.js","sourceRoot":"","sources":["../../../src/Utilities/alphaToHex.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { alphaToHex, roundHalfToEven } from \"./alphaToHex\";\r\n\r\ndescribe(\"roundHalfToEven\", () => {\r\n it(\"should round 0.49 to 0\", () => {\r\n expect(roundHalfToEven(0.49)).toBe(0);\r\n });\r\n\r\n it(\"should round 0.5 to 0\", () => {\r\n expect(roundHalfToEven(0.5)).toBe(0);\r\n });\r\n\r\n it(\"should round 0.51 to 1\", () => {\r\n expect(roundHalfToEven(0.51)).toBe(1);\r\n });\r\n\r\n it(\"should round 0.55 to 1\", () => {\r\n expect(roundHalfToEven(0.55)).toBe(1);\r\n });\r\n\r\n it(\"should round 0.75 to 1\", () => {\r\n expect(roundHalfToEven(0.75)).toBe(1);\r\n });\r\n\r\n it(\"should round 123.5 to 124\", () => {\r\n expect(roundHalfToEven(123.5)).toBe(124);\r\n });\r\n});\r\n\r\ndescribe(\"alphaToHex\", () => {\r\n it(\"should return '00' for alpha 0\", () => {\r\n expect(alphaToHex(0)).toBe(\"00\");\r\n });\r\n\r\n it(\"should return 'ff' for alpha 1\", () => {\r\n expect(alphaToHex(1)).toBe(\"ff\");\r\n });\r\n\r\n it(\"should return '1f' for alpha 0.12 (12%)\", () => {\r\n expect(alphaToHex(0.12)).toBe(\"1f\");\r\n });\r\n\r\n it(\"should return '80' for alpha 0.5 (50%)\", () => {\r\n expect(alphaToHex(0.5)).toBe(\"80\");\r\n });\r\n\r\n it(\"should return 'bf' for alpha 0.75 (75%)\", () => {\r\n expect(alphaToHex(0.75)).toBe(\"bf\");\r\n });\r\n\r\n it(\"should return '00' for alpha just above 0\", () => {\r\n expect(alphaToHex(0.0012)).toBe(\"00\");\r\n });\r\n\r\n it(\"should return '03' for alpha 0.01\", () => {\r\n expect(alphaToHex(0.01)).toBe(\"03\");\r\n });\r\n\r\n it(\"should return '03' for alpha just above 0 with rounding\", () => {\r\n expect(alphaToHex(0.01)).toBe(\"03\");\r\n });\r\n\r\n it(\"should return 'ff' for alpha just below 1\", () => {\r\n expect(alphaToHex(0.9988)).toBe(\"ff\");\r\n });\r\n\r\n it(\"should return 'fc' for alpha 0.99\", () => {\r\n expect(alphaToHex(0.99)).toBe(\"fc\");\r\n });\r\n\r\n it(\"should return 'fc' for alpha just below 1 with rounding\", () => {\r\n expect(alphaToHex(0.99)).toBe(\"fc\");\r\n });\r\n\r\n it(\"should return 'fe' for alpha 0.996\", () => {\r\n expect(alphaToHex(0.996)).toBe(\"fe\");\r\n });\r\n\r\n it(\"should return 'fe' for alpha 0.998\", () => {\r\n expect(alphaToHex(0.998)).toBe(\"fe\");\r\n });\r\n\r\n it(\"should log a warning and return '00' (0) for alpha less than 0\", () => {\r\n console.warn = jest.fn();\r\n expect(alphaToHex(-0.1)).toBe(\"00\");\r\n expect(console.warn).toHaveBeenCalledWith(\r\n \"[alphaToHex] Alpha value must be between 0 and 1.\"\r\n );\r\n });\r\n\r\n it(\"should log a warning and return '00' (0) for alpha greater than 1\", () => {\r\n console.warn = jest.fn();\r\n expect(alphaToHex(1.1)).toBe(\"00\");\r\n expect(console.warn).toHaveBeenCalledWith(\r\n \"[alphaToHex] Alpha value must be between 0 and 1.\"\r\n );\r\n });\r\n});\r\n"]}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { degreesToRadians } from "./degreesToRadians";
|
|
2
|
-
test("Converting degrees to radians", () => {
|
|
3
|
-
expect(degreesToRadians(0)).toEqual(0);
|
|
4
|
-
expect(degreesToRadians(180)).toBeCloseTo(Math.PI);
|
|
5
|
-
expect(degreesToRadians(-90)).toBeCloseTo(-Math.PI / 2);
|
|
6
|
-
});
|
|
7
|
-
//# sourceMappingURL=degreesToRadians.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"degreesToRadians.test.js","sourceRoot":"","sources":["../../../src/Utilities/degreesToRadians.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAErD,IAAI,CAAC,+BAA+B,EAAE,GAAE,EAAE;IACxC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACvC,MAAM,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnD,MAAM,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,EAAE,GAAC,CAAC,CAAC,CAAC;AACxD,CAAC,CAAC,CAAA","sourcesContent":["import { degreesToRadians } from \"./degreesToRadians\"\r\n\r\ntest(\"Converting degrees to radians\", ()=>{\r\n expect(degreesToRadians(0)).toEqual(0);\r\n expect(degreesToRadians(180)).toBeCloseTo(Math.PI);\r\n expect(degreesToRadians(-90)).toBeCloseTo(-Math.PI/2);\r\n})\r\n\r\n"]}
|