@vived/app 5.0.6 → 5.0.7

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.
Files changed (359) hide show
  1. package/dist/cjs/Babylon/Mocks/MockSceneRayPickUC.js +3 -1
  2. package/dist/cjs/Babylon/Mocks/MockSceneRayPickUC.js.map +1 -1
  3. package/dist/cjs/Babylon/UC/SceneRayPickUC.test.js +1 -0
  4. package/dist/cjs/Babylon/UC/SceneRayPickUC.test.js.map +1 -1
  5. package/dist/cjs/BaseApp/UC/EditSlideTextUC.test.js +8 -6
  6. package/dist/cjs/BaseApp/UC/EditSlideTextUC.test.js.map +1 -1
  7. package/dist/cjs/BaseApp/UC/UndoRedoEditSlideText.test.js +10 -6
  8. package/dist/cjs/BaseApp/UC/UndoRedoEditSlideText.test.js.map +1 -1
  9. package/dist/cjs/BaseApp/UC/UpdateContentSizeUC.test.js +8 -6
  10. package/dist/cjs/BaseApp/UC/UpdateContentSizeUC.test.js.map +1 -1
  11. package/dist/cjs/Callouts/UC/CreateCalloutUndoRedo.test.js +7 -4
  12. package/dist/cjs/Callouts/UC/CreateCalloutUndoRedo.test.js.map +1 -1
  13. package/dist/cjs/Callouts/UC/DeleteAllCalloutsUC.test.js +7 -4
  14. package/dist/cjs/Callouts/UC/DeleteAllCalloutsUC.test.js.map +1 -1
  15. package/dist/cjs/Callouts/UC/DeleteAllCalloutsUndoRedo.test.js +13 -7
  16. package/dist/cjs/Callouts/UC/DeleteAllCalloutsUndoRedo.test.js.map +1 -1
  17. package/dist/cjs/Callouts/UC/DeleteCallout.test.js +5 -2
  18. package/dist/cjs/Callouts/UC/DeleteCallout.test.js.map +1 -1
  19. package/dist/cjs/Callouts/UC/DeleteCalloutUndoRedo.test.js +9 -7
  20. package/dist/cjs/Callouts/UC/DeleteCalloutUndoRedo.test.js.map +1 -1
  21. package/dist/cjs/Callouts/UC/SetCalloutSizeUC.test.js +7 -5
  22. package/dist/cjs/Callouts/UC/SetCalloutSizeUC.test.js.map +1 -1
  23. package/dist/cjs/Callouts/UC/SetCalloutSizeUndoRedo.test.js +10 -6
  24. package/dist/cjs/Callouts/UC/SetCalloutSizeUndoRedo.test.js.map +1 -1
  25. package/dist/cjs/Callouts/UC/TryAddCallout.test.js +5 -4
  26. package/dist/cjs/Callouts/UC/TryAddCallout.test.js.map +1 -1
  27. package/dist/cjs/Callouts/UC/TryPanLabelUC.test.js +3 -2
  28. package/dist/cjs/Callouts/UC/TryPanLabelUC.test.js.map +1 -1
  29. package/dist/cjs/Challenge/UCs/SetChallengeUC.test.js +11 -9
  30. package/dist/cjs/Challenge/UCs/SetChallengeUC.test.js.map +1 -1
  31. package/dist/cjs/ChannelModel/UC/ClearAllColorOverlayUndoRedo.test.js +13 -7
  32. package/dist/cjs/ChannelModel/UC/ClearAllColorOverlayUndoRedo.test.js.map +1 -1
  33. package/dist/cjs/ChannelModel/UC/ClearModelObjectOverlaysUC.test.js +7 -4
  34. package/dist/cjs/ChannelModel/UC/ClearModelObjectOverlaysUC.test.js.map +1 -1
  35. package/dist/cjs/ChannelModel/UC/SelectChannelModelUC.test.js +5 -2
  36. package/dist/cjs/ChannelModel/UC/SelectChannelModelUC.test.js.map +1 -1
  37. package/dist/cjs/ChannelModel/UC/StickAllChannelModelObjectsUC.test.js +10 -8
  38. package/dist/cjs/ChannelModel/UC/StickAllChannelModelObjectsUC.test.js.map +1 -1
  39. package/dist/cjs/ChannelModel/UC/UnhideAllAppObjectsUndoRedo.test.js +9 -7
  40. package/dist/cjs/ChannelModel/UC/UnhideAllAppObjectsUndoRedo.test.js.map +1 -1
  41. package/dist/cjs/ChannelModel/UC/UnhideAllChannelModelObjectsUC.test.js +7 -5
  42. package/dist/cjs/ChannelModel/UC/UnhideAllChannelModelObjectsUC.test.js.map +1 -1
  43. package/dist/cjs/Dispatcher/Mocks/MockDispatchStateChange.js +3 -3
  44. package/dist/cjs/Dispatcher/Mocks/MockDispatchStateChange.js.map +1 -1
  45. package/dist/cjs/Environment/UCs/SetEnvironmentIntensityUC.test.js +11 -9
  46. package/dist/cjs/Environment/UCs/SetEnvironmentIntensityUC.test.js.map +1 -1
  47. package/dist/cjs/Environment/UCs/SetTexturalEnvironmentUC.test.js +9 -7
  48. package/dist/cjs/Environment/UCs/SetTexturalEnvironmentUC.test.js.map +1 -1
  49. package/dist/cjs/Hideable/UCs/HideUC.test.js +10 -8
  50. package/dist/cjs/Hideable/UCs/HideUC.test.js.map +1 -1
  51. package/dist/cjs/Hideable/UCs/TryHideWithPickUC.test.js +7 -6
  52. package/dist/cjs/Hideable/UCs/TryHideWithPickUC.test.js.map +1 -1
  53. package/dist/cjs/HoverLabel/UseCases/TryShowHoverLabel.test.js +12 -11
  54. package/dist/cjs/HoverLabel/UseCases/TryShowHoverLabel.test.js.map +1 -1
  55. package/dist/cjs/Label/UC/ClearCustomLabelUC.test.js +9 -4
  56. package/dist/cjs/Label/UC/ClearCustomLabelUC.test.js.map +1 -1
  57. package/dist/cjs/Label/UC/ClearCustomLabelUndoRedo.test.js +10 -6
  58. package/dist/cjs/Label/UC/ClearCustomLabelUndoRedo.test.js.map +1 -1
  59. package/dist/cjs/Label/UC/SetCustomLabelUC.test.js +9 -4
  60. package/dist/cjs/Label/UC/SetCustomLabelUC.test.js.map +1 -1
  61. package/dist/cjs/Label/UC/SetCustomLabelUndoRedo.test.js +10 -6
  62. package/dist/cjs/Label/UC/SetCustomLabelUndoRedo.test.js.map +1 -1
  63. package/dist/cjs/LabelDrop/UseCases/DeleteAllLabelDropUC.test.js +9 -7
  64. package/dist/cjs/LabelDrop/UseCases/DeleteAllLabelDropUC.test.js.map +1 -1
  65. package/dist/cjs/LabelDrop/UseCases/DeleteLabelDropUC.test.js +9 -7
  66. package/dist/cjs/LabelDrop/UseCases/DeleteLabelDropUC.test.js.map +1 -1
  67. package/dist/cjs/LabelDrop/UseCases/DragLabelDropUC.test.js +8 -6
  68. package/dist/cjs/LabelDrop/UseCases/DragLabelDropUC.test.js.map +1 -1
  69. package/dist/cjs/LabelDrop/UseCases/DragLabelDropWorldUC.test.js +17 -17
  70. package/dist/cjs/LabelDrop/UseCases/DragLabelDropWorldUC.test.js.map +1 -1
  71. package/dist/cjs/LabelDrop/UseCases/EditLabelDropUC.test.js +20 -18
  72. package/dist/cjs/LabelDrop/UseCases/EditLabelDropUC.test.js.map +1 -1
  73. package/dist/cjs/LabelDrop/UseCases/ToggleLabelDropTargetUC.test.js +4 -2
  74. package/dist/cjs/LabelDrop/UseCases/ToggleLabelDropTargetUC.test.js.map +1 -1
  75. package/dist/cjs/Landmarks/UseCases/AddLandmarkUndoRedo.test.js +10 -5
  76. package/dist/cjs/Landmarks/UseCases/AddLandmarkUndoRedo.test.js.map +1 -1
  77. package/dist/cjs/Landmarks/UseCases/DeleteAllLandmarksUC.test.js +5 -3
  78. package/dist/cjs/Landmarks/UseCases/DeleteAllLandmarksUC.test.js.map +1 -1
  79. package/dist/cjs/Landmarks/UseCases/DeleteAllLandmarksUndoRedo.test.js +11 -6
  80. package/dist/cjs/Landmarks/UseCases/DeleteAllLandmarksUndoRedo.test.js.map +1 -1
  81. package/dist/cjs/Landmarks/UseCases/DeleteLandmarkUC.test.js +10 -5
  82. package/dist/cjs/Landmarks/UseCases/DeleteLandmarkUC.test.js.map +1 -1
  83. package/dist/cjs/Landmarks/UseCases/DeleteLandmarkUndoRedo.test.js +10 -5
  84. package/dist/cjs/Landmarks/UseCases/DeleteLandmarkUndoRedo.test.js.map +1 -1
  85. package/dist/cjs/Landmarks/UseCases/SetLandmarkSizeUC.test.js +7 -5
  86. package/dist/cjs/Landmarks/UseCases/SetLandmarkSizeUC.test.js.map +1 -1
  87. package/dist/cjs/Landmarks/UseCases/SetLandmarkSizeUndoRedo.test.js +10 -6
  88. package/dist/cjs/Landmarks/UseCases/SetLandmarkSizeUndoRedo.test.js.map +1 -1
  89. package/dist/cjs/Landmarks/UseCases/TryAddNewLandmarkUC.test.js +29 -15
  90. package/dist/cjs/Landmarks/UseCases/TryAddNewLandmarkUC.test.js.map +1 -1
  91. package/dist/cjs/Landmarks/UseCases/TryPreviewLandmarkUC.test.js +4 -3
  92. package/dist/cjs/Landmarks/UseCases/TryPreviewLandmarkUC.test.js.map +1 -1
  93. package/dist/cjs/ObjectPick/UseCases/AddCorrectObjectIdUC.test.js +10 -8
  94. package/dist/cjs/ObjectPick/UseCases/AddCorrectObjectIdUC.test.js.map +1 -1
  95. package/dist/cjs/ObjectPick/UseCases/ClearCorrectObjectIdsUC.test.js +10 -8
  96. package/dist/cjs/ObjectPick/UseCases/ClearCorrectObjectIdsUC.test.js.map +1 -1
  97. package/dist/cjs/ObjectPick/UseCases/RemoveCorrectObjectIdUC.test.js +10 -8
  98. package/dist/cjs/ObjectPick/UseCases/RemoveCorrectObjectIdUC.test.js.map +1 -1
  99. package/dist/cjs/ObjectPick/UseCases/TrySelectObjectPickUC.test.js +18 -15
  100. package/dist/cjs/ObjectPick/UseCases/TrySelectObjectPickUC.test.js.map +1 -1
  101. package/dist/cjs/ObjectPick/UseCases/TrySubmitObjectPickUC.test.js +3 -1
  102. package/dist/cjs/ObjectPick/UseCases/TrySubmitObjectPickUC.test.js.map +1 -1
  103. package/dist/cjs/OverlayColor/UC/SetOverlayColorUC.test.js +9 -4
  104. package/dist/cjs/OverlayColor/UC/SetOverlayColorUC.test.js.map +1 -1
  105. package/dist/cjs/OverlayColor/UC/SetOverlayColorUndoRedo.test.js +10 -6
  106. package/dist/cjs/OverlayColor/UC/SetOverlayColorUndoRedo.test.js.map +1 -1
  107. package/dist/cjs/Question/UC/AddAnswerUndoRedo.test.js +16 -6
  108. package/dist/cjs/Question/UC/AddAnswerUndoRedo.test.js.map +1 -1
  109. package/dist/cjs/Question/UC/AddQuestionAnswerUC.test.js +14 -5
  110. package/dist/cjs/Question/UC/AddQuestionAnswerUC.test.js.map +1 -1
  111. package/dist/cjs/Question/UC/DeleteAnswerUndoRedo.test.js +17 -6
  112. package/dist/cjs/Question/UC/DeleteAnswerUndoRedo.test.js.map +1 -1
  113. package/dist/cjs/Question/UC/DeleteQuestionAnswerUC.test.js +9 -6
  114. package/dist/cjs/Question/UC/DeleteQuestionAnswerUC.test.js.map +1 -1
  115. package/dist/cjs/Question/UC/SetAnswerFeedbackUC.test.js +9 -6
  116. package/dist/cjs/Question/UC/SetAnswerFeedbackUC.test.js.map +1 -1
  117. package/dist/cjs/Question/UC/SetAnswerFeedbackUndoRedo.test.js +10 -6
  118. package/dist/cjs/Question/UC/SetAnswerFeedbackUndoRedo.test.js.map +1 -1
  119. package/dist/cjs/Question/UC/SetAnswerTextUC.test.js +9 -6
  120. package/dist/cjs/Question/UC/SetAnswerTextUC.test.js.map +1 -1
  121. package/dist/cjs/Question/UC/SetAnswerTextUndoRedo.test.js +10 -6
  122. package/dist/cjs/Question/UC/SetAnswerTextUndoRedo.test.js.map +1 -1
  123. package/dist/cjs/Question/UC/ToggleIsCorrectUndoRedo.test.js +10 -6
  124. package/dist/cjs/Question/UC/ToggleIsCorrectUndoRedo.test.js.map +1 -1
  125. package/dist/cjs/Question/UC/ToggleQuestionAnswerIsCorrect.test.js +7 -4
  126. package/dist/cjs/Question/UC/ToggleQuestionAnswerIsCorrect.test.js.map +1 -1
  127. package/dist/cjs/RequestHandler/UC/SetAppStateUC.test.js +2 -0
  128. package/dist/cjs/RequestHandler/UC/SetAppStateUC.test.js.map +1 -1
  129. package/dist/cjs/SceneRoot/UC/BumpSceneRootScaleAboutPixelPoint.test.js +7 -4
  130. package/dist/cjs/SceneRoot/UC/BumpSceneRootScaleAboutPixelPoint.test.js.map +1 -1
  131. package/dist/cjs/SceneRoot/UC/DragScaleSceneRoot.test.js +9 -6
  132. package/dist/cjs/SceneRoot/UC/DragScaleSceneRoot.test.js.map +1 -1
  133. package/dist/cjs/SceneRoot/UC/OrbitSceneRoot.test.js +16 -7
  134. package/dist/cjs/SceneRoot/UC/OrbitSceneRoot.test.js.map +1 -1
  135. package/dist/cjs/SceneRoot/UC/PanSceneRoot.test.js +9 -6
  136. package/dist/cjs/SceneRoot/UC/PanSceneRoot.test.js.map +1 -1
  137. package/dist/cjs/SceneRoot/UC/PinchSceneRoot.test.js +9 -6
  138. package/dist/cjs/SceneRoot/UC/PinchSceneRoot.test.js.map +1 -1
  139. package/dist/cjs/Selection/UC/HoverAppObjectUC.test.js +3 -3
  140. package/dist/cjs/Selection/UC/HoverAppObjectUC.test.js.map +1 -1
  141. package/dist/cjs/Selection/UC/PressAppObjectUC.test.js +3 -3
  142. package/dist/cjs/Selection/UC/PressAppObjectUC.test.js.map +1 -1
  143. package/dist/cjs/Selection/UC/SelectAppObjectUC.test.js +3 -3
  144. package/dist/cjs/Selection/UC/SelectAppObjectUC.test.js.map +1 -1
  145. package/dist/cjs/Stick/UCs/MoveTransformWithStickUC.test.js +9 -7
  146. package/dist/cjs/Stick/UCs/MoveTransformWithStickUC.test.js.map +1 -1
  147. package/dist/cjs/Stick/UCs/PanTransformWithStickUC.test.js +13 -11
  148. package/dist/cjs/Stick/UCs/PanTransformWithStickUC.test.js.map +1 -1
  149. package/dist/cjs/Stick/UCs/StickUC.test.js +9 -7
  150. package/dist/cjs/Stick/UCs/StickUC.test.js.map +1 -1
  151. package/dist/cjs/Stick/UCs/TryStickAppObjectUC.test.js +7 -6
  152. package/dist/cjs/Stick/UCs/TryStickAppObjectUC.test.js.map +1 -1
  153. package/dist/cjs/Transform3D/UC/BumpTransformScaleAboutPixelPoint.test.js +5 -3
  154. package/dist/cjs/Transform3D/UC/BumpTransformScaleAboutPixelPoint.test.js.map +1 -1
  155. package/dist/cjs/Transform3D/UC/MoveTransformUC.test.js +21 -11
  156. package/dist/cjs/Transform3D/UC/MoveTransformUC.test.js.map +1 -1
  157. package/dist/cjs/Transform3D/UC/MoveTransformUndoRedo.test.js +10 -6
  158. package/dist/cjs/Transform3D/UC/MoveTransformUndoRedo.test.js.map +1 -1
  159. package/dist/cjs/Transform3D/UC/PanTransformUC.test.js +13 -11
  160. package/dist/cjs/Transform3D/UC/PanTransformUC.test.js.map +1 -1
  161. package/dist/cjs/Transform3D/UC/PinchTransform.test.js +7 -5
  162. package/dist/cjs/Transform3D/UC/PinchTransform.test.js.map +1 -1
  163. package/dist/cjs/Transform3D/UC/RayPanScaleTransform.test.js +9 -7
  164. package/dist/cjs/Transform3D/UC/RayPanScaleTransform.test.js.map +1 -1
  165. package/dist/cjs/Transform3D/UC/ScaleTransform.test.js +22 -18
  166. package/dist/cjs/Transform3D/UC/ScaleTransform.test.js.map +1 -1
  167. package/dist/cjs/Transform3D/UC/StylusMoveTransformUC.test.js +11 -6
  168. package/dist/cjs/Transform3D/UC/StylusMoveTransformUC.test.js.map +1 -1
  169. package/dist/cjs/Transform3D/UC/TryMoveTransformUC.test.js +3 -1
  170. package/dist/cjs/Transform3D/UC/TryMoveTransformUC.test.js.map +1 -1
  171. package/dist/cjs/Transform3D/UC/TryPanTransformUC.test.js +25 -24
  172. package/dist/cjs/Transform3D/UC/TryPanTransformUC.test.js.map +1 -1
  173. package/dist/cjs/Transparency/UCs/MakeTransparentUC.test.js +10 -8
  174. package/dist/cjs/Transparency/UCs/MakeTransparentUC.test.js.map +1 -1
  175. package/dist/cjs/UndoRedo/Mocks/MockUndoRedo.js +4 -4
  176. package/dist/cjs/UndoRedo/Mocks/MockUndoRedo.js.map +1 -1
  177. package/dist/esm/Babylon/Mocks/MockSceneRayPickUC.js +3 -1
  178. package/dist/esm/Babylon/Mocks/MockSceneRayPickUC.js.map +1 -1
  179. package/dist/esm/Babylon/UC/SceneRayPickUC.test.js +1 -0
  180. package/dist/esm/Babylon/UC/SceneRayPickUC.test.js.map +1 -1
  181. package/dist/esm/BaseApp/UC/EditSlideTextUC.test.js +9 -7
  182. package/dist/esm/BaseApp/UC/EditSlideTextUC.test.js.map +1 -1
  183. package/dist/esm/BaseApp/UC/UndoRedoEditSlideText.test.js +10 -6
  184. package/dist/esm/BaseApp/UC/UndoRedoEditSlideText.test.js.map +1 -1
  185. package/dist/esm/BaseApp/UC/UpdateContentSizeUC.test.js +8 -6
  186. package/dist/esm/BaseApp/UC/UpdateContentSizeUC.test.js.map +1 -1
  187. package/dist/esm/Callouts/UC/CreateCalloutUndoRedo.test.js +7 -4
  188. package/dist/esm/Callouts/UC/CreateCalloutUndoRedo.test.js.map +1 -1
  189. package/dist/esm/Callouts/UC/DeleteAllCalloutsUC.test.js +7 -4
  190. package/dist/esm/Callouts/UC/DeleteAllCalloutsUC.test.js.map +1 -1
  191. package/dist/esm/Callouts/UC/DeleteAllCalloutsUndoRedo.test.js +13 -7
  192. package/dist/esm/Callouts/UC/DeleteAllCalloutsUndoRedo.test.js.map +1 -1
  193. package/dist/esm/Callouts/UC/DeleteCallout.test.js +5 -2
  194. package/dist/esm/Callouts/UC/DeleteCallout.test.js.map +1 -1
  195. package/dist/esm/Callouts/UC/DeleteCalloutUndoRedo.test.js +9 -7
  196. package/dist/esm/Callouts/UC/DeleteCalloutUndoRedo.test.js.map +1 -1
  197. package/dist/esm/Callouts/UC/SetCalloutSizeUC.test.js +7 -5
  198. package/dist/esm/Callouts/UC/SetCalloutSizeUC.test.js.map +1 -1
  199. package/dist/esm/Callouts/UC/SetCalloutSizeUndoRedo.test.js +10 -6
  200. package/dist/esm/Callouts/UC/SetCalloutSizeUndoRedo.test.js.map +1 -1
  201. package/dist/esm/Callouts/UC/TryAddCallout.test.js +5 -4
  202. package/dist/esm/Callouts/UC/TryAddCallout.test.js.map +1 -1
  203. package/dist/esm/Callouts/UC/TryPanLabelUC.test.js +3 -2
  204. package/dist/esm/Callouts/UC/TryPanLabelUC.test.js.map +1 -1
  205. package/dist/esm/Challenge/UCs/SetChallengeUC.test.js +11 -9
  206. package/dist/esm/Challenge/UCs/SetChallengeUC.test.js.map +1 -1
  207. package/dist/esm/ChannelModel/UC/ClearAllColorOverlayUndoRedo.test.js +13 -7
  208. package/dist/esm/ChannelModel/UC/ClearAllColorOverlayUndoRedo.test.js.map +1 -1
  209. package/dist/esm/ChannelModel/UC/ClearModelObjectOverlaysUC.test.js +7 -4
  210. package/dist/esm/ChannelModel/UC/ClearModelObjectOverlaysUC.test.js.map +1 -1
  211. package/dist/esm/ChannelModel/UC/SelectChannelModelUC.test.js +5 -2
  212. package/dist/esm/ChannelModel/UC/SelectChannelModelUC.test.js.map +1 -1
  213. package/dist/esm/ChannelModel/UC/StickAllChannelModelObjectsUC.test.js +10 -8
  214. package/dist/esm/ChannelModel/UC/StickAllChannelModelObjectsUC.test.js.map +1 -1
  215. package/dist/esm/ChannelModel/UC/UnhideAllAppObjectsUndoRedo.test.js +9 -7
  216. package/dist/esm/ChannelModel/UC/UnhideAllAppObjectsUndoRedo.test.js.map +1 -1
  217. package/dist/esm/ChannelModel/UC/UnhideAllChannelModelObjectsUC.test.js +7 -5
  218. package/dist/esm/ChannelModel/UC/UnhideAllChannelModelObjectsUC.test.js.map +1 -1
  219. package/dist/esm/Dispatcher/Mocks/MockDispatchStateChange.js +3 -3
  220. package/dist/esm/Dispatcher/Mocks/MockDispatchStateChange.js.map +1 -1
  221. package/dist/esm/Environment/UCs/SetEnvironmentIntensityUC.test.js +11 -9
  222. package/dist/esm/Environment/UCs/SetEnvironmentIntensityUC.test.js.map +1 -1
  223. package/dist/esm/Environment/UCs/SetTexturalEnvironmentUC.test.js +9 -7
  224. package/dist/esm/Environment/UCs/SetTexturalEnvironmentUC.test.js.map +1 -1
  225. package/dist/esm/Hideable/UCs/HideUC.test.js +10 -8
  226. package/dist/esm/Hideable/UCs/HideUC.test.js.map +1 -1
  227. package/dist/esm/Hideable/UCs/TryHideWithPickUC.test.js +7 -6
  228. package/dist/esm/Hideable/UCs/TryHideWithPickUC.test.js.map +1 -1
  229. package/dist/esm/HoverLabel/UseCases/TryShowHoverLabel.test.js +12 -11
  230. package/dist/esm/HoverLabel/UseCases/TryShowHoverLabel.test.js.map +1 -1
  231. package/dist/esm/Label/UC/ClearCustomLabelUC.test.js +9 -4
  232. package/dist/esm/Label/UC/ClearCustomLabelUC.test.js.map +1 -1
  233. package/dist/esm/Label/UC/ClearCustomLabelUndoRedo.test.js +10 -6
  234. package/dist/esm/Label/UC/ClearCustomLabelUndoRedo.test.js.map +1 -1
  235. package/dist/esm/Label/UC/SetCustomLabelUC.test.js +9 -4
  236. package/dist/esm/Label/UC/SetCustomLabelUC.test.js.map +1 -1
  237. package/dist/esm/Label/UC/SetCustomLabelUndoRedo.test.js +10 -6
  238. package/dist/esm/Label/UC/SetCustomLabelUndoRedo.test.js.map +1 -1
  239. package/dist/esm/LabelDrop/UseCases/DeleteAllLabelDropUC.test.js +9 -7
  240. package/dist/esm/LabelDrop/UseCases/DeleteAllLabelDropUC.test.js.map +1 -1
  241. package/dist/esm/LabelDrop/UseCases/DeleteLabelDropUC.test.js +9 -7
  242. package/dist/esm/LabelDrop/UseCases/DeleteLabelDropUC.test.js.map +1 -1
  243. package/dist/esm/LabelDrop/UseCases/DragLabelDropUC.test.js +8 -6
  244. package/dist/esm/LabelDrop/UseCases/DragLabelDropUC.test.js.map +1 -1
  245. package/dist/esm/LabelDrop/UseCases/DragLabelDropWorldUC.test.js +17 -17
  246. package/dist/esm/LabelDrop/UseCases/DragLabelDropWorldUC.test.js.map +1 -1
  247. package/dist/esm/LabelDrop/UseCases/EditLabelDropUC.test.js +20 -18
  248. package/dist/esm/LabelDrop/UseCases/EditLabelDropUC.test.js.map +1 -1
  249. package/dist/esm/LabelDrop/UseCases/ToggleLabelDropTargetUC.test.js +4 -2
  250. package/dist/esm/LabelDrop/UseCases/ToggleLabelDropTargetUC.test.js.map +1 -1
  251. package/dist/esm/Landmarks/UseCases/AddLandmarkUndoRedo.test.js +10 -5
  252. package/dist/esm/Landmarks/UseCases/AddLandmarkUndoRedo.test.js.map +1 -1
  253. package/dist/esm/Landmarks/UseCases/DeleteAllLandmarksUC.test.js +5 -3
  254. package/dist/esm/Landmarks/UseCases/DeleteAllLandmarksUC.test.js.map +1 -1
  255. package/dist/esm/Landmarks/UseCases/DeleteAllLandmarksUndoRedo.test.js +11 -6
  256. package/dist/esm/Landmarks/UseCases/DeleteAllLandmarksUndoRedo.test.js.map +1 -1
  257. package/dist/esm/Landmarks/UseCases/DeleteLandmarkUC.test.js +10 -5
  258. package/dist/esm/Landmarks/UseCases/DeleteLandmarkUC.test.js.map +1 -1
  259. package/dist/esm/Landmarks/UseCases/DeleteLandmarkUndoRedo.test.js +10 -5
  260. package/dist/esm/Landmarks/UseCases/DeleteLandmarkUndoRedo.test.js.map +1 -1
  261. package/dist/esm/Landmarks/UseCases/SetLandmarkSizeUC.test.js +7 -5
  262. package/dist/esm/Landmarks/UseCases/SetLandmarkSizeUC.test.js.map +1 -1
  263. package/dist/esm/Landmarks/UseCases/SetLandmarkSizeUndoRedo.test.js +10 -6
  264. package/dist/esm/Landmarks/UseCases/SetLandmarkSizeUndoRedo.test.js.map +1 -1
  265. package/dist/esm/Landmarks/UseCases/TryAddNewLandmarkUC.test.js +29 -15
  266. package/dist/esm/Landmarks/UseCases/TryAddNewLandmarkUC.test.js.map +1 -1
  267. package/dist/esm/Landmarks/UseCases/TryPreviewLandmarkUC.test.js +4 -3
  268. package/dist/esm/Landmarks/UseCases/TryPreviewLandmarkUC.test.js.map +1 -1
  269. package/dist/esm/ObjectPick/UseCases/AddCorrectObjectIdUC.test.js +10 -8
  270. package/dist/esm/ObjectPick/UseCases/AddCorrectObjectIdUC.test.js.map +1 -1
  271. package/dist/esm/ObjectPick/UseCases/ClearCorrectObjectIdsUC.test.js +10 -8
  272. package/dist/esm/ObjectPick/UseCases/ClearCorrectObjectIdsUC.test.js.map +1 -1
  273. package/dist/esm/ObjectPick/UseCases/RemoveCorrectObjectIdUC.test.js +10 -8
  274. package/dist/esm/ObjectPick/UseCases/RemoveCorrectObjectIdUC.test.js.map +1 -1
  275. package/dist/esm/ObjectPick/UseCases/TrySelectObjectPickUC.test.js +18 -15
  276. package/dist/esm/ObjectPick/UseCases/TrySelectObjectPickUC.test.js.map +1 -1
  277. package/dist/esm/ObjectPick/UseCases/TrySubmitObjectPickUC.test.js +3 -1
  278. package/dist/esm/ObjectPick/UseCases/TrySubmitObjectPickUC.test.js.map +1 -1
  279. package/dist/esm/OverlayColor/UC/SetOverlayColorUC.test.js +9 -4
  280. package/dist/esm/OverlayColor/UC/SetOverlayColorUC.test.js.map +1 -1
  281. package/dist/esm/OverlayColor/UC/SetOverlayColorUndoRedo.test.js +10 -6
  282. package/dist/esm/OverlayColor/UC/SetOverlayColorUndoRedo.test.js.map +1 -1
  283. package/dist/esm/Question/UC/AddAnswerUndoRedo.test.js +16 -6
  284. package/dist/esm/Question/UC/AddAnswerUndoRedo.test.js.map +1 -1
  285. package/dist/esm/Question/UC/AddQuestionAnswerUC.test.js +14 -5
  286. package/dist/esm/Question/UC/AddQuestionAnswerUC.test.js.map +1 -1
  287. package/dist/esm/Question/UC/DeleteAnswerUndoRedo.test.js +17 -6
  288. package/dist/esm/Question/UC/DeleteAnswerUndoRedo.test.js.map +1 -1
  289. package/dist/esm/Question/UC/DeleteQuestionAnswerUC.test.js +9 -6
  290. package/dist/esm/Question/UC/DeleteQuestionAnswerUC.test.js.map +1 -1
  291. package/dist/esm/Question/UC/SetAnswerFeedbackUC.test.js +9 -6
  292. package/dist/esm/Question/UC/SetAnswerFeedbackUC.test.js.map +1 -1
  293. package/dist/esm/Question/UC/SetAnswerFeedbackUndoRedo.test.js +10 -6
  294. package/dist/esm/Question/UC/SetAnswerFeedbackUndoRedo.test.js.map +1 -1
  295. package/dist/esm/Question/UC/SetAnswerTextUC.test.js +9 -6
  296. package/dist/esm/Question/UC/SetAnswerTextUC.test.js.map +1 -1
  297. package/dist/esm/Question/UC/SetAnswerTextUndoRedo.test.js +10 -6
  298. package/dist/esm/Question/UC/SetAnswerTextUndoRedo.test.js.map +1 -1
  299. package/dist/esm/Question/UC/ToggleIsCorrectUndoRedo.test.js +10 -6
  300. package/dist/esm/Question/UC/ToggleIsCorrectUndoRedo.test.js.map +1 -1
  301. package/dist/esm/Question/UC/ToggleQuestionAnswerIsCorrect.test.js +7 -4
  302. package/dist/esm/Question/UC/ToggleQuestionAnswerIsCorrect.test.js.map +1 -1
  303. package/dist/esm/RequestHandler/UC/SetAppStateUC.test.js +2 -0
  304. package/dist/esm/RequestHandler/UC/SetAppStateUC.test.js.map +1 -1
  305. package/dist/esm/SceneRoot/UC/BumpSceneRootScaleAboutPixelPoint.test.js +7 -4
  306. package/dist/esm/SceneRoot/UC/BumpSceneRootScaleAboutPixelPoint.test.js.map +1 -1
  307. package/dist/esm/SceneRoot/UC/DragScaleSceneRoot.test.js +9 -6
  308. package/dist/esm/SceneRoot/UC/DragScaleSceneRoot.test.js.map +1 -1
  309. package/dist/esm/SceneRoot/UC/OrbitSceneRoot.test.js +16 -7
  310. package/dist/esm/SceneRoot/UC/OrbitSceneRoot.test.js.map +1 -1
  311. package/dist/esm/SceneRoot/UC/PanSceneRoot.test.js +9 -6
  312. package/dist/esm/SceneRoot/UC/PanSceneRoot.test.js.map +1 -1
  313. package/dist/esm/SceneRoot/UC/PinchSceneRoot.test.js +9 -6
  314. package/dist/esm/SceneRoot/UC/PinchSceneRoot.test.js.map +1 -1
  315. package/dist/esm/Selection/UC/HoverAppObjectUC.test.js +3 -3
  316. package/dist/esm/Selection/UC/HoverAppObjectUC.test.js.map +1 -1
  317. package/dist/esm/Selection/UC/PressAppObjectUC.test.js +3 -3
  318. package/dist/esm/Selection/UC/PressAppObjectUC.test.js.map +1 -1
  319. package/dist/esm/Selection/UC/SelectAppObjectUC.test.js +3 -3
  320. package/dist/esm/Selection/UC/SelectAppObjectUC.test.js.map +1 -1
  321. package/dist/esm/Stick/UCs/MoveTransformWithStickUC.test.js +9 -7
  322. package/dist/esm/Stick/UCs/MoveTransformWithStickUC.test.js.map +1 -1
  323. package/dist/esm/Stick/UCs/PanTransformWithStickUC.test.js +13 -11
  324. package/dist/esm/Stick/UCs/PanTransformWithStickUC.test.js.map +1 -1
  325. package/dist/esm/Stick/UCs/StickUC.test.js +9 -7
  326. package/dist/esm/Stick/UCs/StickUC.test.js.map +1 -1
  327. package/dist/esm/Stick/UCs/TryStickAppObjectUC.test.js +7 -6
  328. package/dist/esm/Stick/UCs/TryStickAppObjectUC.test.js.map +1 -1
  329. package/dist/esm/Transform3D/UC/BumpTransformScaleAboutPixelPoint.test.js +5 -3
  330. package/dist/esm/Transform3D/UC/BumpTransformScaleAboutPixelPoint.test.js.map +1 -1
  331. package/dist/esm/Transform3D/UC/MoveTransformUC.test.js +21 -11
  332. package/dist/esm/Transform3D/UC/MoveTransformUC.test.js.map +1 -1
  333. package/dist/esm/Transform3D/UC/MoveTransformUndoRedo.test.js +10 -6
  334. package/dist/esm/Transform3D/UC/MoveTransformUndoRedo.test.js.map +1 -1
  335. package/dist/esm/Transform3D/UC/PanTransformUC.test.js +13 -11
  336. package/dist/esm/Transform3D/UC/PanTransformUC.test.js.map +1 -1
  337. package/dist/esm/Transform3D/UC/PinchTransform.test.js +7 -5
  338. package/dist/esm/Transform3D/UC/PinchTransform.test.js.map +1 -1
  339. package/dist/esm/Transform3D/UC/RayPanScaleTransform.test.js +9 -7
  340. package/dist/esm/Transform3D/UC/RayPanScaleTransform.test.js.map +1 -1
  341. package/dist/esm/Transform3D/UC/ScaleTransform.test.js +22 -18
  342. package/dist/esm/Transform3D/UC/ScaleTransform.test.js.map +1 -1
  343. package/dist/esm/Transform3D/UC/StylusMoveTransformUC.test.js +11 -6
  344. package/dist/esm/Transform3D/UC/StylusMoveTransformUC.test.js.map +1 -1
  345. package/dist/esm/Transform3D/UC/TryMoveTransformUC.test.js +3 -1
  346. package/dist/esm/Transform3D/UC/TryMoveTransformUC.test.js.map +1 -1
  347. package/dist/esm/Transform3D/UC/TryPanTransformUC.test.js +4 -3
  348. package/dist/esm/Transform3D/UC/TryPanTransformUC.test.js.map +1 -1
  349. package/dist/esm/Transparency/UCs/MakeTransparentUC.test.js +10 -8
  350. package/dist/esm/Transparency/UCs/MakeTransparentUC.test.js.map +1 -1
  351. package/dist/esm/UndoRedo/Mocks/MockUndoRedo.js +4 -4
  352. package/dist/esm/UndoRedo/Mocks/MockUndoRedo.js.map +1 -1
  353. package/dist/types/Babylon/Mocks/MockSceneRayPickUC.d.ts +1 -1
  354. package/dist/types/Babylon/Mocks/MockSceneRayPickUC.d.ts.map +1 -1
  355. package/dist/types/Dispatcher/Mocks/MockDispatchStateChange.d.ts +3 -3
  356. package/dist/types/Dispatcher/Mocks/MockDispatchStateChange.d.ts.map +1 -1
  357. package/dist/types/UndoRedo/Mocks/MockUndoRedo.d.ts +4 -4
  358. package/dist/types/UndoRedo/Mocks/MockUndoRedo.d.ts.map +1 -1
  359. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"AddCorrectObjectIdUC.test.js","sourceRoot":"","sources":["../../../../src/ObjectPick/UseCases/AddCorrectObjectIdUC.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,2BAA2B,EAAE,MAAM,gDAAgD,CAAC;AAC7F,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EACL,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,wBAAwB,CAAC;AAEhC,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,iBAAiB,EAAE,CAAC;IACvC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC;IAEhE,MAAM,uBAAuB,GAAG,2BAA2B,CAAC,UAAU,CAAC,CAAC;IACxE,MAAM,UAAU,GAAG,oBAAoB,CAAC,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC;IAC9E,MAAM,IAAI,GAAG,kBAAkB,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;IAChE,MAAM,EAAE,GAAG,wBAAwB,CAAC,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC;IAE1E,MAAM,kBAAkB,GAAG,EAAE,CAAC,kBAAkB,CAAC;IAEjD,OAAO;QACL,UAAU;QACV,kBAAkB;QAClB,uBAAuB;QACvB,UAAU;QACV,EAAE;QACF,WAAW;QACX,IAAI;KACL,CAAC;AACJ,CAAC;AAED,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAC5B,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,GAAG,WAAW,EAAE,CAAC;QAEzC,MAAM,CAAC,oBAAoB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACpC,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,GAAG,WAAW,EAAE,CAAC;QAE1C,MAAM,CAAC,WAAW,CAAC,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC3C,MAAM,EAAE,UAAU,EAAE,kBAAkB,EAAE,GAAG,WAAW,EAAE,CAAC;QAEzD,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAE1B,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACnC,MAAM,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,GAAG,WAAW,EAAE,CAAC;QAEtE,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAE1B,MAAM,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAChE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;QAClC,MAAM,EAAE,UAAU,EAAE,kBAAkB,EAAE,IAAI,EAAE,GAAG,WAAW,EAAE,CAAC;QAE/D,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAE1B,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QAErD,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEhD,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,uBAAuB,EAAE,GAAG,WAAW,EAAE,CAAC;QAE5E,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAC1B,uBAAuB,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;QAE/C,IAAI,CAAC,MAAM,EAAE,CAAC;QACd,MAAM,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC,gBAAgB,EAAE,CAAC;QAE9D,uBAAuB,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;QAC/C,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,MAAM,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAChE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { makeMockDispatchStateChange } from \"../../Dispatcher/Mocks/MockDispatchStateChange\";\r\nimport { makeUndoRedoEntity } from \"../../UndoRedo/Entities/UndoRedoEntity\";\r\nimport { makeObjectPickEntity } from \"../Entities/ObjectPickEntity\";\r\nimport {\r\n makeAddCorrectObjectIdUC,\r\n AddCorrectObjectIdUC,\r\n} from \"./AddCorrectObjectIdUC\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const registerSpy = jest.spyOn(appObjects, \"registerSingleton\");\r\n\r\n const mockDispatchStateChange = makeMockDispatchStateChange(appObjects);\r\n const objectPick = makeObjectPickEntity(appObjects.getOrCreate(\"ObjectPick\"));\r\n const undo = makeUndoRedoEntity(appObjects.getOrCreate(\"Undo\"));\r\n const uc = makeAddCorrectObjectIdUC(appObjects.getOrCreate(\"ObjectPick\"));\r\n\r\n const addCorrectObjectId = uc.addCorrectObjectId;\r\n\r\n return {\r\n objectPick,\r\n addCorrectObjectId,\r\n mockDispatchStateChange,\r\n appObjects,\r\n uc,\r\n registerSpy,\r\n undo,\r\n };\r\n}\r\n\r\ndescribe(\"Add correct object Id UC\", () => {\r\n it(\"Gets the singleton\", () => {\r\n const { appObjects, uc } = makeTestRig();\r\n\r\n expect(AddCorrectObjectIdUC.get(appObjects)).toEqual(uc);\r\n });\r\n\r\n it(\"Registers as the singleton\", () => {\r\n const { registerSpy, uc } = makeTestRig();\r\n\r\n expect(registerSpy).toHaveBeenCalledWith(uc);\r\n });\r\n\r\n it(\"Adds correct object Id the entity\", () => {\r\n const { objectPick, addCorrectObjectId } = makeTestRig();\r\n\r\n addCorrectObjectId(\"id1\");\r\n\r\n expect(objectPick.correctObjectIds.includes(\"id1\")).toEqual(true);\r\n });\r\n\r\n it(\"Dispatches a state change\", () => {\r\n const { addCorrectObjectId, mockDispatchStateChange } = makeTestRig();\r\n\r\n addCorrectObjectId(\"id1\");\r\n\r\n expect(mockDispatchStateChange.doDispatch).toHaveBeenCalled();\r\n });\r\n\r\n it(\"Is undoable and redoable\", () => {\r\n const { objectPick, addCorrectObjectId, undo } = makeTestRig();\r\n\r\n addCorrectObjectId(\"id1\");\r\n\r\n expect(objectPick.correctObjectIds).toEqual([\"id1\"]);\r\n\r\n undo.doUndo();\r\n\r\n expect(objectPick.correctObjectIds).toEqual([]);\r\n\r\n undo.doRedo();\r\n\r\n expect(objectPick.correctObjectIds).toEqual([\"id1\"]);\r\n });\r\n\r\n it(\"Undo and redo dispatch a state change\", () => {\r\n const { addCorrectObjectId, undo, mockDispatchStateChange } = makeTestRig();\r\n\r\n addCorrectObjectId(\"id1\");\r\n mockDispatchStateChange.doDispatch.mockClear();\r\n\r\n undo.doUndo();\r\n expect(mockDispatchStateChange.doDispatch).toHaveBeenCalled();\r\n\r\n mockDispatchStateChange.doDispatch.mockClear();\r\n undo.doRedo();\r\n\r\n expect(mockDispatchStateChange.doDispatch).toHaveBeenCalled();\r\n });\r\n});\r\n"]}
1
+ {"version":3,"file":"AddCorrectObjectIdUC.test.js","sourceRoot":"","sources":["../../../../src/ObjectPick/UseCases/AddCorrectObjectIdUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { makeMockDispatchStateChange } from \"../../Dispatcher/Mocks/MockDispatchStateChange\";\r\nimport { makeUndoRedoEntity } from \"../../UndoRedo/Entities/UndoRedoEntity\";\r\nimport { makeObjectPickEntity } from \"../Entities/ObjectPickEntity\";\r\nimport {\r\n makeAddCorrectObjectIdUC,\r\n AddCorrectObjectIdUC,\r\n} from \"./AddCorrectObjectIdUC\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const registerSpy = jest.spyOn(appObjects, \"registerSingleton\");\r\n\r\n const mockDispatchStateChange = makeMockDispatchStateChange(appObjects);\r\n const doDispatchMock = jest.fn();\r\n mockDispatchStateChange.doDispatch = doDispatchMock;\r\n\r\n const objectPick = makeObjectPickEntity(appObjects.getOrCreate(\"ObjectPick\"));\r\n const undo = makeUndoRedoEntity(appObjects.getOrCreate(\"Undo\"));\r\n const uc = makeAddCorrectObjectIdUC(appObjects.getOrCreate(\"ObjectPick\"));\r\n\r\n const addCorrectObjectId = uc.addCorrectObjectId;\r\n\r\n return {\r\n objectPick,\r\n addCorrectObjectId,\r\n doDispatchMock,\r\n appObjects,\r\n uc,\r\n registerSpy,\r\n undo,\r\n };\r\n}\r\n\r\ndescribe(\"Add correct object Id UC\", () => {\r\n it(\"Gets the singleton\", () => {\r\n const { appObjects, uc } = makeTestRig();\r\n\r\n expect(AddCorrectObjectIdUC.get(appObjects)).toEqual(uc);\r\n });\r\n\r\n it(\"Registers as the singleton\", () => {\r\n const { registerSpy, uc } = makeTestRig();\r\n\r\n expect(registerSpy).toHaveBeenCalledWith(uc);\r\n });\r\n\r\n it(\"Adds correct object Id the entity\", () => {\r\n const { objectPick, addCorrectObjectId } = makeTestRig();\r\n\r\n addCorrectObjectId(\"id1\");\r\n\r\n expect(objectPick.correctObjectIds.includes(\"id1\")).toEqual(true);\r\n });\r\n\r\n it(\"Dispatches a state change\", () => {\r\n const { addCorrectObjectId, doDispatchMock } = makeTestRig();\r\n\r\n addCorrectObjectId(\"id1\");\r\n\r\n expect(doDispatchMock).toHaveBeenCalled();\r\n });\r\n\r\n it(\"Is undoable and redoable\", () => {\r\n const { objectPick, addCorrectObjectId, undo } = makeTestRig();\r\n\r\n addCorrectObjectId(\"id1\");\r\n\r\n expect(objectPick.correctObjectIds).toEqual([\"id1\"]);\r\n\r\n undo.doUndo();\r\n\r\n expect(objectPick.correctObjectIds).toEqual([]);\r\n\r\n undo.doRedo();\r\n\r\n expect(objectPick.correctObjectIds).toEqual([\"id1\"]);\r\n });\r\n\r\n it(\"Undo and redo dispatch a state change\", () => {\r\n const { addCorrectObjectId, undo, doDispatchMock } = makeTestRig();\r\n\r\n addCorrectObjectId(\"id1\");\r\n doDispatchMock.mockClear();\r\n\r\n undo.doUndo();\r\n expect(doDispatchMock).toHaveBeenCalled();\r\n\r\n doDispatchMock.mockClear();\r\n undo.doRedo();\r\n\r\n expect(doDispatchMock).toHaveBeenCalled();\r\n });\r\n});\r\n"]}
@@ -7,6 +7,8 @@ function makeTestRig() {
7
7
  const appObjects = makeAppObjectRepo();
8
8
  const registerSpy = jest.spyOn(appObjects, "registerSingleton");
9
9
  const mockDispatchStateChange = makeMockDispatchStateChange(appObjects);
10
+ const doDispatchMock = jest.fn();
11
+ mockDispatchStateChange.doDispatch = doDispatchMock;
10
12
  const undo = makeUndoRedoEntity(appObjects.getOrCreate("Undo"));
11
13
  const objectPick = makeObjectPickEntity(appObjects.getOrCreate("ObjectPick"));
12
14
  const uc = makeClearCorrectObjectIdsUC(appObjects.getOrCreate("ObjectPick"));
@@ -16,7 +18,7 @@ function makeTestRig() {
16
18
  return {
17
19
  objectPick,
18
20
  clearCorrectObjectIds,
19
- mockDispatchStateChange,
21
+ doDispatchMock,
20
22
  registerSpy,
21
23
  appObjects,
22
24
  uc,
@@ -39,9 +41,9 @@ describe("Clear correct object Id UC", () => {
39
41
  expect(objectPick.correctObjectIds.length).toEqual(0);
40
42
  });
41
43
  it("Dispatches a state change", () => {
42
- const { clearCorrectObjectIds, mockDispatchStateChange } = makeTestRig();
44
+ const { clearCorrectObjectIds, doDispatchMock } = makeTestRig();
43
45
  clearCorrectObjectIds();
44
- expect(mockDispatchStateChange.doDispatch).toHaveBeenCalled();
46
+ expect(doDispatchMock).toHaveBeenCalled();
45
47
  });
46
48
  it("Is undoable and redoable", () => {
47
49
  const { objectPick, clearCorrectObjectIds, undo } = makeTestRig();
@@ -54,14 +56,14 @@ describe("Clear correct object Id UC", () => {
54
56
  expect(objectPick.correctObjectIds).toEqual([]);
55
57
  });
56
58
  it("Undo and redo dispatch a state change", () => {
57
- const { clearCorrectObjectIds, undo, mockDispatchStateChange } = makeTestRig();
59
+ const { clearCorrectObjectIds, undo, doDispatchMock } = makeTestRig();
58
60
  clearCorrectObjectIds();
59
- mockDispatchStateChange.doDispatch.mockClear();
61
+ doDispatchMock.mockClear();
60
62
  undo.doUndo();
61
- expect(mockDispatchStateChange.doDispatch).toHaveBeenCalled();
62
- mockDispatchStateChange.doDispatch.mockClear();
63
+ expect(doDispatchMock).toHaveBeenCalled();
64
+ doDispatchMock.mockClear();
63
65
  undo.doRedo();
64
- expect(mockDispatchStateChange.doDispatch).toHaveBeenCalled();
66
+ expect(doDispatchMock).toHaveBeenCalled();
65
67
  });
66
68
  });
67
69
  //# sourceMappingURL=ClearCorrectObjectIdsUC.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ClearCorrectObjectIdsUC.test.js","sourceRoot":"","sources":["../../../../src/ObjectPick/UseCases/ClearCorrectObjectIdsUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { makeMockDispatchStateChange } from \"../../Dispatcher/Mocks/MockDispatchStateChange\";\r\nimport { makeUndoRedoEntity } from \"../../UndoRedo/Entities/UndoRedoEntity\";\r\nimport { makeObjectPickEntity } from \"../Entities/ObjectPickEntity\";\r\nimport {\r\n makeClearCorrectObjectIdsUC,\r\n ClearCorrectObjectIdsUC,\r\n} from \"./ClearCorrectObjectIdsUC\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const registerSpy = jest.spyOn(appObjects, \"registerSingleton\");\r\n\r\n const mockDispatchStateChange = makeMockDispatchStateChange(appObjects);\r\n\r\n const undo = makeUndoRedoEntity(appObjects.getOrCreate(\"Undo\"));\r\n\r\n const objectPick = makeObjectPickEntity(appObjects.getOrCreate(\"ObjectPick\"));\r\n\r\n const uc = makeClearCorrectObjectIdsUC(appObjects.getOrCreate(\"ObjectPick\"));\r\n\r\n const clearCorrectObjectIds = uc.clearCorrectObjectIds;\r\n\r\n objectPick.addCorrectObjectId(\"id1\");\r\n objectPick.addCorrectObjectId(\"id2\");\r\n\r\n return {\r\n objectPick,\r\n clearCorrectObjectIds,\r\n mockDispatchStateChange,\r\n registerSpy,\r\n appObjects,\r\n uc,\r\n undo,\r\n };\r\n}\r\n\r\ndescribe(\"Clear correct object Id UC\", () => {\r\n it(\"Gets the singleton\", () => {\r\n const { appObjects, uc } = makeTestRig();\r\n\r\n expect(ClearCorrectObjectIdsUC.get(appObjects)).toEqual(uc);\r\n });\r\n\r\n it(\"Registers as the singleton\", () => {\r\n const { registerSpy, uc } = makeTestRig();\r\n\r\n expect(registerSpy).toHaveBeenCalledWith(uc);\r\n });\r\n it(\"Clears correct object Id the entity\", () => {\r\n const { objectPick, clearCorrectObjectIds } = makeTestRig();\r\n\r\n expect(objectPick.correctObjectIds.length).toEqual(2);\r\n clearCorrectObjectIds();\r\n\r\n expect(objectPick.correctObjectIds.length).toEqual(0);\r\n });\r\n\r\n it(\"Dispatches a state change\", () => {\r\n const { clearCorrectObjectIds, mockDispatchStateChange } = makeTestRig();\r\n\r\n clearCorrectObjectIds();\r\n\r\n expect(mockDispatchStateChange.doDispatch).toHaveBeenCalled();\r\n });\r\n\r\n it(\"Is undoable and redoable\", () => {\r\n const { objectPick, clearCorrectObjectIds, undo } = makeTestRig();\r\n\r\n expect(objectPick.correctObjectIds).toEqual([\"id1\", \"id2\"]);\r\n\r\n clearCorrectObjectIds();\r\n\r\n expect(objectPick.correctObjectIds).toEqual([]);\r\n\r\n undo.doUndo();\r\n\r\n expect(objectPick.correctObjectIds).toEqual([\"id1\", \"id2\"]);\r\n\r\n undo.doRedo();\r\n\r\n expect(objectPick.correctObjectIds).toEqual([]);\r\n });\r\n\r\n it(\"Undo and redo dispatch a state change\", () => {\r\n const { clearCorrectObjectIds, undo, mockDispatchStateChange } =\r\n makeTestRig();\r\n\r\n clearCorrectObjectIds();\r\n mockDispatchStateChange.doDispatch.mockClear();\r\n\r\n undo.doUndo();\r\n expect(mockDispatchStateChange.doDispatch).toHaveBeenCalled();\r\n\r\n mockDispatchStateChange.doDispatch.mockClear();\r\n undo.doRedo();\r\n\r\n expect(mockDispatchStateChange.doDispatch).toHaveBeenCalled();\r\n });\r\n});\r\n"]}
1
+ {"version":3,"file":"ClearCorrectObjectIdsUC.test.js","sourceRoot":"","sources":["../../../../src/ObjectPick/UseCases/ClearCorrectObjectIdsUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { makeMockDispatchStateChange } from \"../../Dispatcher/Mocks/MockDispatchStateChange\";\r\nimport { makeUndoRedoEntity } from \"../../UndoRedo/Entities/UndoRedoEntity\";\r\nimport { makeObjectPickEntity } from \"../Entities/ObjectPickEntity\";\r\nimport {\r\n makeClearCorrectObjectIdsUC,\r\n ClearCorrectObjectIdsUC,\r\n} from \"./ClearCorrectObjectIdsUC\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const registerSpy = jest.spyOn(appObjects, \"registerSingleton\");\r\n\r\n const mockDispatchStateChange = makeMockDispatchStateChange(appObjects);\r\n const doDispatchMock = jest.fn();\r\n mockDispatchStateChange.doDispatch = doDispatchMock;\r\n\r\n const undo = makeUndoRedoEntity(appObjects.getOrCreate(\"Undo\"));\r\n\r\n const objectPick = makeObjectPickEntity(appObjects.getOrCreate(\"ObjectPick\"));\r\n\r\n const uc = makeClearCorrectObjectIdsUC(appObjects.getOrCreate(\"ObjectPick\"));\r\n\r\n const clearCorrectObjectIds = uc.clearCorrectObjectIds;\r\n\r\n objectPick.addCorrectObjectId(\"id1\");\r\n objectPick.addCorrectObjectId(\"id2\");\r\n\r\n return {\r\n objectPick,\r\n clearCorrectObjectIds,\r\n doDispatchMock,\r\n registerSpy,\r\n appObjects,\r\n uc,\r\n undo,\r\n };\r\n}\r\n\r\ndescribe(\"Clear correct object Id UC\", () => {\r\n it(\"Gets the singleton\", () => {\r\n const { appObjects, uc } = makeTestRig();\r\n\r\n expect(ClearCorrectObjectIdsUC.get(appObjects)).toEqual(uc);\r\n });\r\n\r\n it(\"Registers as the singleton\", () => {\r\n const { registerSpy, uc } = makeTestRig();\r\n\r\n expect(registerSpy).toHaveBeenCalledWith(uc);\r\n });\r\n it(\"Clears correct object Id the entity\", () => {\r\n const { objectPick, clearCorrectObjectIds } = makeTestRig();\r\n\r\n expect(objectPick.correctObjectIds.length).toEqual(2);\r\n clearCorrectObjectIds();\r\n\r\n expect(objectPick.correctObjectIds.length).toEqual(0);\r\n });\r\n\r\n it(\"Dispatches a state change\", () => {\r\n const { clearCorrectObjectIds, doDispatchMock } = makeTestRig();\r\n\r\n clearCorrectObjectIds();\r\n\r\n expect(doDispatchMock).toHaveBeenCalled();\r\n });\r\n\r\n it(\"Is undoable and redoable\", () => {\r\n const { objectPick, clearCorrectObjectIds, undo } = makeTestRig();\r\n\r\n expect(objectPick.correctObjectIds).toEqual([\"id1\", \"id2\"]);\r\n\r\n clearCorrectObjectIds();\r\n\r\n expect(objectPick.correctObjectIds).toEqual([]);\r\n\r\n undo.doUndo();\r\n\r\n expect(objectPick.correctObjectIds).toEqual([\"id1\", \"id2\"]);\r\n\r\n undo.doRedo();\r\n\r\n expect(objectPick.correctObjectIds).toEqual([]);\r\n });\r\n\r\n it(\"Undo and redo dispatch a state change\", () => {\r\n const { clearCorrectObjectIds, undo, doDispatchMock } = makeTestRig();\r\n\r\n clearCorrectObjectIds();\r\n doDispatchMock.mockClear();\r\n\r\n undo.doUndo();\r\n expect(doDispatchMock).toHaveBeenCalled();\r\n\r\n doDispatchMock.mockClear();\r\n undo.doRedo();\r\n\r\n expect(doDispatchMock).toHaveBeenCalled();\r\n });\r\n});\r\n"]}
@@ -7,6 +7,8 @@ function makeTestRig() {
7
7
  const appObjects = makeAppObjectRepo();
8
8
  const registerSpy = jest.spyOn(appObjects, "registerSingleton");
9
9
  const mockDispatchStateChange = makeMockDispatchStateChange(appObjects);
10
+ const doDispatchMock = jest.fn();
11
+ mockDispatchStateChange.doDispatch = doDispatchMock;
10
12
  const undo = makeUndoRedoEntity(appObjects.getOrCreate("Undo"));
11
13
  const objectPick = makeObjectPickEntity(appObjects.getOrCreate("ObjectPick"));
12
14
  const uc = makeRemoveCorrectObjectIdUC(appObjects.getOrCreate("ObjectPick"));
@@ -15,7 +17,7 @@ function makeTestRig() {
15
17
  return {
16
18
  objectPick,
17
19
  removeCorrectObjectId,
18
- mockDispatchStateChange,
20
+ doDispatchMock,
19
21
  undo,
20
22
  registerSpy,
21
23
  appObjects,
@@ -38,9 +40,9 @@ describe("Remove correct object Id UC", () => {
38
40
  expect(objectPick.correctObjectIds.includes("id1")).toEqual(false);
39
41
  });
40
42
  it("Dispatches a state change if authoring", () => {
41
- const { removeCorrectObjectId, mockDispatchStateChange } = makeTestRig();
43
+ const { removeCorrectObjectId, doDispatchMock } = makeTestRig();
42
44
  removeCorrectObjectId("id1");
43
- expect(mockDispatchStateChange.doDispatch).toHaveBeenCalled();
45
+ expect(doDispatchMock).toHaveBeenCalled();
44
46
  });
45
47
  it("Is undoable and redoable", () => {
46
48
  const { objectPick, removeCorrectObjectId, undo } = makeTestRig();
@@ -52,14 +54,14 @@ describe("Remove correct object Id UC", () => {
52
54
  expect(objectPick.correctObjectIds).toEqual([]);
53
55
  });
54
56
  it("Undo and redo dispatch a state change", () => {
55
- const { removeCorrectObjectId, undo, mockDispatchStateChange } = makeTestRig();
57
+ const { removeCorrectObjectId, undo, doDispatchMock } = makeTestRig();
56
58
  removeCorrectObjectId("id1");
57
- mockDispatchStateChange.doDispatch.mockClear();
59
+ doDispatchMock.mockClear();
58
60
  undo.doUndo();
59
- expect(mockDispatchStateChange.doDispatch).toHaveBeenCalled();
60
- mockDispatchStateChange.doDispatch.mockClear();
61
+ expect(doDispatchMock).toHaveBeenCalled();
62
+ doDispatchMock.mockClear();
61
63
  undo.doRedo();
62
- expect(mockDispatchStateChange.doDispatch).toHaveBeenCalled();
64
+ expect(doDispatchMock).toHaveBeenCalled();
63
65
  });
64
66
  });
65
67
  //# sourceMappingURL=RemoveCorrectObjectIdUC.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RemoveCorrectObjectIdUC.test.js","sourceRoot":"","sources":["../../../../src/ObjectPick/UseCases/RemoveCorrectObjectIdUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { makeMockDispatchStateChange } from \"../../Dispatcher/Mocks/MockDispatchStateChange\";\r\nimport { makeUndoRedoEntity } from \"../../UndoRedo/Entities/UndoRedoEntity\";\r\nimport { makeObjectPickEntity } from \"../Entities/ObjectPickEntity\";\r\nimport {\r\n makeRemoveCorrectObjectIdUC,\r\n RemoveCorrectObjectIdUC,\r\n} from \"./RemoveCorrectObjectIdUC\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const registerSpy = jest.spyOn(appObjects, \"registerSingleton\");\r\n const mockDispatchStateChange = makeMockDispatchStateChange(appObjects);\r\n\r\n const undo = makeUndoRedoEntity(appObjects.getOrCreate(\"Undo\"));\r\n\r\n const objectPick = makeObjectPickEntity(appObjects.getOrCreate(\"ObjectPick\"));\r\n\r\n const uc = makeRemoveCorrectObjectIdUC(appObjects.getOrCreate(\"ObjectPick\"));\r\n const removeCorrectObjectId = uc.removeCorrectObjectId;\r\n\r\n objectPick.addCorrectObjectId(\"id1\");\r\n\r\n return {\r\n objectPick,\r\n removeCorrectObjectId,\r\n mockDispatchStateChange,\r\n undo,\r\n registerSpy,\r\n appObjects,\r\n uc,\r\n };\r\n}\r\n\r\ndescribe(\"Remove correct object Id UC\", () => {\r\n it(\"Gets the singleton\", () => {\r\n const { appObjects, uc } = makeTestRig();\r\n\r\n expect(RemoveCorrectObjectIdUC.get(appObjects)).toEqual(uc);\r\n });\r\n\r\n it(\"Registers as the singleton\", () => {\r\n const { registerSpy, uc } = makeTestRig();\r\n\r\n expect(registerSpy).toHaveBeenCalledWith(uc);\r\n });\r\n\r\n it(\"Removes correct object Id the entity\", () => {\r\n const { objectPick, removeCorrectObjectId } = makeTestRig();\r\n\r\n expect(objectPick.correctObjectIds.includes(\"id1\")).toEqual(true);\r\n removeCorrectObjectId(\"id1\");\r\n\r\n expect(objectPick.correctObjectIds.includes(\"id1\")).toEqual(false);\r\n });\r\n\r\n it(\"Dispatches a state change if authoring\", () => {\r\n const { removeCorrectObjectId, mockDispatchStateChange } = makeTestRig();\r\n\r\n removeCorrectObjectId(\"id1\");\r\n\r\n expect(mockDispatchStateChange.doDispatch).toHaveBeenCalled();\r\n });\r\n\r\n it(\"Is undoable and redoable\", () => {\r\n const { objectPick, removeCorrectObjectId, undo } = makeTestRig();\r\n\r\n removeCorrectObjectId(\"id1\");\r\n expect(objectPick.correctObjectIds).toEqual([]);\r\n\r\n undo.doUndo();\r\n\r\n expect(objectPick.correctObjectIds).toEqual([\"id1\"]);\r\n\r\n undo.doRedo();\r\n\r\n expect(objectPick.correctObjectIds).toEqual([]);\r\n });\r\n\r\n it(\"Undo and redo dispatch a state change\", () => {\r\n const { removeCorrectObjectId, undo, mockDispatchStateChange } =\r\n makeTestRig();\r\n\r\n removeCorrectObjectId(\"id1\");\r\n mockDispatchStateChange.doDispatch.mockClear();\r\n\r\n undo.doUndo();\r\n expect(mockDispatchStateChange.doDispatch).toHaveBeenCalled();\r\n\r\n mockDispatchStateChange.doDispatch.mockClear();\r\n undo.doRedo();\r\n\r\n expect(mockDispatchStateChange.doDispatch).toHaveBeenCalled();\r\n });\r\n});\r\n"]}
1
+ {"version":3,"file":"RemoveCorrectObjectIdUC.test.js","sourceRoot":"","sources":["../../../../src/ObjectPick/UseCases/RemoveCorrectObjectIdUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { makeMockDispatchStateChange } from \"../../Dispatcher/Mocks/MockDispatchStateChange\";\r\nimport { makeUndoRedoEntity } from \"../../UndoRedo/Entities/UndoRedoEntity\";\r\nimport { makeObjectPickEntity } from \"../Entities/ObjectPickEntity\";\r\nimport {\r\n makeRemoveCorrectObjectIdUC,\r\n RemoveCorrectObjectIdUC,\r\n} from \"./RemoveCorrectObjectIdUC\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const registerSpy = jest.spyOn(appObjects, \"registerSingleton\");\r\n const mockDispatchStateChange = makeMockDispatchStateChange(appObjects);\r\n const doDispatchMock = jest.fn();\r\n mockDispatchStateChange.doDispatch = doDispatchMock;\r\n\r\n const undo = makeUndoRedoEntity(appObjects.getOrCreate(\"Undo\"));\r\n\r\n const objectPick = makeObjectPickEntity(appObjects.getOrCreate(\"ObjectPick\"));\r\n\r\n const uc = makeRemoveCorrectObjectIdUC(appObjects.getOrCreate(\"ObjectPick\"));\r\n const removeCorrectObjectId = uc.removeCorrectObjectId;\r\n\r\n objectPick.addCorrectObjectId(\"id1\");\r\n\r\n return {\r\n objectPick,\r\n removeCorrectObjectId,\r\n doDispatchMock,\r\n undo,\r\n registerSpy,\r\n appObjects,\r\n uc,\r\n };\r\n}\r\n\r\ndescribe(\"Remove correct object Id UC\", () => {\r\n it(\"Gets the singleton\", () => {\r\n const { appObjects, uc } = makeTestRig();\r\n\r\n expect(RemoveCorrectObjectIdUC.get(appObjects)).toEqual(uc);\r\n });\r\n\r\n it(\"Registers as the singleton\", () => {\r\n const { registerSpy, uc } = makeTestRig();\r\n\r\n expect(registerSpy).toHaveBeenCalledWith(uc);\r\n });\r\n\r\n it(\"Removes correct object Id the entity\", () => {\r\n const { objectPick, removeCorrectObjectId } = makeTestRig();\r\n\r\n expect(objectPick.correctObjectIds.includes(\"id1\")).toEqual(true);\r\n removeCorrectObjectId(\"id1\");\r\n\r\n expect(objectPick.correctObjectIds.includes(\"id1\")).toEqual(false);\r\n });\r\n\r\n it(\"Dispatches a state change if authoring\", () => {\r\n const { removeCorrectObjectId, doDispatchMock } = makeTestRig();\r\n\r\n removeCorrectObjectId(\"id1\");\r\n\r\n expect(doDispatchMock).toHaveBeenCalled();\r\n });\r\n\r\n it(\"Is undoable and redoable\", () => {\r\n const { objectPick, removeCorrectObjectId, undo } = makeTestRig();\r\n\r\n removeCorrectObjectId(\"id1\");\r\n expect(objectPick.correctObjectIds).toEqual([]);\r\n\r\n undo.doUndo();\r\n\r\n expect(objectPick.correctObjectIds).toEqual([\"id1\"]);\r\n\r\n undo.doRedo();\r\n\r\n expect(objectPick.correctObjectIds).toEqual([]);\r\n });\r\n\r\n it(\"Undo and redo dispatch a state change\", () => {\r\n const { removeCorrectObjectId, undo, doDispatchMock } = makeTestRig();\r\n\r\n removeCorrectObjectId(\"id1\");\r\n doDispatchMock.mockClear();\r\n\r\n undo.doUndo();\r\n expect(doDispatchMock).toHaveBeenCalled();\r\n\r\n doDispatchMock.mockClear();\r\n undo.doRedo();\r\n\r\n expect(doDispatchMock).toHaveBeenCalled();\r\n });\r\n});\r\n"]}
@@ -10,6 +10,8 @@ import { makeTrySelectObjectPickUC, TrySelectObjectPickUC, } from "./TrySelectOb
10
10
  function makeTestRig() {
11
11
  const appObjects = makeAppObjectRepo();
12
12
  const mockDispatchStateChange = makeMockDispatchStateChange(appObjects);
13
+ const doDispatchMock = jest.fn();
14
+ mockDispatchStateChange.doDispatch = doDispatchMock;
13
15
  const baseApp = makeBaseAppState(appObjects.getOrCreate("App"));
14
16
  const undo = makeUndoRedoEntity(appObjects.getOrCreate("Undo"));
15
17
  const challenge = makeChallengeEntityMock(appObjects);
@@ -17,23 +19,24 @@ function makeTestRig() {
17
19
  baseApp.isAuthoring = true;
18
20
  objectPick.isSelectingCorrectObjects = true;
19
21
  challenge.selectedChallenge = "OBJECT_PICK";
20
- const mockPickUC = makeMockSceneRayPickUC(appObjects);
21
22
  const mockPickResult = {
22
23
  hit: true,
23
24
  appObjectID: "sceneObject",
24
25
  };
25
- mockPickUC.sceneRayPick.mockReturnValue(mockPickResult);
26
+ const mockRayPick = makeMockSceneRayPickUC(appObjects);
27
+ const mockPick = jest.fn().mockReturnValue(mockPickResult);
28
+ mockRayPick.sceneRayPick = mockPick;
26
29
  const mockPixelToRay = makeMockPixelToSceneRayUC(appObjects);
27
30
  const uc = makeTrySelectObjectPickUC(appObjects.getOrCreate("ObjectPick"));
28
31
  return {
29
32
  objectPick,
30
33
  uc,
31
34
  baseApp,
32
- mockDispatchStateChange,
35
+ doDispatchMock,
33
36
  appObjects,
34
37
  mockPixelToRay,
35
38
  undo,
36
- mockPickUC,
39
+ mockPick,
37
40
  };
38
41
  }
39
42
  describe("Try Select Object Pick Use Case", () => {
@@ -57,32 +60,32 @@ describe("Try Select Object Pick Use Case", () => {
57
60
  expect(spy).toHaveBeenCalledWith("sceneObject");
58
61
  });
59
62
  it("Does not add when the pick does not hit", () => {
60
- const { uc, mockPickUC, objectPick } = makeTestRig();
63
+ const { uc, mockPick, objectPick } = makeTestRig();
61
64
  const mockPickResult = {
62
65
  hit: false,
63
66
  };
64
- mockPickUC.sceneRayPick.mockReturnValue(mockPickResult);
67
+ mockPick.mockReturnValue(mockPickResult);
65
68
  mockPickResult.hit = false;
66
69
  const spy = jest.spyOn(objectPick, "addCorrectObjectId");
67
70
  uc.tryWithRay(ParametricLine.Forward());
68
71
  expect(spy).not.toHaveBeenCalled();
69
72
  });
70
73
  it("Does not add when the pick does not an app object", () => {
71
- const { uc, mockPickUC, objectPick } = makeTestRig();
74
+ const { uc, mockPick, objectPick } = makeTestRig();
72
75
  const mockPickResult = {
73
76
  hit: true,
74
77
  appObjectID: undefined,
75
78
  };
76
- mockPickUC.sceneRayPick.mockReturnValue(mockPickResult);
79
+ mockPick.mockReturnValue(mockPickResult);
77
80
  mockPickResult.hit = false;
78
81
  const spy = jest.spyOn(objectPick, "addCorrectObjectId");
79
82
  uc.tryWithRay(ParametricLine.Forward());
80
83
  expect(spy).not.toHaveBeenCalled();
81
84
  });
82
85
  it("Dispatches a state change", () => {
83
- const { uc, mockDispatchStateChange } = makeTestRig();
86
+ const { uc, doDispatchMock } = makeTestRig();
84
87
  uc.tryWithRay(ParametricLine.Forward());
85
- expect(mockDispatchStateChange.doDispatch).toHaveBeenCalled();
88
+ expect(doDispatchMock).toHaveBeenCalled();
86
89
  });
87
90
  it("Is undoable and redoable", () => {
88
91
  const { uc, undo, objectPick } = makeTestRig();
@@ -94,14 +97,14 @@ describe("Try Select Object Pick Use Case", () => {
94
97
  expect(objectPick.correctObjectIds).toEqual(["sceneObject"]);
95
98
  });
96
99
  it("Undo and redo dispatch a state change", () => {
97
- const { uc, undo, mockDispatchStateChange } = makeTestRig();
100
+ const { uc, undo, doDispatchMock } = makeTestRig();
98
101
  uc.tryWithRay(ParametricLine.Forward());
99
- mockDispatchStateChange.doDispatch.mockClear();
102
+ doDispatchMock.mockClear();
100
103
  undo.doUndo();
101
- expect(mockDispatchStateChange.doDispatch).toHaveBeenCalled();
102
- mockDispatchStateChange.doDispatch.mockClear();
104
+ expect(doDispatchMock).toHaveBeenCalled();
105
+ doDispatchMock.mockClear();
103
106
  undo.doRedo();
104
- expect(mockDispatchStateChange.doDispatch).toHaveBeenCalled();
107
+ expect(doDispatchMock).toHaveBeenCalled();
105
108
  });
106
109
  });
107
110
  //# sourceMappingURL=TrySelectObjectPickUC.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TrySelectObjectPickUC.test.js","sourceRoot":"","sources":["../../../../src/ObjectPick/UseCases/TrySelectObjectPickUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { ParametricLine, Vector2, Vector3 } from \"@vived/core\";\r\nimport { makeBaseAppState } from \"../../BaseApp/Entity/BaseAppState\";\r\nimport {\r\n makeMockPixelToSceneRayUC,\r\n makeMockSceneRayPickUC,\r\n} from \"../../Babylon/Mocks\";\r\nimport { SceneRayPick } from \"../../Babylon/UC/SceneRayPickUC\";\r\nimport { makeChallengeEntityMock } from \"../../Challenge/Mocks/ChallengeEntityMock\";\r\nimport { makeMockDispatchStateChange } from \"../../Dispatcher/Mocks/MockDispatchStateChange\";\r\nimport { makeUndoRedoEntity } from \"../../UndoRedo/Entities/UndoRedoEntity\";\r\nimport { makeObjectPickEntity } from \"../Entities/ObjectPickEntity\";\r\nimport {\r\n makeTrySelectObjectPickUC,\r\n TrySelectObjectPickUC,\r\n} from \"./TrySelectObjectPickUC\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const mockDispatchStateChange = makeMockDispatchStateChange(appObjects);\r\n\r\n const baseApp = makeBaseAppState(appObjects.getOrCreate(\"App\"));\r\n const undo = makeUndoRedoEntity(appObjects.getOrCreate(\"Undo\"));\r\n const challenge = makeChallengeEntityMock(appObjects);\r\n\r\n const objectPick = makeObjectPickEntity(appObjects.getOrCreate(\"ObjectPick\"));\r\n\r\n baseApp.isAuthoring = true;\r\n objectPick.isSelectingCorrectObjects = true;\r\n challenge.selectedChallenge = \"OBJECT_PICK\";\r\n\r\n const mockPickUC = makeMockSceneRayPickUC(appObjects);\r\n\r\n const mockPickResult: SceneRayPick = {\r\n hit: true,\r\n appObjectID: \"sceneObject\",\r\n };\r\n mockPickUC.sceneRayPick.mockReturnValue(mockPickResult);\r\n\r\n const mockPixelToRay = makeMockPixelToSceneRayUC(appObjects);\r\n\r\n const uc = makeTrySelectObjectPickUC(appObjects.getOrCreate(\"ObjectPick\"));\r\n\r\n return {\r\n objectPick,\r\n uc,\r\n baseApp,\r\n mockDispatchStateChange,\r\n appObjects,\r\n mockPixelToRay,\r\n undo,\r\n mockPickUC,\r\n };\r\n}\r\n\r\ndescribe(\"Try Select Object Pick Use Case\", () => {\r\n it(\"Gets the singleton\", () => {\r\n const { appObjects, uc } = makeTestRig();\r\n\r\n expect(TrySelectObjectPickUC.get(appObjects)).toEqual(uc);\r\n });\r\n\r\n it(\"Forms the pixel into a ray and passed it to the try with ray\", () => {\r\n const { mockPixelToRay, uc } = makeTestRig();\r\n\r\n const mockRay = ParametricLine.FromTwoPoint(\r\n new Vector3(1, 2, 3),\r\n new Vector3(4, 5, 6)\r\n );\r\n mockPixelToRay.pixelToSceneRay.mockReturnValue(mockRay);\r\n\r\n uc.tryWithRay = jest.fn();\r\n\r\n uc.tryWithPixel(new Vector2(7, 8));\r\n\r\n expect(mockPixelToRay.pixelToSceneRay).toHaveBeenCalledWith(\r\n new Vector2(7, 8)\r\n );\r\n expect(uc.tryWithRay).toHaveBeenCalledWith(mockRay);\r\n });\r\n\r\n it(\"Tries Select Object Pick successfully\", () => {\r\n const { uc, objectPick } = makeTestRig();\r\n\r\n const spy = jest.spyOn(objectPick, \"addCorrectObjectId\");\r\n\r\n uc.tryWithRay(ParametricLine.Forward());\r\n\r\n expect(spy).toHaveBeenCalledWith(\"sceneObject\");\r\n });\r\n\r\n it(\"Does not add when the pick does not hit\", () => {\r\n const { uc, mockPickUC, objectPick } = makeTestRig();\r\n\r\n const mockPickResult: SceneRayPick = {\r\n hit: false,\r\n };\r\n mockPickUC.sceneRayPick.mockReturnValue(mockPickResult);\r\n\r\n mockPickResult.hit = false;\r\n const spy = jest.spyOn(objectPick, \"addCorrectObjectId\");\r\n\r\n uc.tryWithRay(ParametricLine.Forward());\r\n\r\n expect(spy).not.toHaveBeenCalled();\r\n });\r\n\r\n it(\"Does not add when the pick does not an app object\", () => {\r\n const { uc, mockPickUC, objectPick } = makeTestRig();\r\n\r\n const mockPickResult: SceneRayPick = {\r\n hit: true,\r\n appObjectID: undefined,\r\n };\r\n mockPickUC.sceneRayPick.mockReturnValue(mockPickResult);\r\n\r\n mockPickResult.hit = false;\r\n const spy = jest.spyOn(objectPick, \"addCorrectObjectId\");\r\n\r\n uc.tryWithRay(ParametricLine.Forward());\r\n\r\n expect(spy).not.toHaveBeenCalled();\r\n });\r\n\r\n it(\"Dispatches a state change\", () => {\r\n const { uc, mockDispatchStateChange } = makeTestRig();\r\n\r\n uc.tryWithRay(ParametricLine.Forward());\r\n\r\n expect(mockDispatchStateChange.doDispatch).toHaveBeenCalled();\r\n });\r\n\r\n it(\"Is undoable and redoable\", () => {\r\n const { uc, undo, objectPick } = makeTestRig();\r\n\r\n uc.tryWithRay(ParametricLine.Forward());\r\n\r\n expect(objectPick.correctObjectIds).toEqual([\"sceneObject\"]);\r\n\r\n undo.doUndo();\r\n\r\n expect(objectPick.correctObjectIds).toEqual([]);\r\n\r\n undo.doRedo();\r\n\r\n expect(objectPick.correctObjectIds).toEqual([\"sceneObject\"]);\r\n });\r\n\r\n it(\"Undo and redo dispatch a state change\", () => {\r\n const { uc, undo, mockDispatchStateChange } = makeTestRig();\r\n uc.tryWithRay(ParametricLine.Forward());\r\n\r\n mockDispatchStateChange.doDispatch.mockClear();\r\n\r\n undo.doUndo();\r\n expect(mockDispatchStateChange.doDispatch).toHaveBeenCalled();\r\n\r\n mockDispatchStateChange.doDispatch.mockClear();\r\n undo.doRedo();\r\n\r\n expect(mockDispatchStateChange.doDispatch).toHaveBeenCalled();\r\n });\r\n});\r\n"]}
1
+ {"version":3,"file":"TrySelectObjectPickUC.test.js","sourceRoot":"","sources":["../../../../src/ObjectPick/UseCases/TrySelectObjectPickUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { ParametricLine, Vector2, Vector3 } from \"@vived/core\";\r\nimport { makeBaseAppState } from \"../../BaseApp/Entity/BaseAppState\";\r\nimport {\r\n makeMockPixelToSceneRayUC,\r\n makeMockSceneRayPickUC,\r\n} from \"../../Babylon/Mocks\";\r\nimport { SceneRayPick } from \"../../Babylon/UC/SceneRayPickUC\";\r\nimport { makeChallengeEntityMock } from \"../../Challenge/Mocks/ChallengeEntityMock\";\r\nimport { makeMockDispatchStateChange } from \"../../Dispatcher/Mocks/MockDispatchStateChange\";\r\nimport { makeUndoRedoEntity } from \"../../UndoRedo/Entities/UndoRedoEntity\";\r\nimport { makeObjectPickEntity } from \"../Entities/ObjectPickEntity\";\r\nimport {\r\n makeTrySelectObjectPickUC,\r\n TrySelectObjectPickUC,\r\n} from \"./TrySelectObjectPickUC\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const mockDispatchStateChange = makeMockDispatchStateChange(appObjects);\r\n const doDispatchMock = jest.fn();\r\n mockDispatchStateChange.doDispatch = doDispatchMock;\r\n\r\n const baseApp = makeBaseAppState(appObjects.getOrCreate(\"App\"));\r\n const undo = makeUndoRedoEntity(appObjects.getOrCreate(\"Undo\"));\r\n const challenge = makeChallengeEntityMock(appObjects);\r\n\r\n const objectPick = makeObjectPickEntity(appObjects.getOrCreate(\"ObjectPick\"));\r\n\r\n baseApp.isAuthoring = true;\r\n objectPick.isSelectingCorrectObjects = true;\r\n challenge.selectedChallenge = \"OBJECT_PICK\";\r\n\r\n const mockPickResult: SceneRayPick = {\r\n hit: true,\r\n appObjectID: \"sceneObject\",\r\n };\r\n const mockRayPick = makeMockSceneRayPickUC(appObjects);\r\n const mockPick = jest.fn().mockReturnValue(mockPickResult);\r\n mockRayPick.sceneRayPick = mockPick;\r\n\r\n const mockPixelToRay = makeMockPixelToSceneRayUC(appObjects);\r\n\r\n const uc = makeTrySelectObjectPickUC(appObjects.getOrCreate(\"ObjectPick\"));\r\n\r\n return {\r\n objectPick,\r\n uc,\r\n baseApp,\r\n doDispatchMock,\r\n appObjects,\r\n mockPixelToRay,\r\n undo,\r\n mockPick,\r\n };\r\n}\r\n\r\ndescribe(\"Try Select Object Pick Use Case\", () => {\r\n it(\"Gets the singleton\", () => {\r\n const { appObjects, uc } = makeTestRig();\r\n\r\n expect(TrySelectObjectPickUC.get(appObjects)).toEqual(uc);\r\n });\r\n\r\n it(\"Forms the pixel into a ray and passed it to the try with ray\", () => {\r\n const { mockPixelToRay, uc } = makeTestRig();\r\n\r\n const mockRay = ParametricLine.FromTwoPoint(\r\n new Vector3(1, 2, 3),\r\n new Vector3(4, 5, 6)\r\n );\r\n mockPixelToRay.pixelToSceneRay.mockReturnValue(mockRay);\r\n\r\n uc.tryWithRay = jest.fn();\r\n\r\n uc.tryWithPixel(new Vector2(7, 8));\r\n\r\n expect(mockPixelToRay.pixelToSceneRay).toHaveBeenCalledWith(\r\n new Vector2(7, 8)\r\n );\r\n expect(uc.tryWithRay).toHaveBeenCalledWith(mockRay);\r\n });\r\n\r\n it(\"Tries Select Object Pick successfully\", () => {\r\n const { uc, objectPick } = makeTestRig();\r\n\r\n const spy = jest.spyOn(objectPick, \"addCorrectObjectId\");\r\n\r\n uc.tryWithRay(ParametricLine.Forward());\r\n\r\n expect(spy).toHaveBeenCalledWith(\"sceneObject\");\r\n });\r\n\r\n it(\"Does not add when the pick does not hit\", () => {\r\n const { uc, mockPick, objectPick } = makeTestRig();\r\n\r\n const mockPickResult: SceneRayPick = {\r\n hit: false,\r\n };\r\n mockPick.mockReturnValue(mockPickResult);\r\n\r\n mockPickResult.hit = false;\r\n const spy = jest.spyOn(objectPick, \"addCorrectObjectId\");\r\n\r\n uc.tryWithRay(ParametricLine.Forward());\r\n\r\n expect(spy).not.toHaveBeenCalled();\r\n });\r\n\r\n it(\"Does not add when the pick does not an app object\", () => {\r\n const { uc, mockPick, objectPick } = makeTestRig();\r\n\r\n const mockPickResult: SceneRayPick = {\r\n hit: true,\r\n appObjectID: undefined,\r\n };\r\n mockPick.mockReturnValue(mockPickResult);\r\n\r\n mockPickResult.hit = false;\r\n const spy = jest.spyOn(objectPick, \"addCorrectObjectId\");\r\n\r\n uc.tryWithRay(ParametricLine.Forward());\r\n\r\n expect(spy).not.toHaveBeenCalled();\r\n });\r\n\r\n it(\"Dispatches a state change\", () => {\r\n const { uc, doDispatchMock } = makeTestRig();\r\n\r\n uc.tryWithRay(ParametricLine.Forward());\r\n\r\n expect(doDispatchMock).toHaveBeenCalled();\r\n });\r\n\r\n it(\"Is undoable and redoable\", () => {\r\n const { uc, undo, objectPick } = makeTestRig();\r\n\r\n uc.tryWithRay(ParametricLine.Forward());\r\n\r\n expect(objectPick.correctObjectIds).toEqual([\"sceneObject\"]);\r\n\r\n undo.doUndo();\r\n\r\n expect(objectPick.correctObjectIds).toEqual([]);\r\n\r\n undo.doRedo();\r\n\r\n expect(objectPick.correctObjectIds).toEqual([\"sceneObject\"]);\r\n });\r\n\r\n it(\"Undo and redo dispatch a state change\", () => {\r\n const { uc, undo, doDispatchMock } = makeTestRig();\r\n uc.tryWithRay(ParametricLine.Forward());\r\n\r\n doDispatchMock.mockClear();\r\n\r\n undo.doUndo();\r\n expect(doDispatchMock).toHaveBeenCalled();\r\n\r\n doDispatchMock.mockClear();\r\n undo.doRedo();\r\n\r\n expect(doDispatchMock).toHaveBeenCalled();\r\n });\r\n});\r\n"]}
@@ -15,7 +15,9 @@ function makeTestRig() {
15
15
  const mockPickResult = {
16
16
  hit: true,
17
17
  };
18
- makeMockSceneRayPickUC(appObjects).sceneRayPick.mockReturnValue(mockPickResult);
18
+ const mockRayPick = makeMockSceneRayPickUC(appObjects);
19
+ const mockPick = jest.fn().mockReturnValue(mockPickResult);
20
+ mockRayPick.sceneRayPick = mockPick;
19
21
  const mockPixelToRay = makeMockPixelToSceneRayUC(appObjects);
20
22
  const objectPick = makeObjectPickEntity(appObjects.getOrCreate("ObjectPick"));
21
23
  const sceneObject = appObjects.getOrCreate("parent");
@@ -1 +1 @@
1
- {"version":3,"file":"TrySubmitObjectPickUC.test.js","sourceRoot":"","sources":["../../../../src/ObjectPick/UseCases/TrySubmitObjectPickUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { ParametricLine, Vector2, Vector3 } from \"@vived/core\";\r\nimport { makeBaseAppState } from \"../../BaseApp/Entity/BaseAppState\";\r\nimport {\r\n makeMockPixelToSceneRayUC,\r\n makeMockSceneRayPickUC,\r\n SceneRayPick,\r\n} from \"../../Babylon\";\r\nimport { makeChallengeEntityMock } from \"../../Challenge\";\r\nimport { makeMockSubmitResult } from \"../../Dispatcher\";\r\nimport { makeObjectPickEntity } from \"../Entities/ObjectPickEntity\";\r\nimport {\r\n makeTrySubmitObjectPickUC,\r\n TrySubmitObjectPickUC,\r\n} from \"./TrySubmitObjectPickUC\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n\r\n const baseApp = makeBaseAppState(appObjects.getOrCreate(\"App\"));\r\n baseApp.isAuthoring = false;\r\n\r\n const challenge = makeChallengeEntityMock(appObjects);\r\n\r\n const mockSubmitResult = makeMockSubmitResult(appObjects);\r\n\r\n const mockPickResult: SceneRayPick = {\r\n hit: true,\r\n };\r\n makeMockSceneRayPickUC(appObjects).sceneRayPick.mockReturnValue(\r\n mockPickResult\r\n );\r\n\r\n const mockPixelToRay = makeMockPixelToSceneRayUC(appObjects);\r\n\r\n const objectPick = makeObjectPickEntity(appObjects.getOrCreate(\"ObjectPick\"));\r\n\r\n const sceneObject = appObjects.getOrCreate(\"parent\");\r\n\r\n const uc = makeTrySubmitObjectPickUC(appObjects.getOrCreate(\"ObjectPick\"));\r\n const trySubmitObjectPick = uc.tryWithRay;\r\n\r\n return {\r\n trySubmitObjectPick,\r\n objectPick,\r\n mockSubmitResult,\r\n sceneObject,\r\n mockPickResult,\r\n baseApp,\r\n challenge,\r\n mockPixelToRay,\r\n appObjects,\r\n uc,\r\n };\r\n}\r\n\r\ndescribe(\"Submit Object Pick UC\", () => {\r\n it(\"Gets the singleton\", () => {\r\n const { appObjects, uc } = makeTestRig();\r\n\r\n expect(TrySubmitObjectPickUC.get(appObjects)).toEqual(uc);\r\n });\r\n\r\n it(\"Forms the pixel into a ray and passed it to the try with ray\", () => {\r\n const { mockPixelToRay, uc } = makeTestRig();\r\n\r\n const mockRay = ParametricLine.FromTwoPoint(\r\n new Vector3(1, 2, 3),\r\n new Vector3(4, 5, 6)\r\n );\r\n mockPixelToRay.pixelToSceneRay.mockReturnValue(mockRay);\r\n\r\n uc.tryWithRay = jest.fn();\r\n\r\n uc.tryWithPixel(new Vector2(7, 8));\r\n\r\n expect(mockPixelToRay.pixelToSceneRay).toHaveBeenCalledWith(\r\n new Vector2(7, 8)\r\n );\r\n expect(uc.tryWithRay).toHaveBeenCalledWith(mockRay);\r\n });\r\n\r\n it(\"Doesn't submit object pick when authoring\", () => {\r\n const { baseApp, objectPick, trySubmitObjectPick } = makeTestRig();\r\n const mockSubmit = jest.fn();\r\n\r\n baseApp.isAuthoring = true;\r\n objectPick.submit = mockSubmit;\r\n\r\n const pickRay = new ParametricLine({\r\n x0: 1,\r\n y0: 1,\r\n z0: 1,\r\n a: 1,\r\n b: 1,\r\n c: 1,\r\n });\r\n trySubmitObjectPick(pickRay);\r\n\r\n expect(mockSubmit).not.toHaveBeenCalled();\r\n });\r\n\r\n it(\"Doesn't submit object pick when challenge is not OBJECT_PICK\", () => {\r\n const { challenge, objectPick, trySubmitObjectPick } = makeTestRig();\r\n const mockSubmit = jest.fn();\r\n\r\n challenge.selectedChallenge = \"QUESTION\";\r\n objectPick.submit = mockSubmit;\r\n\r\n const pickRay = new ParametricLine({\r\n x0: 1,\r\n y0: 1,\r\n z0: 1,\r\n a: 1,\r\n b: 1,\r\n c: 1,\r\n });\r\n trySubmitObjectPick(pickRay);\r\n\r\n expect(mockSubmit).not.toHaveBeenCalled();\r\n });\r\n\r\n it(\"Doesn't submit object pick when app mode is review\", () => {\r\n const { baseApp, objectPick, trySubmitObjectPick } = makeTestRig();\r\n const mockSubmit = jest.fn();\r\n\r\n baseApp.isReviewing = true;\r\n objectPick.submit = mockSubmit;\r\n\r\n const pickRay = new ParametricLine({\r\n x0: 1,\r\n y0: 1,\r\n z0: 1,\r\n a: 1,\r\n b: 1,\r\n c: 1,\r\n });\r\n trySubmitObjectPick(pickRay);\r\n\r\n expect(mockSubmit).not.toHaveBeenCalled();\r\n });\r\n\r\n it(\"Submits object pick when not authoring\", () => {\r\n const {\r\n sceneObject,\r\n challenge,\r\n objectPick,\r\n trySubmitObjectPick,\r\n mockPickResult,\r\n } = makeTestRig();\r\n\r\n mockPickResult.appObjectID = sceneObject.id;\r\n\r\n const mockSubmit = jest.fn();\r\n\r\n challenge.selectedChallenge = \"OBJECT_PICK\";\r\n objectPick.submit = mockSubmit;\r\n\r\n const pickRay = new ParametricLine({\r\n x0: 1,\r\n y0: 1,\r\n z0: 1,\r\n a: 1,\r\n b: 1,\r\n c: 1,\r\n });\r\n trySubmitObjectPick(pickRay);\r\n\r\n expect(mockSubmit).toHaveBeenCalled();\r\n });\r\n\r\n it(\"Dispatches a submitHitResult\", () => {\r\n const {\r\n challenge,\r\n objectPick,\r\n sceneObject,\r\n mockPickResult,\r\n trySubmitObjectPick,\r\n mockSubmitResult,\r\n baseApp,\r\n } = makeTestRig();\r\n\r\n const mockSubmit = jest.fn();\r\n\r\n mockPickResult.appObjectID = sceneObject.id;\r\n\r\n challenge.selectedChallenge = \"OBJECT_PICK\";\r\n objectPick.submit = mockSubmit;\r\n\r\n const pickRay = new ParametricLine({\r\n x0: 1,\r\n y0: 1,\r\n z0: 1,\r\n a: 1,\r\n b: 1,\r\n c: 1,\r\n });\r\n trySubmitObjectPick(pickRay);\r\n\r\n expect(mockSubmitResult.submitHitResult).toHaveBeenCalledWith({\r\n success: objectPick.hasSubmitted,\r\n description: baseApp.slideText,\r\n });\r\n });\r\n\r\n it(\"Sets the appState to Review\", () => {\r\n const {\r\n sceneObject,\r\n challenge,\r\n objectPick,\r\n trySubmitObjectPick,\r\n mockPickResult,\r\n baseApp,\r\n } = makeTestRig();\r\n\r\n mockPickResult.appObjectID = sceneObject.id;\r\n\r\n const mockSubmit = jest.fn();\r\n\r\n challenge.selectedChallenge = \"OBJECT_PICK\";\r\n objectPick.submit = mockSubmit;\r\n\r\n const pickRay = new ParametricLine({\r\n x0: 1,\r\n y0: 1,\r\n z0: 1,\r\n a: 1,\r\n b: 1,\r\n c: 1,\r\n });\r\n trySubmitObjectPick(pickRay);\r\n\r\n expect(baseApp.isReviewing).toEqual(true);\r\n });\r\n});\r\n"]}
1
+ {"version":3,"file":"TrySubmitObjectPickUC.test.js","sourceRoot":"","sources":["../../../../src/ObjectPick/UseCases/TrySubmitObjectPickUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { ParametricLine, Vector2, Vector3 } from \"@vived/core\";\r\nimport { makeBaseAppState } from \"../../BaseApp/Entity/BaseAppState\";\r\nimport {\r\n makeMockPixelToSceneRayUC,\r\n makeMockSceneRayPickUC,\r\n SceneRayPick,\r\n} from \"../../Babylon\";\r\nimport { makeChallengeEntityMock } from \"../../Challenge\";\r\nimport { makeMockSubmitResult } from \"../../Dispatcher\";\r\nimport { makeObjectPickEntity } from \"../Entities/ObjectPickEntity\";\r\nimport {\r\n makeTrySubmitObjectPickUC,\r\n TrySubmitObjectPickUC,\r\n} from \"./TrySubmitObjectPickUC\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n\r\n const baseApp = makeBaseAppState(appObjects.getOrCreate(\"App\"));\r\n baseApp.isAuthoring = false;\r\n\r\n const challenge = makeChallengeEntityMock(appObjects);\r\n\r\n const mockSubmitResult = makeMockSubmitResult(appObjects);\r\n\r\n const mockPickResult: SceneRayPick = {\r\n hit: true,\r\n };\r\n const mockRayPick = makeMockSceneRayPickUC(appObjects);\r\n const mockPick = jest.fn().mockReturnValue(mockPickResult);\r\n mockRayPick.sceneRayPick = mockPick;\r\n\r\n const mockPixelToRay = makeMockPixelToSceneRayUC(appObjects);\r\n\r\n const objectPick = makeObjectPickEntity(appObjects.getOrCreate(\"ObjectPick\"));\r\n\r\n const sceneObject = appObjects.getOrCreate(\"parent\");\r\n\r\n const uc = makeTrySubmitObjectPickUC(appObjects.getOrCreate(\"ObjectPick\"));\r\n const trySubmitObjectPick = uc.tryWithRay;\r\n\r\n return {\r\n trySubmitObjectPick,\r\n objectPick,\r\n mockSubmitResult,\r\n sceneObject,\r\n mockPickResult,\r\n baseApp,\r\n challenge,\r\n mockPixelToRay,\r\n appObjects,\r\n uc,\r\n };\r\n}\r\n\r\ndescribe(\"Submit Object Pick UC\", () => {\r\n it(\"Gets the singleton\", () => {\r\n const { appObjects, uc } = makeTestRig();\r\n\r\n expect(TrySubmitObjectPickUC.get(appObjects)).toEqual(uc);\r\n });\r\n\r\n it(\"Forms the pixel into a ray and passed it to the try with ray\", () => {\r\n const { mockPixelToRay, uc } = makeTestRig();\r\n\r\n const mockRay = ParametricLine.FromTwoPoint(\r\n new Vector3(1, 2, 3),\r\n new Vector3(4, 5, 6)\r\n );\r\n mockPixelToRay.pixelToSceneRay.mockReturnValue(mockRay);\r\n\r\n uc.tryWithRay = jest.fn();\r\n\r\n uc.tryWithPixel(new Vector2(7, 8));\r\n\r\n expect(mockPixelToRay.pixelToSceneRay).toHaveBeenCalledWith(\r\n new Vector2(7, 8)\r\n );\r\n expect(uc.tryWithRay).toHaveBeenCalledWith(mockRay);\r\n });\r\n\r\n it(\"Doesn't submit object pick when authoring\", () => {\r\n const { baseApp, objectPick, trySubmitObjectPick } = makeTestRig();\r\n const mockSubmit = jest.fn();\r\n\r\n baseApp.isAuthoring = true;\r\n objectPick.submit = mockSubmit;\r\n\r\n const pickRay = new ParametricLine({\r\n x0: 1,\r\n y0: 1,\r\n z0: 1,\r\n a: 1,\r\n b: 1,\r\n c: 1,\r\n });\r\n trySubmitObjectPick(pickRay);\r\n\r\n expect(mockSubmit).not.toHaveBeenCalled();\r\n });\r\n\r\n it(\"Doesn't submit object pick when challenge is not OBJECT_PICK\", () => {\r\n const { challenge, objectPick, trySubmitObjectPick } = makeTestRig();\r\n const mockSubmit = jest.fn();\r\n\r\n challenge.selectedChallenge = \"QUESTION\";\r\n objectPick.submit = mockSubmit;\r\n\r\n const pickRay = new ParametricLine({\r\n x0: 1,\r\n y0: 1,\r\n z0: 1,\r\n a: 1,\r\n b: 1,\r\n c: 1,\r\n });\r\n trySubmitObjectPick(pickRay);\r\n\r\n expect(mockSubmit).not.toHaveBeenCalled();\r\n });\r\n\r\n it(\"Doesn't submit object pick when app mode is review\", () => {\r\n const { baseApp, objectPick, trySubmitObjectPick } = makeTestRig();\r\n const mockSubmit = jest.fn();\r\n\r\n baseApp.isReviewing = true;\r\n objectPick.submit = mockSubmit;\r\n\r\n const pickRay = new ParametricLine({\r\n x0: 1,\r\n y0: 1,\r\n z0: 1,\r\n a: 1,\r\n b: 1,\r\n c: 1,\r\n });\r\n trySubmitObjectPick(pickRay);\r\n\r\n expect(mockSubmit).not.toHaveBeenCalled();\r\n });\r\n\r\n it(\"Submits object pick when not authoring\", () => {\r\n const {\r\n sceneObject,\r\n challenge,\r\n objectPick,\r\n trySubmitObjectPick,\r\n mockPickResult,\r\n } = makeTestRig();\r\n\r\n mockPickResult.appObjectID = sceneObject.id;\r\n\r\n const mockSubmit = jest.fn();\r\n\r\n challenge.selectedChallenge = \"OBJECT_PICK\";\r\n objectPick.submit = mockSubmit;\r\n\r\n const pickRay = new ParametricLine({\r\n x0: 1,\r\n y0: 1,\r\n z0: 1,\r\n a: 1,\r\n b: 1,\r\n c: 1,\r\n });\r\n trySubmitObjectPick(pickRay);\r\n\r\n expect(mockSubmit).toHaveBeenCalled();\r\n });\r\n\r\n it(\"Dispatches a submitHitResult\", () => {\r\n const {\r\n challenge,\r\n objectPick,\r\n sceneObject,\r\n mockPickResult,\r\n trySubmitObjectPick,\r\n mockSubmitResult,\r\n baseApp,\r\n } = makeTestRig();\r\n\r\n const mockSubmit = jest.fn();\r\n\r\n mockPickResult.appObjectID = sceneObject.id;\r\n\r\n challenge.selectedChallenge = \"OBJECT_PICK\";\r\n objectPick.submit = mockSubmit;\r\n\r\n const pickRay = new ParametricLine({\r\n x0: 1,\r\n y0: 1,\r\n z0: 1,\r\n a: 1,\r\n b: 1,\r\n c: 1,\r\n });\r\n trySubmitObjectPick(pickRay);\r\n\r\n expect(mockSubmitResult.submitHitResult).toHaveBeenCalledWith({\r\n success: objectPick.hasSubmitted,\r\n description: baseApp.slideText,\r\n });\r\n });\r\n\r\n it(\"Sets the appState to Review\", () => {\r\n const {\r\n sceneObject,\r\n challenge,\r\n objectPick,\r\n trySubmitObjectPick,\r\n mockPickResult,\r\n baseApp,\r\n } = makeTestRig();\r\n\r\n mockPickResult.appObjectID = sceneObject.id;\r\n\r\n const mockSubmit = jest.fn();\r\n\r\n challenge.selectedChallenge = \"OBJECT_PICK\";\r\n objectPick.submit = mockSubmit;\r\n\r\n const pickRay = new ParametricLine({\r\n x0: 1,\r\n y0: 1,\r\n z0: 1,\r\n a: 1,\r\n b: 1,\r\n c: 1,\r\n });\r\n trySubmitObjectPick(pickRay);\r\n\r\n expect(baseApp.isReviewing).toEqual(true);\r\n });\r\n});\r\n"]}
@@ -1,5 +1,5 @@
1
1
  import { makeAppObjectRepo } from "@vived/core";
2
- import { MockDispatchStateChange } from "../../Dispatcher/Mocks/MockDispatchStateChange";
2
+ import { makeMockDispatchStateChange } from "../../Dispatcher";
3
3
  import { MockUndoRedo } from "../../UndoRedo/Mocks/MockUndoRedo";
4
4
  import { OverlayColor, OverlayColorEnums } from "../Entities";
5
5
  import { SetOverlayColorUC } from "./SetOverlayColorUC";
@@ -7,7 +7,11 @@ function makeTestRig() {
7
7
  const appObjects = makeAppObjectRepo();
8
8
  const ao = appObjects.getOrCreate("App");
9
9
  const mockUndo = new MockUndoRedo(ao);
10
- const mockDispatcher = new MockDispatchStateChange(ao);
10
+ // Override the submitAction with a jest.fn()
11
+ mockUndo.submitAction = jest.fn();
12
+ const mockDispatcher = makeMockDispatchStateChange(appObjects);
13
+ const doDispatchMock = jest.fn();
14
+ mockDispatcher.doDispatch = doDispatchMock;
11
15
  const overlayColor = new OverlayColor(ao);
12
16
  const setOverlayColorUC = new SetOverlayColorUC(ao);
13
17
  const mockSubmitWarning = jest.fn();
@@ -19,6 +23,7 @@ function makeTestRig() {
19
23
  overlayColor,
20
24
  setOverlayColorUC,
21
25
  mockDispatcher,
26
+ doDispatchMock,
22
27
  mockSubmitWarning,
23
28
  };
24
29
  }
@@ -43,9 +48,9 @@ describe("Set Overlay Color UC", () => {
43
48
  expect(mockSubmitWarning).toHaveBeenCalledTimes(2);
44
49
  });
45
50
  it("Dispatches state change when clear custom label", () => {
46
- const { setOverlayColorUC, mockDispatcher } = makeTestRig();
51
+ const { setOverlayColorUC, doDispatchMock } = makeTestRig();
47
52
  setOverlayColorUC.setOverlayColor(OverlayColorEnums.WHITE);
48
- expect(mockDispatcher.doDispatch).toHaveBeenCalled();
53
+ expect(doDispatchMock).toHaveBeenCalled();
49
54
  });
50
55
  it("Submits and undo", () => {
51
56
  const { setOverlayColorUC, mockUndo } = makeTestRig();
@@ -1 +1 @@
1
- {"version":3,"file":"SetOverlayColorUC.test.js","sourceRoot":"","sources":["../../../../src/OverlayColor/UC/SetOverlayColorUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { MockDispatchStateChange } from \"../../Dispatcher/Mocks/MockDispatchStateChange\";\r\nimport { MockUndoRedo } from \"../../UndoRedo/Mocks/MockUndoRedo\";\r\nimport { OverlayColor, OverlayColorEnums } from \"../Entities\";\r\nimport { SetOverlayColorUC } from \"./SetOverlayColorUC\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n\r\n const ao = appObjects.getOrCreate(\"App\");\r\n\r\n const mockUndo = new MockUndoRedo(ao);\r\n const mockDispatcher = new MockDispatchStateChange(ao);\r\n\r\n const overlayColor = new OverlayColor(ao);\r\n const setOverlayColorUC = new SetOverlayColorUC(ao);\r\n\r\n const mockSubmitWarning = jest.fn();\r\n appObjects.submitWarning = mockSubmitWarning;\r\n\r\n return {\r\n appObjects,\r\n ao,\r\n mockUndo,\r\n overlayColor,\r\n setOverlayColorUC,\r\n mockDispatcher,\r\n mockSubmitWarning,\r\n };\r\n}\r\n\r\ndescribe(\"Set Overlay Color UC\", () => {\r\n it(\"Sets overlay color\", () => {\r\n const { overlayColor, setOverlayColorUC } = makeTestRig();\r\n\r\n overlayColor.overlayColor = OverlayColorEnums.BLACK;\r\n setOverlayColorUC.setOverlayColor(OverlayColorEnums.WHITE);\r\n\r\n expect(overlayColor.overlayColor).toEqual(OverlayColorEnums.WHITE);\r\n });\r\n\r\n it(\"Submits warning if OverlayColor Entity was not added to App Object\", () => {\r\n const { appObjects, mockSubmitWarning } = makeTestRig();\r\n const ao = appObjects.getOrCreate(\"testAO\");\r\n\r\n new SetOverlayColorUC(ao);\r\n\r\n expect(mockSubmitWarning).toHaveBeenCalled();\r\n });\r\n\r\n it(\"Submits warning if label entity was not added to App Object\", () => {\r\n const { appObjects, mockSubmitWarning } = makeTestRig();\r\n const ao = appObjects.getOrCreate(\"testAO\");\r\n\r\n const setOverlayColorUC = new SetOverlayColorUC(ao);\r\n setOverlayColorUC.setOverlayColor(OverlayColorEnums.WHITE);\r\n\r\n expect(mockSubmitWarning).toHaveBeenCalledTimes(2);\r\n });\r\n\r\n it(\"Dispatches state change when clear custom label\", () => {\r\n const { setOverlayColorUC, mockDispatcher } = makeTestRig();\r\n\r\n setOverlayColorUC.setOverlayColor(OverlayColorEnums.WHITE);\r\n\r\n expect(mockDispatcher.doDispatch).toHaveBeenCalled();\r\n });\r\n\r\n it(\"Submits and undo\", () => {\r\n const { setOverlayColorUC, mockUndo } = makeTestRig();\r\n\r\n setOverlayColorUC.setOverlayColor(OverlayColorEnums.WHITE);\r\n\r\n expect(mockUndo.submitAction).toHaveBeenCalled();\r\n });\r\n});\r\n"]}
1
+ {"version":3,"file":"SetOverlayColorUC.test.js","sourceRoot":"","sources":["../../../../src/OverlayColor/UC/SetOverlayColorUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { makeMockDispatchStateChange } from \"../../Dispatcher\";\r\nimport { MockUndoRedo } from \"../../UndoRedo/Mocks/MockUndoRedo\";\r\nimport { OverlayColor, OverlayColorEnums } from \"../Entities\";\r\nimport { SetOverlayColorUC } from \"./SetOverlayColorUC\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n\r\n const ao = appObjects.getOrCreate(\"App\");\r\n\r\n const mockUndo = new MockUndoRedo(ao);\r\n // Override the submitAction with a jest.fn()\r\n mockUndo.submitAction = jest.fn();\r\n const mockDispatcher = makeMockDispatchStateChange(appObjects);\r\n const doDispatchMock = jest.fn();\r\n mockDispatcher.doDispatch = doDispatchMock;\r\n\r\n const overlayColor = new OverlayColor(ao);\r\n const setOverlayColorUC = new SetOverlayColorUC(ao);\r\n\r\n const mockSubmitWarning = jest.fn();\r\n appObjects.submitWarning = mockSubmitWarning;\r\n\r\n return {\r\n appObjects,\r\n ao,\r\n mockUndo,\r\n overlayColor,\r\n setOverlayColorUC,\r\n mockDispatcher,\r\n doDispatchMock,\r\n mockSubmitWarning,\r\n };\r\n}\r\n\r\ndescribe(\"Set Overlay Color UC\", () => {\r\n it(\"Sets overlay color\", () => {\r\n const { overlayColor, setOverlayColorUC } = makeTestRig();\r\n\r\n overlayColor.overlayColor = OverlayColorEnums.BLACK;\r\n setOverlayColorUC.setOverlayColor(OverlayColorEnums.WHITE);\r\n\r\n expect(overlayColor.overlayColor).toEqual(OverlayColorEnums.WHITE);\r\n });\r\n\r\n it(\"Submits warning if OverlayColor Entity was not added to App Object\", () => {\r\n const { appObjects, mockSubmitWarning } = makeTestRig();\r\n const ao = appObjects.getOrCreate(\"testAO\");\r\n\r\n new SetOverlayColorUC(ao);\r\n\r\n expect(mockSubmitWarning).toHaveBeenCalled();\r\n });\r\n\r\n it(\"Submits warning if label entity was not added to App Object\", () => {\r\n const { appObjects, mockSubmitWarning } = makeTestRig();\r\n const ao = appObjects.getOrCreate(\"testAO\");\r\n\r\n const setOverlayColorUC = new SetOverlayColorUC(ao);\r\n setOverlayColorUC.setOverlayColor(OverlayColorEnums.WHITE);\r\n\r\n expect(mockSubmitWarning).toHaveBeenCalledTimes(2);\r\n });\r\n\r\n it(\"Dispatches state change when clear custom label\", () => {\r\n const { setOverlayColorUC, doDispatchMock } = makeTestRig();\r\n\r\n setOverlayColorUC.setOverlayColor(OverlayColorEnums.WHITE);\r\n\r\n expect(doDispatchMock).toHaveBeenCalled();\r\n });\r\n\r\n it(\"Submits and undo\", () => {\r\n const { setOverlayColorUC, mockUndo } = makeTestRig();\r\n\r\n setOverlayColorUC.setOverlayColor(OverlayColorEnums.WHITE);\r\n\r\n expect(mockUndo.submitAction).toHaveBeenCalled();\r\n });\r\n});\r\n"]}
@@ -1,5 +1,5 @@
1
1
  import { makeAppObjectRepo } from "@vived/core";
2
- import { MockDispatchStateChange } from "../../Dispatcher/Mocks/MockDispatchStateChange";
2
+ import { makeMockDispatchStateChange } from "../../Dispatcher";
3
3
  import { MockUndoRedo } from "../../UndoRedo/Mocks/MockUndoRedo";
4
4
  import { OverlayColor, OverlayColorEnums } from "../../OverlayColor/Entities";
5
5
  import { SetOverlayColorUndoRedo } from "./SetOverlayColorUndoRedo";
@@ -7,9 +7,13 @@ function makeTestRig() {
7
7
  const appObjects = makeAppObjectRepo();
8
8
  const ao = appObjects.getOrCreate("App");
9
9
  const mockUndo = new MockUndoRedo(ao);
10
- const mockDispatcher = new MockDispatchStateChange(ao);
10
+ // Override the submitAction with a jest.fn()
11
+ mockUndo.submitAction = jest.fn();
12
+ const mockDispatcher = makeMockDispatchStateChange(appObjects);
13
+ const doDispatchMock = jest.fn();
14
+ mockDispatcher.doDispatch = doDispatchMock;
11
15
  const overlayColor = new OverlayColor(ao);
12
- return { mockUndo, mockDispatcher, overlayColor, ao };
16
+ return { mockUndo, mockDispatcher, doDispatchMock, overlayColor, ao };
13
17
  }
14
18
  describe("Set Overlay Color Undo Redo action", () => {
15
19
  it("Submits itself to the entity", () => {
@@ -37,15 +41,15 @@ describe("Set Overlay Color Undo Redo action", () => {
37
41
  expect(overlayColor.overlayColor).toEqual(curOverlayColor);
38
42
  });
39
43
  it("Dispatches state changes for both the undo and redo action", () => {
40
- const { ao, overlayColor, mockDispatcher } = makeTestRig();
44
+ const { ao, overlayColor, doDispatchMock } = makeTestRig();
41
45
  const prevOverlayColor = OverlayColorEnums.BLACK;
42
46
  const curOverlayColor = OverlayColorEnums.WHITE;
43
47
  overlayColor.overlayColor = prevOverlayColor;
44
48
  const action = new SetOverlayColorUndoRedo(prevOverlayColor, curOverlayColor, ao);
45
49
  action.undoAction();
46
- expect(mockDispatcher.doDispatch).toHaveBeenCalledTimes(1);
50
+ expect(doDispatchMock).toHaveBeenCalledTimes(1);
47
51
  action.redoAction();
48
- expect(mockDispatcher.doDispatch).toHaveBeenCalledTimes(2);
52
+ expect(doDispatchMock).toHaveBeenCalledTimes(2);
49
53
  });
50
54
  });
51
55
  //# sourceMappingURL=SetOverlayColorUndoRedo.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SetOverlayColorUndoRedo.test.js","sourceRoot":"","sources":["../../../../src/OverlayColor/UC/SetOverlayColorUndoRedo.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { MockDispatchStateChange } from \"../../Dispatcher/Mocks/MockDispatchStateChange\";\r\nimport { MockUndoRedo } from \"../../UndoRedo/Mocks/MockUndoRedo\";\r\nimport { OverlayColor, OverlayColorEnums } from \"../../OverlayColor/Entities\";\r\nimport { SetOverlayColorUndoRedo } from \"./SetOverlayColorUndoRedo\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const ao = appObjects.getOrCreate(\"App\");\r\n const mockUndo = new MockUndoRedo(ao);\r\n const mockDispatcher = new MockDispatchStateChange(ao);\r\n const overlayColor = new OverlayColor(ao);\r\n\r\n return { mockUndo, mockDispatcher, overlayColor, ao };\r\n}\r\n\r\ndescribe(\"Set Overlay Color Undo Redo action\", () => {\r\n it(\"Submits itself to the entity\", () => {\r\n const { mockUndo, ao } = makeTestRig();\r\n\r\n const action = new SetOverlayColorUndoRedo(\r\n OverlayColorEnums.BLACK,\r\n OverlayColorEnums.WHITE,\r\n ao\r\n );\r\n expect(mockUndo.submitAction).toHaveBeenCalledWith(action);\r\n });\r\n\r\n it(\"Undo sets the prior overlay color \", () => {\r\n const { ao, overlayColor } = makeTestRig();\r\n const prevOverlayColor = OverlayColorEnums.BLACK;\r\n const curOverlayColor = OverlayColorEnums.WHITE;\r\n\r\n overlayColor.overlayColor = prevOverlayColor;\r\n const action = new SetOverlayColorUndoRedo(\r\n prevOverlayColor,\r\n curOverlayColor,\r\n ao\r\n );\r\n\r\n action.undoAction();\r\n\r\n expect(overlayColor.overlayColor).toEqual(prevOverlayColor);\r\n });\r\n\r\n it(\"Redo sets the overlay color back in \", () => {\r\n const { ao, overlayColor } = makeTestRig();\r\n const prevOverlayColor = OverlayColorEnums.BLACK;\r\n const curOverlayColor = OverlayColorEnums.WHITE;\r\n\r\n overlayColor.overlayColor = prevOverlayColor;\r\n const action = new SetOverlayColorUndoRedo(\r\n prevOverlayColor,\r\n curOverlayColor,\r\n ao\r\n );\r\n\r\n action.undoAction();\r\n action.redoAction();\r\n\r\n expect(overlayColor.overlayColor).toEqual(curOverlayColor);\r\n });\r\n\r\n it(\"Dispatches state changes for both the undo and redo action\", () => {\r\n const { ao, overlayColor, mockDispatcher } = makeTestRig();\r\n const prevOverlayColor = OverlayColorEnums.BLACK;\r\n const curOverlayColor = OverlayColorEnums.WHITE;\r\n\r\n overlayColor.overlayColor = prevOverlayColor;\r\n const action = new SetOverlayColorUndoRedo(\r\n prevOverlayColor,\r\n curOverlayColor,\r\n ao\r\n );\r\n\r\n action.undoAction();\r\n expect(mockDispatcher.doDispatch).toHaveBeenCalledTimes(1);\r\n\r\n action.redoAction();\r\n expect(mockDispatcher.doDispatch).toHaveBeenCalledTimes(2);\r\n });\r\n});\r\n"]}
1
+ {"version":3,"file":"SetOverlayColorUndoRedo.test.js","sourceRoot":"","sources":["../../../../src/OverlayColor/UC/SetOverlayColorUndoRedo.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { makeMockDispatchStateChange } from \"../../Dispatcher\";\r\nimport { MockUndoRedo } from \"../../UndoRedo/Mocks/MockUndoRedo\";\r\nimport { OverlayColor, OverlayColorEnums } from \"../../OverlayColor/Entities\";\r\nimport { SetOverlayColorUndoRedo } from \"./SetOverlayColorUndoRedo\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const ao = appObjects.getOrCreate(\"App\");\r\n const mockUndo = new MockUndoRedo(ao);\r\n // Override the submitAction with a jest.fn()\r\n mockUndo.submitAction = jest.fn();\r\n const mockDispatcher = makeMockDispatchStateChange(appObjects);\r\n const doDispatchMock = jest.fn();\r\n mockDispatcher.doDispatch = doDispatchMock;\r\n const overlayColor = new OverlayColor(ao);\r\n\r\n return { mockUndo, mockDispatcher, doDispatchMock, overlayColor, ao };\r\n}\r\n\r\ndescribe(\"Set Overlay Color Undo Redo action\", () => {\r\n it(\"Submits itself to the entity\", () => {\r\n const { mockUndo, ao } = makeTestRig();\r\n\r\n const action = new SetOverlayColorUndoRedo(\r\n OverlayColorEnums.BLACK,\r\n OverlayColorEnums.WHITE,\r\n ao\r\n );\r\n expect(mockUndo.submitAction).toHaveBeenCalledWith(action);\r\n });\r\n\r\n it(\"Undo sets the prior overlay color \", () => {\r\n const { ao, overlayColor } = makeTestRig();\r\n const prevOverlayColor = OverlayColorEnums.BLACK;\r\n const curOverlayColor = OverlayColorEnums.WHITE;\r\n\r\n overlayColor.overlayColor = prevOverlayColor;\r\n const action = new SetOverlayColorUndoRedo(\r\n prevOverlayColor,\r\n curOverlayColor,\r\n ao\r\n );\r\n\r\n action.undoAction();\r\n\r\n expect(overlayColor.overlayColor).toEqual(prevOverlayColor);\r\n });\r\n\r\n it(\"Redo sets the overlay color back in \", () => {\r\n const { ao, overlayColor } = makeTestRig();\r\n const prevOverlayColor = OverlayColorEnums.BLACK;\r\n const curOverlayColor = OverlayColorEnums.WHITE;\r\n\r\n overlayColor.overlayColor = prevOverlayColor;\r\n const action = new SetOverlayColorUndoRedo(\r\n prevOverlayColor,\r\n curOverlayColor,\r\n ao\r\n );\r\n\r\n action.undoAction();\r\n action.redoAction();\r\n\r\n expect(overlayColor.overlayColor).toEqual(curOverlayColor);\r\n });\r\n\r\n it(\"Dispatches state changes for both the undo and redo action\", () => {\r\n const { ao, overlayColor, doDispatchMock } = makeTestRig();\r\n const prevOverlayColor = OverlayColorEnums.BLACK;\r\n const curOverlayColor = OverlayColorEnums.WHITE;\r\n\r\n overlayColor.overlayColor = prevOverlayColor;\r\n const action = new SetOverlayColorUndoRedo(\r\n prevOverlayColor,\r\n curOverlayColor,\r\n ao\r\n );\r\n\r\n action.undoAction();\r\n expect(doDispatchMock).toHaveBeenCalledTimes(1);\r\n\r\n action.redoAction();\r\n expect(doDispatchMock).toHaveBeenCalledTimes(2);\r\n });\r\n});\r\n"]}
@@ -1,5 +1,5 @@
1
1
  import { makeAppObjectRepo } from "@vived/core";
2
- import { MockDispatchStateChange } from "../../Dispatcher/Mocks/MockDispatchStateChange";
2
+ import { makeMockDispatchStateChange } from "../../Dispatcher";
3
3
  import { MockUndoRedo } from "../../UndoRedo/Mocks/MockUndoRedo";
4
4
  import { makeQuestionAnswerEntity, makeQuestionEntity, } from "../Entities";
5
5
  import { AddAnswerUndoRedo } from "./AddAnswerUndoRedo";
@@ -11,10 +11,20 @@ function makeTestRig() {
11
11
  const appObjects = makeAppObjectRepo();
12
12
  const ao = appObjects.getOrCreate("App");
13
13
  const mockUndo = new MockUndoRedo(ao);
14
- const mockDispatcher = new MockDispatchStateChange(ao);
14
+ // Override the submitAction with a jest.fn()
15
+ mockUndo.submitAction = jest.fn();
16
+ const mockDispatcher = makeMockDispatchStateChange(appObjects);
17
+ const doDispatchMock = jest.fn();
18
+ mockDispatcher.doDispatch = doDispatchMock;
15
19
  const questionEntity = makeQuestionEntity(ao);
16
20
  questionEntity.answerFactory = (id) => setupQuestionAnswer(appObjects, id);
17
- return { mockUndo, mockDispatcher, questionEntity, appObjects };
21
+ return {
22
+ mockUndo,
23
+ mockDispatcher,
24
+ doDispatchMock,
25
+ questionEntity,
26
+ appObjects,
27
+ };
18
28
  }
19
29
  describe("Add Answer Undo Redo action", () => {
20
30
  it("Submits itself to the entity", () => {
@@ -38,13 +48,13 @@ describe("Add Answer Undo Redo action", () => {
38
48
  expect(questionEntity.hasAnswer(ans.id)).toEqual(true);
39
49
  });
40
50
  it("Dispatches state changes for both the undo and redo action", () => {
41
- const { appObjects, questionEntity, mockDispatcher } = makeTestRig();
51
+ const { appObjects, questionEntity, doDispatchMock } = makeTestRig();
42
52
  const ans = questionEntity.createNewAnswer();
43
53
  const action = new AddAnswerUndoRedo(ans.id, appObjects);
44
54
  action.undoAction();
45
- expect(mockDispatcher.doDispatch).toHaveBeenCalledTimes(1);
55
+ expect(doDispatchMock).toHaveBeenCalledTimes(1);
46
56
  action.redoAction();
47
- expect(mockDispatcher.doDispatch).toHaveBeenCalledTimes(2);
57
+ expect(doDispatchMock).toHaveBeenCalledTimes(2);
48
58
  });
49
59
  });
50
60
  //# sourceMappingURL=AddAnswerUndoRedo.test.js.map