@vived/host 4.0.2 → 4.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/AppSandbox/Factories/setupAppSandbox.js +6 -0
- package/dist/cjs/AppSandbox/Factories/setupAppSandbox.js.map +1 -1
- package/dist/cjs/AppSandbox/UCs/submitActivityAssetHandlerSandbox.js +37 -0
- package/dist/cjs/AppSandbox/UCs/submitActivityAssetHandlerSandbox.js.map +1 -0
- package/dist/cjs/AppSandbox/UCs/submitActivityAssetHandlerSandbox.test.js +55 -0
- package/dist/cjs/AppSandbox/UCs/submitActivityAssetHandlerSandbox.test.js.map +1 -0
- package/dist/cjs/Assets/Factories/setupAssetsForSandbox.js +1 -0
- package/dist/cjs/Assets/Factories/setupAssetsForSandbox.js.map +1 -1
- package/dist/cjs/Assets/Mocks/MockNewAssetUC.js +16 -0
- package/dist/cjs/Assets/Mocks/MockNewAssetUC.js.map +1 -0
- package/dist/cjs/Assets/Mocks/index.js +1 -0
- package/dist/cjs/Assets/Mocks/index.js.map +1 -1
- package/dist/cjs/Assets/UCs/NewAppAssetUC.js.map +1 -1
- package/dist/cjs/Assets/UCs/NewAppAssetUC.test.js.map +1 -1
- package/dist/cjs/Assets/UCs/NewAssetUC.js +53 -0
- package/dist/cjs/Assets/UCs/NewAssetUC.js.map +1 -0
- package/dist/cjs/Assets/UCs/NewAssetUC.test.js +104 -0
- package/dist/cjs/Assets/UCs/NewAssetUC.test.js.map +1 -0
- package/dist/cjs/Assets/UCs/index.js +1 -0
- package/dist/cjs/Assets/UCs/index.js.map +1 -1
- package/dist/cjs/Dialog/Entities/Alert.js +2 -0
- package/dist/cjs/Dialog/Entities/Alert.js.map +1 -1
- package/dist/cjs/Dialog/Entities/Alert.test.js +6 -0
- package/dist/cjs/Dialog/Entities/Alert.test.js.map +1 -1
- package/dist/cjs/Dialog/Entities/Confirm.js +3 -0
- package/dist/cjs/Dialog/Entities/Confirm.js.map +1 -1
- package/dist/cjs/Dialog/Entities/Confirm.test.js +12 -0
- package/dist/cjs/Dialog/Entities/Confirm.test.js.map +1 -1
- package/dist/cjs/Dialog/Entities/DialogQueue.js +16 -3
- package/dist/cjs/Dialog/Entities/DialogQueue.js.map +1 -1
- package/dist/cjs/Dialog/Entities/DialogQueue.test.js +21 -0
- package/dist/cjs/Dialog/Entities/DialogQueue.test.js.map +1 -1
- package/dist/cjs/Dialog/Entities/MarkDownEditor.js +3 -0
- package/dist/cjs/Dialog/Entities/MarkDownEditor.js.map +1 -1
- package/dist/cjs/Dialog/Entities/MarkDownEditor.test.js +12 -0
- package/dist/cjs/Dialog/Entities/MarkDownEditor.test.js.map +1 -1
- package/dist/cjs/Dialog/Entities/SelectModel.js +1 -0
- package/dist/cjs/Dialog/Entities/SelectModel.js.map +1 -1
- package/dist/cjs/Dialog/Entities/Spinner.js +2 -0
- package/dist/cjs/Dialog/Entities/Spinner.js.map +1 -1
- package/dist/cjs/Dialog/Entities/Spinner.test.js +17 -0
- package/dist/cjs/Dialog/Entities/Spinner.test.js.map +1 -1
- package/dist/cjs/Handler/setupStandardHostHandlers.js +1 -0
- package/dist/cjs/Handler/setupStandardHostHandlers.js.map +1 -1
- package/dist/cjs/StateMachine/Adapters/hostStateAdapter.js +24 -0
- package/dist/cjs/StateMachine/Adapters/hostStateAdapter.js.map +1 -0
- package/dist/cjs/StateMachine/Adapters/hostStateAdapter.test.js +49 -0
- package/dist/cjs/StateMachine/Adapters/hostStateAdapter.test.js.map +1 -0
- package/dist/cjs/StateMachine/Adapters/index.js +1 -0
- package/dist/cjs/StateMachine/Adapters/index.js.map +1 -1
- package/dist/cjs/StateMachine/Controllers/editStateName.js +13 -0
- package/dist/cjs/StateMachine/Controllers/editStateName.js.map +1 -0
- package/dist/cjs/StateMachine/Controllers/editStateName.test.js +49 -0
- package/dist/cjs/StateMachine/Controllers/editStateName.test.js.map +1 -0
- package/dist/cjs/StateMachine/Controllers/index.js +1 -0
- package/dist/cjs/StateMachine/Controllers/index.js.map +1 -1
- package/dist/cjs/StateMachine/Entities/HostStateMachine.js +67 -24
- package/dist/cjs/StateMachine/Entities/HostStateMachine.js.map +1 -1
- package/dist/cjs/StateMachine/Entities/HostStateMachine.test.js +174 -0
- package/dist/cjs/StateMachine/Entities/HostStateMachine.test.js.map +1 -1
- package/dist/cjs/StateMachine/Mocks/MockEditStateNameUC.js +12 -0
- package/dist/cjs/StateMachine/Mocks/MockEditStateNameUC.js.map +1 -0
- package/dist/cjs/StateMachine/Mocks/MockHostStatePM.js +23 -0
- package/dist/cjs/StateMachine/Mocks/MockHostStatePM.js.map +1 -0
- package/dist/cjs/StateMachine/PMs/HostStateMachinePM.js +21 -15
- package/dist/cjs/StateMachine/PMs/HostStateMachinePM.js.map +1 -1
- package/dist/cjs/StateMachine/PMs/HostStateMachinePM.test.js +65 -56
- package/dist/cjs/StateMachine/PMs/HostStateMachinePM.test.js.map +1 -1
- package/dist/cjs/StateMachine/PMs/HostStatePM.js +136 -0
- package/dist/cjs/StateMachine/PMs/HostStatePM.js.map +1 -0
- package/dist/cjs/StateMachine/PMs/HostStatePM.test.js +405 -0
- package/dist/cjs/StateMachine/PMs/HostStatePM.test.js.map +1 -0
- package/dist/cjs/StateMachine/PMs/index.js +1 -0
- package/dist/cjs/StateMachine/PMs/index.js.map +1 -1
- package/dist/cjs/StateMachine/UCs/EditStateNameUC.js +35 -0
- package/dist/cjs/StateMachine/UCs/EditStateNameUC.js.map +1 -0
- package/dist/cjs/StateMachine/UCs/EditStateNameUC.test.js +58 -0
- package/dist/cjs/StateMachine/UCs/EditStateNameUC.test.js.map +1 -0
- package/dist/cjs/StateMachine/UCs/index.js +1 -0
- package/dist/cjs/StateMachine/UCs/index.js.map +1 -1
- package/dist/cjs/VivedAPI/Mocks/MockSignedAuthToken.js +1 -2
- package/dist/cjs/VivedAPI/Mocks/MockSignedAuthToken.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/DeleteAssetOnAPIUC.js +1 -1
- package/dist/cjs/VivedAPI/UCs/DeleteAssetOnAPIUC.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/DeleteAssetOnAPIUC.test.js +2 -2
- package/dist/cjs/VivedAPI/UCs/DeleteAssetOnAPIUC.test.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/GetAppFromAPIUC.js +1 -1
- package/dist/cjs/VivedAPI/UCs/GetAppFromAPIUC.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/GetAppFromAPIUC.test.js +2 -2
- package/dist/cjs/VivedAPI/UCs/GetAppFromAPIUC.test.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.js +1 -1
- package/dist/cjs/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.test.js +2 -2
- package/dist/cjs/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.test.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/PatchAssetFileUC.js +1 -1
- package/dist/cjs/VivedAPI/UCs/PatchAssetFileUC.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/PatchAssetFileUC.test.js +2 -2
- package/dist/cjs/VivedAPI/UCs/PatchAssetFileUC.test.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/PatchAssetIsArchivedUC.js +1 -1
- package/dist/cjs/VivedAPI/UCs/PatchAssetIsArchivedUC.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/PatchAssetIsArchivedUC.test.js +2 -2
- package/dist/cjs/VivedAPI/UCs/PatchAssetIsArchivedUC.test.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/PatchAssetMetaUC.js +1 -1
- package/dist/cjs/VivedAPI/UCs/PatchAssetMetaUC.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/PatchAssetMetaUC.test.js +2 -2
- package/dist/cjs/VivedAPI/UCs/PatchAssetMetaUC.test.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/PatchAssetUC.js +2 -3
- package/dist/cjs/VivedAPI/UCs/PatchAssetUC.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/PatchAssetUC.test.js +2 -2
- package/dist/cjs/VivedAPI/UCs/PatchAssetUC.test.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/PostNewAssetUC.js +2 -3
- package/dist/cjs/VivedAPI/UCs/PostNewAssetUC.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/PostNewAssetUC.test.js +2 -2
- package/dist/cjs/VivedAPI/UCs/PostNewAssetUC.test.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/SignedAuthTokenUC.js.map +1 -1
- package/dist/esm/AppSandbox/Factories/setupAppSandbox.js +6 -0
- package/dist/esm/AppSandbox/Factories/setupAppSandbox.js.map +1 -1
- package/dist/esm/AppSandbox/UCs/submitActivityAssetHandlerSandbox.js +34 -0
- package/dist/esm/AppSandbox/UCs/submitActivityAssetHandlerSandbox.js.map +1 -0
- package/dist/esm/AppSandbox/UCs/submitActivityAssetHandlerSandbox.test.js +53 -0
- package/dist/esm/AppSandbox/UCs/submitActivityAssetHandlerSandbox.test.js.map +1 -0
- package/dist/esm/Assets/Factories/setupAssetsForSandbox.js +2 -1
- package/dist/esm/Assets/Factories/setupAssetsForSandbox.js.map +1 -1
- package/dist/esm/Assets/Mocks/MockNewAssetUC.js +11 -0
- package/dist/esm/Assets/Mocks/MockNewAssetUC.js.map +1 -0
- package/dist/esm/Assets/Mocks/index.js +1 -0
- package/dist/esm/Assets/Mocks/index.js.map +1 -1
- package/dist/esm/Assets/UCs/NewAppAssetUC.js.map +1 -1
- package/dist/esm/Assets/UCs/NewAppAssetUC.test.js.map +1 -1
- package/dist/esm/Assets/UCs/NewAssetUC.js +48 -0
- package/dist/esm/Assets/UCs/NewAssetUC.js.map +1 -0
- package/dist/esm/Assets/UCs/NewAssetUC.test.js +102 -0
- package/dist/esm/Assets/UCs/NewAssetUC.test.js.map +1 -0
- package/dist/esm/Assets/UCs/index.js +1 -0
- package/dist/esm/Assets/UCs/index.js.map +1 -1
- package/dist/esm/Dialog/Entities/Alert.js +2 -0
- package/dist/esm/Dialog/Entities/Alert.js.map +1 -1
- package/dist/esm/Dialog/Entities/Alert.test.js +6 -0
- package/dist/esm/Dialog/Entities/Alert.test.js.map +1 -1
- package/dist/esm/Dialog/Entities/Confirm.js +3 -0
- package/dist/esm/Dialog/Entities/Confirm.js.map +1 -1
- package/dist/esm/Dialog/Entities/Confirm.test.js +12 -0
- package/dist/esm/Dialog/Entities/Confirm.test.js.map +1 -1
- package/dist/esm/Dialog/Entities/DialogQueue.js +17 -4
- package/dist/esm/Dialog/Entities/DialogQueue.js.map +1 -1
- package/dist/esm/Dialog/Entities/DialogQueue.test.js +21 -0
- package/dist/esm/Dialog/Entities/DialogQueue.test.js.map +1 -1
- package/dist/esm/Dialog/Entities/MarkDownEditor.js +3 -0
- package/dist/esm/Dialog/Entities/MarkDownEditor.js.map +1 -1
- package/dist/esm/Dialog/Entities/MarkDownEditor.test.js +12 -0
- package/dist/esm/Dialog/Entities/MarkDownEditor.test.js.map +1 -1
- package/dist/esm/Dialog/Entities/SelectModel.js +1 -0
- package/dist/esm/Dialog/Entities/SelectModel.js.map +1 -1
- package/dist/esm/Dialog/Entities/Spinner.js +2 -0
- package/dist/esm/Dialog/Entities/Spinner.js.map +1 -1
- package/dist/esm/Dialog/Entities/Spinner.test.js +17 -0
- package/dist/esm/Dialog/Entities/Spinner.test.js.map +1 -1
- package/dist/esm/Handler/setupStandardHostHandlers.js +2 -1
- package/dist/esm/Handler/setupStandardHostHandlers.js.map +1 -1
- package/dist/esm/StateMachine/Adapters/hostStateAdapter.js +21 -0
- package/dist/esm/StateMachine/Adapters/hostStateAdapter.js.map +1 -0
- package/dist/esm/StateMachine/Adapters/hostStateAdapter.test.js +47 -0
- package/dist/esm/StateMachine/Adapters/hostStateAdapter.test.js.map +1 -0
- package/dist/esm/StateMachine/Adapters/index.js +1 -0
- package/dist/esm/StateMachine/Adapters/index.js.map +1 -1
- package/dist/esm/StateMachine/Controllers/editStateName.js +10 -0
- package/dist/esm/StateMachine/Controllers/editStateName.js.map +1 -0
- package/dist/esm/StateMachine/Controllers/editStateName.test.js +47 -0
- package/dist/esm/StateMachine/Controllers/editStateName.test.js.map +1 -0
- package/dist/esm/StateMachine/Controllers/index.js +1 -0
- package/dist/esm/StateMachine/Controllers/index.js.map +1 -1
- package/dist/esm/StateMachine/Entities/HostStateMachine.js +67 -24
- package/dist/esm/StateMachine/Entities/HostStateMachine.js.map +1 -1
- package/dist/esm/StateMachine/Entities/HostStateMachine.test.js +174 -0
- package/dist/esm/StateMachine/Entities/HostStateMachine.test.js.map +1 -1
- package/dist/esm/StateMachine/Mocks/MockEditStateNameUC.js +8 -0
- package/dist/esm/StateMachine/Mocks/MockEditStateNameUC.js.map +1 -0
- package/dist/esm/StateMachine/Mocks/MockHostStatePM.js +18 -0
- package/dist/esm/StateMachine/Mocks/MockHostStatePM.js.map +1 -0
- package/dist/esm/StateMachine/PMs/HostStateMachinePM.js +21 -15
- package/dist/esm/StateMachine/PMs/HostStateMachinePM.js.map +1 -1
- package/dist/esm/StateMachine/PMs/HostStateMachinePM.test.js +65 -56
- package/dist/esm/StateMachine/PMs/HostStateMachinePM.test.js.map +1 -1
- package/dist/esm/StateMachine/PMs/HostStatePM.js +131 -0
- package/dist/esm/StateMachine/PMs/HostStatePM.js.map +1 -0
- package/dist/esm/StateMachine/PMs/HostStatePM.test.js +403 -0
- package/dist/esm/StateMachine/PMs/HostStatePM.test.js.map +1 -0
- package/dist/esm/StateMachine/PMs/index.js +1 -0
- package/dist/esm/StateMachine/PMs/index.js.map +1 -1
- package/dist/esm/StateMachine/UCs/EditStateNameUC.js +30 -0
- package/dist/esm/StateMachine/UCs/EditStateNameUC.js.map +1 -0
- package/dist/esm/StateMachine/UCs/EditStateNameUC.test.js +56 -0
- package/dist/esm/StateMachine/UCs/EditStateNameUC.test.js.map +1 -0
- package/dist/esm/StateMachine/UCs/index.js +1 -0
- package/dist/esm/StateMachine/UCs/index.js.map +1 -1
- package/dist/esm/VivedAPI/Mocks/MockSignedAuthToken.js +1 -2
- package/dist/esm/VivedAPI/Mocks/MockSignedAuthToken.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/DeleteAssetOnAPIUC.js +1 -1
- package/dist/esm/VivedAPI/UCs/DeleteAssetOnAPIUC.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/DeleteAssetOnAPIUC.test.js +2 -2
- package/dist/esm/VivedAPI/UCs/DeleteAssetOnAPIUC.test.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/GetAppFromAPIUC.js +1 -1
- package/dist/esm/VivedAPI/UCs/GetAppFromAPIUC.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/GetAppFromAPIUC.test.js +2 -2
- package/dist/esm/VivedAPI/UCs/GetAppFromAPIUC.test.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.js +1 -1
- package/dist/esm/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.test.js +2 -2
- package/dist/esm/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.test.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/PatchAssetFileUC.js +1 -1
- package/dist/esm/VivedAPI/UCs/PatchAssetFileUC.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/PatchAssetFileUC.test.js +2 -2
- package/dist/esm/VivedAPI/UCs/PatchAssetFileUC.test.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/PatchAssetIsArchivedUC.js +1 -1
- package/dist/esm/VivedAPI/UCs/PatchAssetIsArchivedUC.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/PatchAssetIsArchivedUC.test.js +2 -2
- package/dist/esm/VivedAPI/UCs/PatchAssetIsArchivedUC.test.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/PatchAssetMetaUC.js +1 -1
- package/dist/esm/VivedAPI/UCs/PatchAssetMetaUC.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/PatchAssetMetaUC.test.js +2 -2
- package/dist/esm/VivedAPI/UCs/PatchAssetMetaUC.test.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/PatchAssetUC.js +2 -3
- package/dist/esm/VivedAPI/UCs/PatchAssetUC.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/PatchAssetUC.test.js +2 -2
- package/dist/esm/VivedAPI/UCs/PatchAssetUC.test.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/PostNewAssetUC.js +2 -3
- package/dist/esm/VivedAPI/UCs/PostNewAssetUC.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/PostNewAssetUC.test.js +2 -2
- package/dist/esm/VivedAPI/UCs/PostNewAssetUC.test.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/SignedAuthTokenUC.js +1 -1
- package/dist/esm/VivedAPI/UCs/SignedAuthTokenUC.js.map +1 -1
- package/dist/types/AppSandbox/Factories/setupAppSandbox.d.ts.map +1 -1
- package/dist/types/AppSandbox/UCs/submitActivityAssetHandlerSandbox.d.ts +4 -0
- package/dist/types/AppSandbox/UCs/submitActivityAssetHandlerSandbox.d.ts.map +1 -0
- package/dist/types/AppSandbox/UCs/submitActivityAssetHandlerSandbox.test.d.ts +2 -0
- package/dist/types/AppSandbox/UCs/submitActivityAssetHandlerSandbox.test.d.ts.map +1 -0
- package/dist/types/Assets/Factories/setupAssetsForSandbox.d.ts.map +1 -1
- package/dist/types/Assets/Mocks/MockNewAssetUC.d.ts +8 -0
- package/dist/types/Assets/Mocks/MockNewAssetUC.d.ts.map +1 -0
- package/dist/types/Assets/Mocks/index.d.ts +1 -0
- package/dist/types/Assets/Mocks/index.d.ts.map +1 -1
- package/dist/types/Assets/UCs/NewAssetUC.d.ts +14 -0
- package/dist/types/Assets/UCs/NewAssetUC.d.ts.map +1 -0
- package/dist/types/Assets/UCs/NewAssetUC.test.d.ts +2 -0
- package/dist/types/Assets/UCs/NewAssetUC.test.d.ts.map +1 -0
- package/dist/types/Assets/UCs/index.d.ts +1 -0
- package/dist/types/Assets/UCs/index.d.ts.map +1 -1
- package/dist/types/Dialog/Entities/Alert.d.ts +1 -0
- package/dist/types/Dialog/Entities/Alert.d.ts.map +1 -1
- package/dist/types/Dialog/Entities/Confirm.d.ts +1 -0
- package/dist/types/Dialog/Entities/Confirm.d.ts.map +1 -1
- package/dist/types/Dialog/Entities/DialogQueue.d.ts +1 -0
- package/dist/types/Dialog/Entities/DialogQueue.d.ts.map +1 -1
- package/dist/types/Dialog/Entities/MarkDownEditor.d.ts +1 -0
- package/dist/types/Dialog/Entities/MarkDownEditor.d.ts.map +1 -1
- package/dist/types/Dialog/Entities/SelectModel.d.ts +1 -0
- package/dist/types/Dialog/Entities/SelectModel.d.ts.map +1 -1
- package/dist/types/Dialog/Entities/Spinner.d.ts +1 -0
- package/dist/types/Dialog/Entities/Spinner.d.ts.map +1 -1
- package/dist/types/Handler/setupStandardHostHandlers.d.ts.map +1 -1
- package/dist/types/StateMachine/Adapters/hostStateAdapter.d.ts +4 -0
- package/dist/types/StateMachine/Adapters/hostStateAdapter.d.ts.map +1 -0
- package/dist/types/StateMachine/Adapters/hostStateAdapter.test.d.ts +2 -0
- package/dist/types/StateMachine/Adapters/hostStateAdapter.test.d.ts.map +1 -0
- package/dist/types/StateMachine/Adapters/index.d.ts +1 -0
- package/dist/types/StateMachine/Adapters/index.d.ts.map +1 -1
- package/dist/types/StateMachine/Controllers/editStateName.d.ts +3 -0
- package/dist/types/StateMachine/Controllers/editStateName.d.ts.map +1 -0
- package/dist/types/StateMachine/Controllers/editStateName.test.d.ts +2 -0
- package/dist/types/StateMachine/Controllers/editStateName.test.d.ts.map +1 -0
- package/dist/types/StateMachine/Controllers/index.d.ts +1 -0
- package/dist/types/StateMachine/Controllers/index.d.ts.map +1 -1
- package/dist/types/StateMachine/Entities/HostStateMachine.d.ts +6 -0
- package/dist/types/StateMachine/Entities/HostStateMachine.d.ts.map +1 -1
- package/dist/types/StateMachine/Mocks/MockEditStateNameUC.d.ts +7 -0
- package/dist/types/StateMachine/Mocks/MockEditStateNameUC.d.ts.map +1 -0
- package/dist/types/StateMachine/Mocks/MockHostStatePM.d.ts +9 -0
- package/dist/types/StateMachine/Mocks/MockHostStatePM.d.ts.map +1 -0
- package/dist/types/StateMachine/PMs/HostStateMachinePM.d.ts +3 -4
- package/dist/types/StateMachine/PMs/HostStateMachinePM.d.ts.map +1 -1
- package/dist/types/StateMachine/PMs/HostStatePM.d.ts +18 -0
- package/dist/types/StateMachine/PMs/HostStatePM.d.ts.map +1 -0
- package/dist/types/StateMachine/PMs/HostStatePM.test.d.ts +2 -0
- package/dist/types/StateMachine/PMs/HostStatePM.test.d.ts.map +1 -0
- package/dist/types/StateMachine/PMs/index.d.ts +1 -0
- package/dist/types/StateMachine/PMs/index.d.ts.map +1 -1
- package/dist/types/StateMachine/UCs/EditStateNameUC.d.ts +9 -0
- package/dist/types/StateMachine/UCs/EditStateNameUC.d.ts.map +1 -0
- package/dist/types/StateMachine/UCs/EditStateNameUC.test.d.ts +2 -0
- package/dist/types/StateMachine/UCs/EditStateNameUC.test.d.ts.map +1 -0
- package/dist/types/StateMachine/UCs/index.d.ts +1 -0
- package/dist/types/StateMachine/UCs/index.d.ts.map +1 -1
- package/dist/types/VivedAPI/Mocks/MockSignedAuthToken.d.ts +1 -2
- package/dist/types/VivedAPI/Mocks/MockSignedAuthToken.d.ts.map +1 -1
- package/dist/types/VivedAPI/UCs/PatchAssetUC.d.ts.map +1 -1
- package/dist/types/VivedAPI/UCs/PostNewAssetUC.d.ts +2 -2
- package/dist/types/VivedAPI/UCs/PostNewAssetUC.d.ts.map +1 -1
- package/dist/types/VivedAPI/UCs/SignedAuthTokenUC.d.ts +1 -2
- package/dist/types/VivedAPI/UCs/SignedAuthTokenUC.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,403 @@
|
|
|
1
|
+
import { makeAppObjectRepo } from "@vived/core";
|
|
2
|
+
import { makeAppRepo } from "../../Apps/Entities/AppRepo";
|
|
3
|
+
import { makeHostStateEntity } from "../Entities/HostStateEntity";
|
|
4
|
+
import { makeHostStateMachine } from "../Entities/HostStateMachine";
|
|
5
|
+
import { HostStatePM, makeHostStatePM } from "./HostStatePM";
|
|
6
|
+
describe("HostStatePM", () => {
|
|
7
|
+
let appObjects;
|
|
8
|
+
let appObject;
|
|
9
|
+
let entity;
|
|
10
|
+
let stateMachine;
|
|
11
|
+
let appRepo;
|
|
12
|
+
let app;
|
|
13
|
+
let pm;
|
|
14
|
+
const testId = "test-state-id";
|
|
15
|
+
const testAppId = "test-app-id";
|
|
16
|
+
const testAppName = "Test App Name";
|
|
17
|
+
beforeEach(() => {
|
|
18
|
+
// Set up the test environment
|
|
19
|
+
appObjects = makeAppObjectRepo();
|
|
20
|
+
// Create the state machine first (it's a singleton)
|
|
21
|
+
const stateMachineAppObject = appObjects.getOrCreate("state-machine-id");
|
|
22
|
+
stateMachine = makeHostStateMachine(stateMachineAppObject);
|
|
23
|
+
// Create app repo (it's a singleton)
|
|
24
|
+
const appRepoObject = appObjects.getOrCreate("app-repo-id");
|
|
25
|
+
appRepo = makeAppRepo(appRepoObject);
|
|
26
|
+
// Create a test app
|
|
27
|
+
app = appRepo.createApp(testAppId);
|
|
28
|
+
app.name = testAppName;
|
|
29
|
+
// Create the state entity
|
|
30
|
+
appObject = appObjects.getOrCreate(testId);
|
|
31
|
+
entity = makeHostStateEntity(appObject);
|
|
32
|
+
entity.appID = testAppId;
|
|
33
|
+
// Create the PM on the same AppObject as the entity
|
|
34
|
+
pm = makeHostStatePM(appObject);
|
|
35
|
+
});
|
|
36
|
+
it("should initialize with a view model", () => {
|
|
37
|
+
expect(pm.lastVM).not.toBeUndefined();
|
|
38
|
+
expect(pm.lastVM?.id).toBe(testId);
|
|
39
|
+
expect(pm.lastVM?.isActive).toBe(false);
|
|
40
|
+
expect(pm.lastVM?.appName).toBe(testAppName);
|
|
41
|
+
expect(pm.lastVM?.canBumpBackwards).toBe(false);
|
|
42
|
+
expect(pm.lastVM?.canBumpForward).toBe(false);
|
|
43
|
+
expect(pm.lastVM?.index).toBe(-1);
|
|
44
|
+
});
|
|
45
|
+
it("should update view when entity changes", () => {
|
|
46
|
+
const spy = jest.spyOn(pm, "doUpdateView");
|
|
47
|
+
entity.notifyOnChange();
|
|
48
|
+
expect(spy).toHaveBeenCalled();
|
|
49
|
+
});
|
|
50
|
+
it("should reflect entity properties in view model", () => {
|
|
51
|
+
const testName = "test state";
|
|
52
|
+
const testData = { key: "value" };
|
|
53
|
+
entity.name = testName;
|
|
54
|
+
entity.setStateData(testData);
|
|
55
|
+
expect(pm.lastVM?.id).toBe(testId);
|
|
56
|
+
expect(pm.lastVM?.name).toBe(testName);
|
|
57
|
+
expect(pm.lastVM?.data).toEqual(testData);
|
|
58
|
+
expect(pm.lastVM?.isActive).toBe(false);
|
|
59
|
+
expect(pm.lastVM?.appName).toBe(testAppName);
|
|
60
|
+
expect(pm.lastVM?.canBumpBackwards).toBe(false);
|
|
61
|
+
expect(pm.lastVM?.canBumpForward).toBe(false);
|
|
62
|
+
expect(pm.lastVM?.index).toBe(-1);
|
|
63
|
+
});
|
|
64
|
+
it("should set isActive to true when state is active in state machine", () => {
|
|
65
|
+
// Add the state to the state machine
|
|
66
|
+
stateMachine.setStates([entity]);
|
|
67
|
+
// Set the state as active
|
|
68
|
+
stateMachine.setActiveStateByID(testId);
|
|
69
|
+
// Check that isActive is true in the view model
|
|
70
|
+
expect(pm.lastVM?.isActive).toBe(true);
|
|
71
|
+
});
|
|
72
|
+
it("should update isActive when state machine active state changes", () => {
|
|
73
|
+
// Add the state to the state machine
|
|
74
|
+
stateMachine.setStates([entity]);
|
|
75
|
+
// Initially not active
|
|
76
|
+
expect(pm.lastVM?.isActive).toBe(false);
|
|
77
|
+
// Make it active
|
|
78
|
+
stateMachine.setActiveStateByID(testId);
|
|
79
|
+
expect(pm.lastVM?.isActive).toBe(true);
|
|
80
|
+
// Clear active state
|
|
81
|
+
stateMachine.clearActiveState();
|
|
82
|
+
expect(pm.lastVM?.isActive).toBe(false);
|
|
83
|
+
});
|
|
84
|
+
it("should handle missing app ID", () => {
|
|
85
|
+
// Create a new entity with no app ID
|
|
86
|
+
const newEntity = makeHostStateEntity(appObjects.getOrCreate("new-entity-id"));
|
|
87
|
+
const newPm = makeHostStatePM(newEntity.appObject);
|
|
88
|
+
// App name should be empty string
|
|
89
|
+
expect(newPm.lastVM?.appName).toBe("");
|
|
90
|
+
});
|
|
91
|
+
it("should handle non-existent app ID", () => {
|
|
92
|
+
// Set app ID to something that doesn't exist
|
|
93
|
+
entity.appID = "non-existent-app";
|
|
94
|
+
// App name should be empty string
|
|
95
|
+
expect(pm.lastVM?.appName).toBe("");
|
|
96
|
+
});
|
|
97
|
+
it("should return true when comparing identical view models in vmsAreEqual", () => {
|
|
98
|
+
const vm1 = {
|
|
99
|
+
id: "same",
|
|
100
|
+
name: "same",
|
|
101
|
+
data: { test: 123 },
|
|
102
|
+
isActive: false,
|
|
103
|
+
appName: "same app",
|
|
104
|
+
canBumpBackwards: true,
|
|
105
|
+
canBumpForward: true,
|
|
106
|
+
index: 0
|
|
107
|
+
};
|
|
108
|
+
const vm2 = {
|
|
109
|
+
id: "same",
|
|
110
|
+
name: "same",
|
|
111
|
+
data: { test: 123 },
|
|
112
|
+
isActive: false,
|
|
113
|
+
appName: "same app",
|
|
114
|
+
canBumpBackwards: true,
|
|
115
|
+
canBumpForward: true,
|
|
116
|
+
index: 0
|
|
117
|
+
};
|
|
118
|
+
expect(pm.vmsAreEqual(vm1, vm2)).toBe(true);
|
|
119
|
+
});
|
|
120
|
+
// Different tests for each property change in vmsAreEqual
|
|
121
|
+
it("should return false when comparing view models with different ids", () => {
|
|
122
|
+
const vm1 = {
|
|
123
|
+
id: "id1",
|
|
124
|
+
name: "same",
|
|
125
|
+
data: { test: 123 },
|
|
126
|
+
isActive: false,
|
|
127
|
+
appName: "same app",
|
|
128
|
+
canBumpBackwards: true,
|
|
129
|
+
canBumpForward: true,
|
|
130
|
+
index: 0
|
|
131
|
+
};
|
|
132
|
+
const vm2 = {
|
|
133
|
+
id: "id2",
|
|
134
|
+
name: "same",
|
|
135
|
+
data: { test: 123 },
|
|
136
|
+
isActive: false,
|
|
137
|
+
appName: "same app",
|
|
138
|
+
canBumpBackwards: true,
|
|
139
|
+
canBumpForward: true,
|
|
140
|
+
index: 0
|
|
141
|
+
};
|
|
142
|
+
expect(pm.vmsAreEqual(vm1, vm2)).toBe(false);
|
|
143
|
+
});
|
|
144
|
+
it("should return false when comparing view models with different names", () => {
|
|
145
|
+
const vm1 = {
|
|
146
|
+
id: "same",
|
|
147
|
+
name: "name1",
|
|
148
|
+
data: { test: 123 },
|
|
149
|
+
isActive: false,
|
|
150
|
+
appName: "same app",
|
|
151
|
+
canBumpBackwards: true,
|
|
152
|
+
canBumpForward: true,
|
|
153
|
+
index: 0
|
|
154
|
+
};
|
|
155
|
+
const vm2 = {
|
|
156
|
+
id: "same",
|
|
157
|
+
name: "name2",
|
|
158
|
+
data: { test: 123 },
|
|
159
|
+
isActive: false,
|
|
160
|
+
appName: "same app",
|
|
161
|
+
canBumpBackwards: true,
|
|
162
|
+
canBumpForward: true,
|
|
163
|
+
index: 0
|
|
164
|
+
};
|
|
165
|
+
expect(pm.vmsAreEqual(vm1, vm2)).toBe(false);
|
|
166
|
+
});
|
|
167
|
+
it("should return false when comparing view models with different data", () => {
|
|
168
|
+
const vm1 = {
|
|
169
|
+
id: "same",
|
|
170
|
+
name: "same",
|
|
171
|
+
data: { test: 123 },
|
|
172
|
+
isActive: false,
|
|
173
|
+
appName: "same app",
|
|
174
|
+
canBumpBackwards: true,
|
|
175
|
+
canBumpForward: true,
|
|
176
|
+
index: 0
|
|
177
|
+
};
|
|
178
|
+
const vm2 = {
|
|
179
|
+
id: "same",
|
|
180
|
+
name: "same",
|
|
181
|
+
data: { test: 456 },
|
|
182
|
+
isActive: false,
|
|
183
|
+
appName: "same app",
|
|
184
|
+
canBumpBackwards: true,
|
|
185
|
+
canBumpForward: true,
|
|
186
|
+
index: 0
|
|
187
|
+
};
|
|
188
|
+
expect(pm.vmsAreEqual(vm1, vm2)).toBe(false);
|
|
189
|
+
});
|
|
190
|
+
it("should return false when comparing view models with different isActive", () => {
|
|
191
|
+
const vm1 = {
|
|
192
|
+
id: "same",
|
|
193
|
+
name: "same",
|
|
194
|
+
data: { test: 123 },
|
|
195
|
+
isActive: false,
|
|
196
|
+
appName: "same app",
|
|
197
|
+
canBumpBackwards: true,
|
|
198
|
+
canBumpForward: true,
|
|
199
|
+
index: 0
|
|
200
|
+
};
|
|
201
|
+
const vm2 = {
|
|
202
|
+
id: "same",
|
|
203
|
+
name: "same",
|
|
204
|
+
data: { test: 123 },
|
|
205
|
+
isActive: true,
|
|
206
|
+
appName: "same app",
|
|
207
|
+
canBumpBackwards: true,
|
|
208
|
+
canBumpForward: true,
|
|
209
|
+
index: 0
|
|
210
|
+
};
|
|
211
|
+
expect(pm.vmsAreEqual(vm1, vm2)).toBe(false);
|
|
212
|
+
});
|
|
213
|
+
it("should return false when comparing view models with different appNames", () => {
|
|
214
|
+
const vm1 = {
|
|
215
|
+
id: "same",
|
|
216
|
+
name: "same",
|
|
217
|
+
data: { test: 123 },
|
|
218
|
+
isActive: false,
|
|
219
|
+
appName: "app1",
|
|
220
|
+
canBumpBackwards: true,
|
|
221
|
+
canBumpForward: true,
|
|
222
|
+
index: 0
|
|
223
|
+
};
|
|
224
|
+
const vm2 = {
|
|
225
|
+
id: "same",
|
|
226
|
+
name: "same",
|
|
227
|
+
data: { test: 123 },
|
|
228
|
+
isActive: false,
|
|
229
|
+
appName: "app2",
|
|
230
|
+
canBumpBackwards: true,
|
|
231
|
+
canBumpForward: true,
|
|
232
|
+
index: 0
|
|
233
|
+
};
|
|
234
|
+
expect(pm.vmsAreEqual(vm1, vm2)).toBe(false);
|
|
235
|
+
});
|
|
236
|
+
it("should return false when comparing view models with different canBumpBackwards", () => {
|
|
237
|
+
const vm1 = {
|
|
238
|
+
id: "same",
|
|
239
|
+
name: "same",
|
|
240
|
+
data: { test: 123 },
|
|
241
|
+
isActive: false,
|
|
242
|
+
appName: "same app",
|
|
243
|
+
canBumpBackwards: true,
|
|
244
|
+
canBumpForward: true,
|
|
245
|
+
index: 0
|
|
246
|
+
};
|
|
247
|
+
const vm2 = {
|
|
248
|
+
id: "same",
|
|
249
|
+
name: "same",
|
|
250
|
+
data: { test: 123 },
|
|
251
|
+
isActive: false,
|
|
252
|
+
appName: "same app",
|
|
253
|
+
canBumpBackwards: false,
|
|
254
|
+
canBumpForward: true,
|
|
255
|
+
index: 0
|
|
256
|
+
};
|
|
257
|
+
expect(pm.vmsAreEqual(vm1, vm2)).toBe(false);
|
|
258
|
+
});
|
|
259
|
+
it("should return false when comparing view models with different canBumpForward", () => {
|
|
260
|
+
const vm1 = {
|
|
261
|
+
id: "same",
|
|
262
|
+
name: "same",
|
|
263
|
+
data: { test: 123 },
|
|
264
|
+
isActive: false,
|
|
265
|
+
appName: "same app",
|
|
266
|
+
canBumpBackwards: true,
|
|
267
|
+
canBumpForward: true,
|
|
268
|
+
index: 0
|
|
269
|
+
};
|
|
270
|
+
const vm2 = {
|
|
271
|
+
id: "same",
|
|
272
|
+
name: "same",
|
|
273
|
+
data: { test: 123 },
|
|
274
|
+
isActive: false,
|
|
275
|
+
appName: "same app",
|
|
276
|
+
canBumpBackwards: true,
|
|
277
|
+
canBumpForward: false,
|
|
278
|
+
index: 0
|
|
279
|
+
};
|
|
280
|
+
expect(pm.vmsAreEqual(vm1, vm2)).toBe(false);
|
|
281
|
+
});
|
|
282
|
+
it("should return false when comparing view models with different indexes", () => {
|
|
283
|
+
const vm1 = {
|
|
284
|
+
id: "same",
|
|
285
|
+
name: "same",
|
|
286
|
+
data: { test: 123 },
|
|
287
|
+
isActive: false,
|
|
288
|
+
appName: "same app",
|
|
289
|
+
canBumpBackwards: true,
|
|
290
|
+
canBumpForward: true,
|
|
291
|
+
index: 0
|
|
292
|
+
};
|
|
293
|
+
const vm2 = {
|
|
294
|
+
id: "same",
|
|
295
|
+
name: "same",
|
|
296
|
+
data: { test: 123 },
|
|
297
|
+
isActive: false,
|
|
298
|
+
appName: "same app",
|
|
299
|
+
canBumpBackwards: true,
|
|
300
|
+
canBumpForward: true,
|
|
301
|
+
index: 1
|
|
302
|
+
};
|
|
303
|
+
expect(pm.vmsAreEqual(vm1, vm2)).toBe(false);
|
|
304
|
+
});
|
|
305
|
+
it("should be available via static getById", () => {
|
|
306
|
+
const retrievedPM = HostStatePM.getById(testId, appObjects);
|
|
307
|
+
expect(retrievedPM).toBe(pm);
|
|
308
|
+
});
|
|
309
|
+
it("should clean up observers on dispose", () => {
|
|
310
|
+
// Spy on removeChangeObserver for entity
|
|
311
|
+
const entitySpy = jest.spyOn(entity, "removeChangeObserver");
|
|
312
|
+
// Spy on removeChangeObserver for state machine
|
|
313
|
+
const stateMachineSpy = jest.spyOn(stateMachine, "removeChangeObserver");
|
|
314
|
+
// Spy on removeChangeObserver for app repo
|
|
315
|
+
const appRepoSpy = jest.spyOn(appRepo, "removeChangeObserver");
|
|
316
|
+
// Dispose the PM
|
|
317
|
+
pm.dispose();
|
|
318
|
+
// Should have called removeChangeObserver on all three
|
|
319
|
+
expect(entitySpy).toHaveBeenCalledWith(expect.any(Function));
|
|
320
|
+
expect(stateMachineSpy).toHaveBeenCalledWith(expect.any(Function));
|
|
321
|
+
// PM should no longer be attached to the AppObject
|
|
322
|
+
expect(appObject.getComponent(HostStatePM.type)).toBeUndefined();
|
|
323
|
+
});
|
|
324
|
+
it("should set canBumpBackwards and canBumpForward correctly based on state position", () => {
|
|
325
|
+
// Create three states
|
|
326
|
+
const state1 = entity; // already created in beforeEach
|
|
327
|
+
const state2 = makeHostStateEntity(appObjects.getOrCreate("state-2"));
|
|
328
|
+
const state3 = makeHostStateEntity(appObjects.getOrCreate("state-3"));
|
|
329
|
+
// Create PMs for each state
|
|
330
|
+
const pm1 = pm; // already created in beforeEach
|
|
331
|
+
const pm2 = makeHostStatePM(state2.appObject);
|
|
332
|
+
const pm3 = makeHostStatePM(state3.appObject);
|
|
333
|
+
// Add states to the state machine
|
|
334
|
+
stateMachine.setStates([state1, state2, state3]);
|
|
335
|
+
// First state should have canBumpBackwards=false, canBumpForward=true
|
|
336
|
+
expect(pm1.lastVM?.canBumpBackwards).toBe(false);
|
|
337
|
+
expect(pm1.lastVM?.canBumpForward).toBe(true);
|
|
338
|
+
// Middle state should have canBumpBackwards=true, canBumpForward=true
|
|
339
|
+
expect(pm2.lastVM?.canBumpBackwards).toBe(true);
|
|
340
|
+
expect(pm2.lastVM?.canBumpForward).toBe(true);
|
|
341
|
+
// Last state should have canBumpBackwards=true, canBumpForward=false
|
|
342
|
+
expect(pm3.lastVM?.canBumpBackwards).toBe(true);
|
|
343
|
+
expect(pm3.lastVM?.canBumpForward).toBe(false);
|
|
344
|
+
});
|
|
345
|
+
it("should update canBumpBackwards and canBumpForward when state position changes", () => {
|
|
346
|
+
// Create two states
|
|
347
|
+
const state1 = entity; // already created in beforeEach
|
|
348
|
+
const state2 = makeHostStateEntity(appObjects.getOrCreate("state-2"));
|
|
349
|
+
// Create PMs for each state
|
|
350
|
+
const pm1 = pm; // already created in beforeEach
|
|
351
|
+
const pm2 = makeHostStatePM(state2.appObject);
|
|
352
|
+
// Initially add just the first state
|
|
353
|
+
stateMachine.setStates([state1]);
|
|
354
|
+
// First and only state should have both properties false
|
|
355
|
+
expect(pm1.lastVM?.canBumpBackwards).toBe(false);
|
|
356
|
+
expect(pm1.lastVM?.canBumpForward).toBe(false);
|
|
357
|
+
// Add the second state
|
|
358
|
+
stateMachine.setStates([state1, state2]);
|
|
359
|
+
// First state should now be able to bump forward
|
|
360
|
+
expect(pm1.lastVM?.canBumpBackwards).toBe(false);
|
|
361
|
+
expect(pm1.lastVM?.canBumpForward).toBe(true);
|
|
362
|
+
// Second state should be able to bump backwards but not forwards
|
|
363
|
+
expect(pm2.lastVM?.canBumpBackwards).toBe(true);
|
|
364
|
+
expect(pm2.lastVM?.canBumpForward).toBe(false);
|
|
365
|
+
// Change order of states
|
|
366
|
+
stateMachine.setStates([state2, state1]);
|
|
367
|
+
// Values should be flipped now
|
|
368
|
+
expect(pm1.lastVM?.canBumpBackwards).toBe(true);
|
|
369
|
+
expect(pm1.lastVM?.canBumpForward).toBe(false);
|
|
370
|
+
expect(pm2.lastVM?.canBumpBackwards).toBe(false);
|
|
371
|
+
expect(pm2.lastVM?.canBumpForward).toBe(true);
|
|
372
|
+
});
|
|
373
|
+
it("should set correct index when state is in state machine", () => {
|
|
374
|
+
// Add the state to the state machine
|
|
375
|
+
stateMachine.setStates([entity]);
|
|
376
|
+
// The index should be 0 (first position)
|
|
377
|
+
expect(pm.lastVM?.index).toBe(0);
|
|
378
|
+
// Add more states before our state
|
|
379
|
+
const state0 = makeHostStateEntity(appObjects.getOrCreate("state-0"));
|
|
380
|
+
stateMachine.setStates([state0, entity]);
|
|
381
|
+
// The index should be 1 (second position)
|
|
382
|
+
expect(pm.lastVM?.index).toBe(1);
|
|
383
|
+
});
|
|
384
|
+
it("should update index when state position changes in state machine", () => {
|
|
385
|
+
// Create two states
|
|
386
|
+
const state1 = entity; // already created in beforeEach
|
|
387
|
+
const state2 = makeHostStateEntity(appObjects.getOrCreate("state-2"));
|
|
388
|
+
// Create PMs for each state
|
|
389
|
+
const pm1 = pm; // already created in beforeEach
|
|
390
|
+
const pm2 = makeHostStatePM(state2.appObject);
|
|
391
|
+
// Add states to the state machine
|
|
392
|
+
stateMachine.setStates([state1, state2]);
|
|
393
|
+
// Check indexes
|
|
394
|
+
expect(pm1.lastVM?.index).toBe(0);
|
|
395
|
+
expect(pm2.lastVM?.index).toBe(1);
|
|
396
|
+
// Change order
|
|
397
|
+
stateMachine.setStates([state2, state1]);
|
|
398
|
+
// Check indexes again
|
|
399
|
+
expect(pm1.lastVM?.index).toBe(1);
|
|
400
|
+
expect(pm2.lastVM?.index).toBe(0);
|
|
401
|
+
});
|
|
402
|
+
});
|
|
403
|
+
//# sourceMappingURL=HostStatePM.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HostStatePM.test.js","sourceRoot":"","sources":["../../../../src/StateMachine/PMs/HostStatePM.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { AppObject, AppObjectRepo, makeAppObjectRepo } from \"@vived/core\";\r\nimport { AppEntity, makeAppEntity } from \"../../Apps/Entities/AppEntity\";\r\nimport { AppRepoEntity, makeAppRepo } from \"../../Apps/Entities/AppRepo\";\r\nimport {\r\n HostStateEntity,\r\n makeHostStateEntity\r\n} from \"../Entities/HostStateEntity\";\r\nimport {\r\n HostStateMachine,\r\n makeHostStateMachine\r\n} from \"../Entities/HostStateMachine\";\r\nimport { HostStatePM, HostStateVM, makeHostStatePM } from \"./HostStatePM\";\r\n\r\ndescribe(\"HostStatePM\", () => {\r\n let appObjects: AppObjectRepo;\r\n let appObject: AppObject;\r\n let entity: HostStateEntity;\r\n let stateMachine: HostStateMachine;\r\n let appRepo: AppRepoEntity;\r\n let app: AppEntity;\r\n let pm: HostStatePM;\r\n const testId = \"test-state-id\";\r\n const testAppId = \"test-app-id\";\r\n const testAppName = \"Test App Name\";\r\n\r\n beforeEach(() => {\r\n // Set up the test environment\r\n appObjects = makeAppObjectRepo();\r\n\r\n // Create the state machine first (it's a singleton)\r\n const stateMachineAppObject = appObjects.getOrCreate(\"state-machine-id\");\r\n stateMachine = makeHostStateMachine(stateMachineAppObject);\r\n\r\n // Create app repo (it's a singleton)\r\n const appRepoObject = appObjects.getOrCreate(\"app-repo-id\");\r\n appRepo = makeAppRepo(appRepoObject);\r\n\r\n // Create a test app\r\n app = appRepo.createApp(testAppId);\r\n app.name = testAppName;\r\n\r\n // Create the state entity\r\n appObject = appObjects.getOrCreate(testId);\r\n entity = makeHostStateEntity(appObject);\r\n entity.appID = testAppId;\r\n\r\n // Create the PM on the same AppObject as the entity\r\n pm = makeHostStatePM(appObject);\r\n });\r\n\r\n it(\"should initialize with a view model\", () => {\r\n expect(pm.lastVM).not.toBeUndefined();\r\n expect(pm.lastVM?.id).toBe(testId);\r\n expect(pm.lastVM?.isActive).toBe(false);\r\n expect(pm.lastVM?.appName).toBe(testAppName);\r\n expect(pm.lastVM?.canBumpBackwards).toBe(false);\r\n expect(pm.lastVM?.canBumpForward).toBe(false);\r\n expect(pm.lastVM?.index).toBe(-1);\r\n });\r\n\r\n it(\"should update view when entity changes\", () => {\r\n const spy = jest.spyOn(pm, \"doUpdateView\");\r\n\r\n entity.notifyOnChange();\r\n\r\n expect(spy).toHaveBeenCalled();\r\n });\r\n\r\n it(\"should reflect entity properties in view model\", () => {\r\n const testName = \"test state\";\r\n const testData = { key: \"value\" };\r\n\r\n entity.name = testName;\r\n entity.setStateData(testData);\r\n\r\n expect(pm.lastVM?.id).toBe(testId);\r\n expect(pm.lastVM?.name).toBe(testName);\r\n expect(pm.lastVM?.data).toEqual(testData);\r\n expect(pm.lastVM?.isActive).toBe(false);\r\n expect(pm.lastVM?.appName).toBe(testAppName);\r\n expect(pm.lastVM?.canBumpBackwards).toBe(false);\r\n expect(pm.lastVM?.canBumpForward).toBe(false);\r\n expect(pm.lastVM?.index).toBe(-1);\r\n });\r\n\r\n it(\"should set isActive to true when state is active in state machine\", () => {\r\n // Add the state to the state machine\r\n stateMachine.setStates([entity]);\r\n\r\n // Set the state as active\r\n stateMachine.setActiveStateByID(testId);\r\n\r\n // Check that isActive is true in the view model\r\n expect(pm.lastVM?.isActive).toBe(true);\r\n });\r\n\r\n it(\"should update isActive when state machine active state changes\", () => {\r\n // Add the state to the state machine\r\n stateMachine.setStates([entity]);\r\n\r\n // Initially not active\r\n expect(pm.lastVM?.isActive).toBe(false);\r\n\r\n // Make it active\r\n stateMachine.setActiveStateByID(testId);\r\n expect(pm.lastVM?.isActive).toBe(true);\r\n\r\n // Clear active state\r\n stateMachine.clearActiveState();\r\n expect(pm.lastVM?.isActive).toBe(false);\r\n });\r\n\r\n it(\"should handle missing app ID\", () => {\r\n // Create a new entity with no app ID\r\n const newEntity = makeHostStateEntity(\r\n appObjects.getOrCreate(\"new-entity-id\")\r\n );\r\n const newPm = makeHostStatePM(newEntity.appObject);\r\n\r\n // App name should be empty string\r\n expect(newPm.lastVM?.appName).toBe(\"\");\r\n });\r\n\r\n it(\"should handle non-existent app ID\", () => {\r\n // Set app ID to something that doesn't exist\r\n entity.appID = \"non-existent-app\";\r\n\r\n // App name should be empty string\r\n expect(pm.lastVM?.appName).toBe(\"\");\r\n });\r\n\r\n it(\"should return true when comparing identical view models in vmsAreEqual\", () => {\r\n const vm1: HostStateVM = {\r\n id: \"same\",\r\n name: \"same\",\r\n data: { test: 123 },\r\n isActive: false,\r\n appName: \"same app\",\r\n canBumpBackwards: true,\r\n canBumpForward: true,\r\n index: 0\r\n };\r\n const vm2: HostStateVM = {\r\n id: \"same\",\r\n name: \"same\",\r\n data: { test: 123 },\r\n isActive: false,\r\n appName: \"same app\",\r\n canBumpBackwards: true,\r\n canBumpForward: true,\r\n index: 0\r\n };\r\n\r\n expect(pm.vmsAreEqual(vm1, vm2)).toBe(true);\r\n });\r\n\r\n // Different tests for each property change in vmsAreEqual\r\n it(\"should return false when comparing view models with different ids\", () => {\r\n const vm1: HostStateVM = {\r\n id: \"id1\",\r\n name: \"same\",\r\n data: { test: 123 },\r\n isActive: false,\r\n appName: \"same app\",\r\n canBumpBackwards: true,\r\n canBumpForward: true,\r\n index: 0\r\n };\r\n const vm2: HostStateVM = {\r\n id: \"id2\",\r\n name: \"same\",\r\n data: { test: 123 },\r\n isActive: false,\r\n appName: \"same app\",\r\n canBumpBackwards: true,\r\n canBumpForward: true,\r\n index: 0\r\n };\r\n\r\n expect(pm.vmsAreEqual(vm1, vm2)).toBe(false);\r\n });\r\n\r\n it(\"should return false when comparing view models with different names\", () => {\r\n const vm1: HostStateVM = {\r\n id: \"same\",\r\n name: \"name1\",\r\n data: { test: 123 },\r\n isActive: false,\r\n appName: \"same app\",\r\n canBumpBackwards: true,\r\n canBumpForward: true,\r\n index: 0\r\n };\r\n const vm2: HostStateVM = {\r\n id: \"same\",\r\n name: \"name2\",\r\n data: { test: 123 },\r\n isActive: false,\r\n appName: \"same app\",\r\n canBumpBackwards: true,\r\n canBumpForward: true,\r\n index: 0\r\n };\r\n\r\n expect(pm.vmsAreEqual(vm1, vm2)).toBe(false);\r\n });\r\n\r\n it(\"should return false when comparing view models with different data\", () => {\r\n const vm1: HostStateVM = {\r\n id: \"same\",\r\n name: \"same\",\r\n data: { test: 123 },\r\n isActive: false,\r\n appName: \"same app\",\r\n canBumpBackwards: true,\r\n canBumpForward: true,\r\n index: 0\r\n };\r\n const vm2: HostStateVM = {\r\n id: \"same\",\r\n name: \"same\",\r\n data: { test: 456 },\r\n isActive: false,\r\n appName: \"same app\",\r\n canBumpBackwards: true,\r\n canBumpForward: true,\r\n index: 0\r\n };\r\n\r\n expect(pm.vmsAreEqual(vm1, vm2)).toBe(false);\r\n });\r\n\r\n it(\"should return false when comparing view models with different isActive\", () => {\r\n const vm1: HostStateVM = {\r\n id: \"same\",\r\n name: \"same\",\r\n data: { test: 123 },\r\n isActive: false,\r\n appName: \"same app\",\r\n canBumpBackwards: true,\r\n canBumpForward: true,\r\n index: 0\r\n };\r\n const vm2: HostStateVM = {\r\n id: \"same\",\r\n name: \"same\",\r\n data: { test: 123 },\r\n isActive: true,\r\n appName: \"same app\",\r\n canBumpBackwards: true,\r\n canBumpForward: true,\r\n index: 0\r\n };\r\n\r\n expect(pm.vmsAreEqual(vm1, vm2)).toBe(false);\r\n });\r\n\r\n it(\"should return false when comparing view models with different appNames\", () => {\r\n const vm1: HostStateVM = {\r\n id: \"same\",\r\n name: \"same\",\r\n data: { test: 123 },\r\n isActive: false,\r\n appName: \"app1\",\r\n canBumpBackwards: true,\r\n canBumpForward: true,\r\n index: 0\r\n };\r\n const vm2: HostStateVM = {\r\n id: \"same\",\r\n name: \"same\",\r\n data: { test: 123 },\r\n isActive: false,\r\n appName: \"app2\",\r\n canBumpBackwards: true,\r\n canBumpForward: true,\r\n index: 0\r\n };\r\n\r\n expect(pm.vmsAreEqual(vm1, vm2)).toBe(false);\r\n });\r\n\r\n it(\"should return false when comparing view models with different canBumpBackwards\", () => {\r\n const vm1: HostStateVM = {\r\n id: \"same\",\r\n name: \"same\",\r\n data: { test: 123 },\r\n isActive: false,\r\n appName: \"same app\",\r\n canBumpBackwards: true,\r\n canBumpForward: true,\r\n index: 0\r\n };\r\n const vm2: HostStateVM = {\r\n id: \"same\",\r\n name: \"same\",\r\n data: { test: 123 },\r\n isActive: false,\r\n appName: \"same app\",\r\n canBumpBackwards: false,\r\n canBumpForward: true,\r\n index: 0\r\n };\r\n\r\n expect(pm.vmsAreEqual(vm1, vm2)).toBe(false);\r\n });\r\n\r\n it(\"should return false when comparing view models with different canBumpForward\", () => {\r\n const vm1: HostStateVM = {\r\n id: \"same\",\r\n name: \"same\",\r\n data: { test: 123 },\r\n isActive: false,\r\n appName: \"same app\",\r\n canBumpBackwards: true,\r\n canBumpForward: true,\r\n index: 0\r\n };\r\n const vm2: HostStateVM = {\r\n id: \"same\",\r\n name: \"same\",\r\n data: { test: 123 },\r\n isActive: false,\r\n appName: \"same app\",\r\n canBumpBackwards: true,\r\n canBumpForward: false,\r\n index: 0\r\n };\r\n\r\n expect(pm.vmsAreEqual(vm1, vm2)).toBe(false);\r\n });\r\n\r\n it(\"should return false when comparing view models with different indexes\", () => {\r\n const vm1: HostStateVM = {\r\n id: \"same\",\r\n name: \"same\",\r\n data: { test: 123 },\r\n isActive: false,\r\n appName: \"same app\",\r\n canBumpBackwards: true,\r\n canBumpForward: true,\r\n index: 0\r\n };\r\n const vm2: HostStateVM = {\r\n id: \"same\",\r\n name: \"same\",\r\n data: { test: 123 },\r\n isActive: false,\r\n appName: \"same app\",\r\n canBumpBackwards: true,\r\n canBumpForward: true,\r\n index: 1\r\n };\r\n\r\n expect(pm.vmsAreEqual(vm1, vm2)).toBe(false);\r\n });\r\n\r\n it(\"should be available via static getById\", () => {\r\n const retrievedPM = HostStatePM.getById(testId, appObjects);\r\n expect(retrievedPM).toBe(pm);\r\n });\r\n\r\n it(\"should clean up observers on dispose\", () => {\r\n // Spy on removeChangeObserver for entity\r\n const entitySpy = jest.spyOn(entity, \"removeChangeObserver\");\r\n\r\n // Spy on removeChangeObserver for state machine\r\n const stateMachineSpy = jest.spyOn(stateMachine, \"removeChangeObserver\");\r\n\r\n // Spy on removeChangeObserver for app repo\r\n const appRepoSpy = jest.spyOn(appRepo, \"removeChangeObserver\");\r\n\r\n // Dispose the PM\r\n pm.dispose();\r\n\r\n // Should have called removeChangeObserver on all three\r\n expect(entitySpy).toHaveBeenCalledWith(expect.any(Function));\r\n expect(stateMachineSpy).toHaveBeenCalledWith(expect.any(Function));\r\n\r\n // PM should no longer be attached to the AppObject\r\n expect(appObject.getComponent(HostStatePM.type)).toBeUndefined();\r\n });\r\n\r\n it(\"should set canBumpBackwards and canBumpForward correctly based on state position\", () => {\r\n // Create three states\r\n const state1 = entity; // already created in beforeEach\r\n const state2 = makeHostStateEntity(appObjects.getOrCreate(\"state-2\"));\r\n const state3 = makeHostStateEntity(appObjects.getOrCreate(\"state-3\"));\r\n\r\n // Create PMs for each state\r\n const pm1 = pm; // already created in beforeEach\r\n const pm2 = makeHostStatePM(state2.appObject);\r\n const pm3 = makeHostStatePM(state3.appObject);\r\n\r\n // Add states to the state machine\r\n stateMachine.setStates([state1, state2, state3]);\r\n\r\n // First state should have canBumpBackwards=false, canBumpForward=true\r\n expect(pm1.lastVM?.canBumpBackwards).toBe(false);\r\n expect(pm1.lastVM?.canBumpForward).toBe(true);\r\n\r\n // Middle state should have canBumpBackwards=true, canBumpForward=true\r\n expect(pm2.lastVM?.canBumpBackwards).toBe(true);\r\n expect(pm2.lastVM?.canBumpForward).toBe(true);\r\n\r\n // Last state should have canBumpBackwards=true, canBumpForward=false\r\n expect(pm3.lastVM?.canBumpBackwards).toBe(true);\r\n expect(pm3.lastVM?.canBumpForward).toBe(false);\r\n });\r\n\r\n it(\"should update canBumpBackwards and canBumpForward when state position changes\", () => {\r\n // Create two states\r\n const state1 = entity; // already created in beforeEach\r\n const state2 = makeHostStateEntity(appObjects.getOrCreate(\"state-2\"));\r\n\r\n // Create PMs for each state\r\n const pm1 = pm; // already created in beforeEach\r\n const pm2 = makeHostStatePM(state2.appObject);\r\n\r\n // Initially add just the first state\r\n stateMachine.setStates([state1]);\r\n\r\n // First and only state should have both properties false\r\n expect(pm1.lastVM?.canBumpBackwards).toBe(false);\r\n expect(pm1.lastVM?.canBumpForward).toBe(false);\r\n\r\n // Add the second state\r\n stateMachine.setStates([state1, state2]);\r\n\r\n // First state should now be able to bump forward\r\n expect(pm1.lastVM?.canBumpBackwards).toBe(false);\r\n expect(pm1.lastVM?.canBumpForward).toBe(true);\r\n\r\n // Second state should be able to bump backwards but not forwards\r\n expect(pm2.lastVM?.canBumpBackwards).toBe(true);\r\n expect(pm2.lastVM?.canBumpForward).toBe(false);\r\n\r\n // Change order of states\r\n stateMachine.setStates([state2, state1]);\r\n\r\n // Values should be flipped now\r\n expect(pm1.lastVM?.canBumpBackwards).toBe(true);\r\n expect(pm1.lastVM?.canBumpForward).toBe(false);\r\n\r\n expect(pm2.lastVM?.canBumpBackwards).toBe(false);\r\n expect(pm2.lastVM?.canBumpForward).toBe(true);\r\n });\r\n\r\n it(\"should set correct index when state is in state machine\", () => {\r\n // Add the state to the state machine\r\n stateMachine.setStates([entity]);\r\n\r\n // The index should be 0 (first position)\r\n expect(pm.lastVM?.index).toBe(0);\r\n\r\n // Add more states before our state\r\n const state0 = makeHostStateEntity(appObjects.getOrCreate(\"state-0\"));\r\n stateMachine.setStates([state0, entity]);\r\n\r\n // The index should be 1 (second position)\r\n expect(pm.lastVM?.index).toBe(1);\r\n });\r\n\r\n it(\"should update index when state position changes in state machine\", () => {\r\n // Create two states\r\n const state1 = entity; // already created in beforeEach\r\n const state2 = makeHostStateEntity(appObjects.getOrCreate(\"state-2\"));\r\n\r\n // Create PMs for each state\r\n const pm1 = pm; // already created in beforeEach\r\n const pm2 = makeHostStatePM(state2.appObject);\r\n\r\n // Add states to the state machine\r\n stateMachine.setStates([state1, state2]);\r\n\r\n // Check indexes\r\n expect(pm1.lastVM?.index).toBe(0);\r\n expect(pm2.lastVM?.index).toBe(1);\r\n\r\n // Change order\r\n stateMachine.setStates([state2, state1]);\r\n\r\n // Check indexes again\r\n expect(pm1.lastVM?.index).toBe(1);\r\n expect(pm2.lastVM?.index).toBe(0);\r\n });\r\n});\r\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/StateMachine/PMs/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC","sourcesContent":["export * from \"./HostStateMachinePM\";\r\nexport * from \"./EditingStatePM\";\r\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/StateMachine/PMs/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC","sourcesContent":["export * from \"./HostStateMachinePM\";\r\nexport * from \"./EditingStatePM\";\r\nexport * from \"./HostStatePM\";\r\n"]}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { AppObjectUC } from "@vived/core";
|
|
2
|
+
import { HostStateEntity } from "../Entities/HostStateEntity";
|
|
3
|
+
export class EditStateNameUC extends AppObjectUC {
|
|
4
|
+
static get(appObj) {
|
|
5
|
+
return appObj.getComponent(this.type);
|
|
6
|
+
}
|
|
7
|
+
static getById(id, appObjects) {
|
|
8
|
+
return appObjects.get(id)?.getComponent(this.type);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
EditStateNameUC.type = "EditStateNameUC";
|
|
12
|
+
export function makeEditStateNameUC(appObject) {
|
|
13
|
+
return new EditStateNameUCImp(appObject);
|
|
14
|
+
}
|
|
15
|
+
class EditStateNameUCImp extends EditStateNameUC {
|
|
16
|
+
get hostStateEntity() {
|
|
17
|
+
return this.getCachedLocalComponent(HostStateEntity.type);
|
|
18
|
+
}
|
|
19
|
+
constructor(appObject) {
|
|
20
|
+
super(appObject, EditStateNameUC.type);
|
|
21
|
+
this.editStateName = (name) => {
|
|
22
|
+
if (!this.hostStateEntity) {
|
|
23
|
+
this.warn("Unable to find HostStateEntity");
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
this.hostStateEntity.name = name;
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=EditStateNameUC.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EditStateNameUC.js","sourceRoot":"","sources":["../../../../src/StateMachine/UCs/EditStateNameUC.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,WAAW,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAE9D,MAAM,OAAgB,eAAgB,SAAQ,WAAW;IAKvD,MAAM,CAAC,GAAG,CAAC,MAAiB;QAC1B,OAAO,MAAM,CAAC,YAAY,CAAkB,IAAI,CAAC,IAAI,CAAC,CAAC;IACzD,CAAC;IAED,MAAM,CAAC,OAAO,CACZ,EAAU,EACV,UAAyB;QAEzB,OAAO,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,YAAY,CAAkB,IAAI,CAAC,IAAI,CAAC,CAAC;IACtE,CAAC;;AAbe,oBAAI,GAAG,iBAAiB,CAAC;AAgB3C,MAAM,UAAU,mBAAmB,CAAC,SAAoB;IACtD,OAAO,IAAI,kBAAkB,CAAC,SAAS,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,kBAAmB,SAAQ,eAAe;IAC9C,IAAY,eAAe;QACzB,OAAO,IAAI,CAAC,uBAAuB,CAAkB,eAAe,CAAC,IAAI,CAAC,CAAC;IAC7E,CAAC;IAWD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;QAVzC,kBAAa,GAAG,CAAC,IAAY,EAAE,EAAE;YAC/B,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;gBAC1B,IAAI,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;gBAC5C,OAAO;YACT,CAAC;YAED,IAAI,CAAC,eAAe,CAAC,IAAI,GAAG,IAAI,CAAC;QACnC,CAAC,CAAC;IAIF,CAAC;CACF","sourcesContent":["import { AppObject, AppObjectRepo, AppObjectUC } from \"@vived/core\";\r\nimport { HostStateEntity } from \"../Entities/HostStateEntity\";\r\n\r\nexport abstract class EditStateNameUC extends AppObjectUC {\r\n static readonly type = \"EditStateNameUC\";\r\n\r\n abstract editStateName(name: string): void;\r\n\r\n static get(appObj: AppObject): EditStateNameUC | undefined {\r\n return appObj.getComponent<EditStateNameUC>(this.type);\r\n }\r\n\r\n static getById(\r\n id: string,\r\n appObjects: AppObjectRepo\r\n ): EditStateNameUC | undefined {\r\n return appObjects.get(id)?.getComponent<EditStateNameUC>(this.type);\r\n }\r\n}\r\n\r\nexport function makeEditStateNameUC(appObject: AppObject): EditStateNameUC {\r\n return new EditStateNameUCImp(appObject);\r\n}\r\n\r\nclass EditStateNameUCImp extends EditStateNameUC {\r\n private get hostStateEntity() {\r\n return this.getCachedLocalComponent<HostStateEntity>(HostStateEntity.type);\r\n }\r\n\r\n editStateName = (name: string) => {\r\n if (!this.hostStateEntity) {\r\n this.warn(\"Unable to find HostStateEntity\");\r\n return;\r\n }\r\n\r\n this.hostStateEntity.name = name;\r\n };\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, EditStateNameUC.type);\r\n }\r\n}\r\n"]}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { makeAppObjectRepo } from "@vived/core";
|
|
2
|
+
import { makeHostStateEntity } from "../Entities/HostStateEntity";
|
|
3
|
+
import { EditStateNameUC, makeEditStateNameUC } from "./EditStateNameUC";
|
|
4
|
+
describe("EditStateNameUC", () => {
|
|
5
|
+
let appObjects;
|
|
6
|
+
let appObject;
|
|
7
|
+
let uc;
|
|
8
|
+
let entity;
|
|
9
|
+
const testId = "test-state-id";
|
|
10
|
+
const initialName = "Initial State Name";
|
|
11
|
+
const newName = "Updated State Name";
|
|
12
|
+
beforeEach(() => {
|
|
13
|
+
// Create a fresh repository and app object for each test
|
|
14
|
+
appObjects = makeAppObjectRepo();
|
|
15
|
+
appObject = appObjects.getOrCreate(testId);
|
|
16
|
+
// Create the entity on the same app object
|
|
17
|
+
entity = makeHostStateEntity(appObject);
|
|
18
|
+
entity.name = initialName;
|
|
19
|
+
// Create the use case
|
|
20
|
+
uc = makeEditStateNameUC(appObject);
|
|
21
|
+
});
|
|
22
|
+
it("should edit the state name in the entity", () => {
|
|
23
|
+
// Test the main functionality
|
|
24
|
+
uc.editStateName(newName);
|
|
25
|
+
// Verify the entity was updated
|
|
26
|
+
expect(entity.name).toBe(newName);
|
|
27
|
+
});
|
|
28
|
+
it("should log a warning when entity is not found", () => {
|
|
29
|
+
// Create a new app object without the required entity
|
|
30
|
+
const newAppObject = appObjects.getOrCreate("another-id");
|
|
31
|
+
// Spy on the warn method
|
|
32
|
+
const warnSpy = jest.spyOn(appObjects, "submitWarning");
|
|
33
|
+
// Create a use case without the dependency
|
|
34
|
+
const isolatedUC = makeEditStateNameUC(newAppObject);
|
|
35
|
+
// Execute the use case
|
|
36
|
+
isolatedUC.editStateName(newName);
|
|
37
|
+
// Verify warning was logged
|
|
38
|
+
expect(warnSpy).toHaveBeenCalled();
|
|
39
|
+
});
|
|
40
|
+
it("should be retrievable via static get method", () => {
|
|
41
|
+
// Test the component access pattern
|
|
42
|
+
const retrievedUC = EditStateNameUC.get(appObject);
|
|
43
|
+
expect(retrievedUC).toBe(uc);
|
|
44
|
+
});
|
|
45
|
+
it("should be retrievable via static getById method", () => {
|
|
46
|
+
// Test ID-based retrieval
|
|
47
|
+
const retrievedUC = EditStateNameUC.getById(testId, appObjects);
|
|
48
|
+
expect(retrievedUC).toBe(uc);
|
|
49
|
+
});
|
|
50
|
+
it("should return undefined when getById is called with non-existent id", () => {
|
|
51
|
+
// Test graceful handling of missing components
|
|
52
|
+
const retrievedUC = EditStateNameUC.getById("non-existent-id", appObjects);
|
|
53
|
+
expect(retrievedUC).toBeUndefined();
|
|
54
|
+
});
|
|
55
|
+
});
|
|
56
|
+
//# sourceMappingURL=EditStateNameUC.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EditStateNameUC.test.js","sourceRoot":"","sources":["../../../../src/StateMachine/UCs/EditStateNameUC.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC1E,OAAO,EAEL,mBAAmB,EACpB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAEzE,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,IAAI,UAAyB,CAAC;IAC9B,IAAI,SAAoB,CAAC;IACzB,IAAI,EAAmB,CAAC;IACxB,IAAI,MAAuB,CAAC;IAC5B,MAAM,MAAM,GAAG,eAAe,CAAC;IAC/B,MAAM,WAAW,GAAG,oBAAoB,CAAC;IACzC,MAAM,OAAO,GAAG,oBAAoB,CAAC;IAErC,UAAU,CAAC,GAAG,EAAE;QACd,yDAAyD;QACzD,UAAU,GAAG,iBAAiB,EAAE,CAAC;QACjC,SAAS,GAAG,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAE3C,2CAA2C;QAC3C,MAAM,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;QACxC,MAAM,CAAC,IAAI,GAAG,WAAW,CAAC;QAE1B,sBAAsB;QACtB,EAAE,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;QAClD,8BAA8B;QAC9B,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAE1B,gCAAgC;QAChC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,sDAAsD;QACtD,MAAM,YAAY,GAAG,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAE1D,yBAAyB;QACzB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;QAExD,2CAA2C;QAC3C,MAAM,UAAU,GAAG,mBAAmB,CAAC,YAAY,CAAC,CAAC;QAErD,uBAAuB;QACvB,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAElC,4BAA4B;QAC5B,MAAM,CAAC,OAAO,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACrC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,oCAAoC;QACpC,MAAM,WAAW,GAAG,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACnD,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,0BAA0B;QAC1B,MAAM,WAAW,GAAG,eAAe,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAChE,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qEAAqE,EAAE,GAAG,EAAE;QAC7E,+CAA+C;QAC/C,MAAM,WAAW,GAAG,eAAe,CAAC,OAAO,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;QAC3E,MAAM,CAAC,WAAW,CAAC,CAAC,aAAa,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { AppObject, AppObjectRepo, makeAppObjectRepo } from \"@vived/core\";\r\nimport {\r\n HostStateEntity,\r\n makeHostStateEntity\r\n} from \"../Entities/HostStateEntity\";\r\nimport { EditStateNameUC, makeEditStateNameUC } from \"./EditStateNameUC\";\r\n\r\ndescribe(\"EditStateNameUC\", () => {\r\n let appObjects: AppObjectRepo;\r\n let appObject: AppObject;\r\n let uc: EditStateNameUC;\r\n let entity: HostStateEntity;\r\n const testId = \"test-state-id\";\r\n const initialName = \"Initial State Name\";\r\n const newName = \"Updated State Name\";\r\n\r\n beforeEach(() => {\r\n // Create a fresh repository and app object for each test\r\n appObjects = makeAppObjectRepo();\r\n appObject = appObjects.getOrCreate(testId);\r\n\r\n // Create the entity on the same app object\r\n entity = makeHostStateEntity(appObject);\r\n entity.name = initialName;\r\n\r\n // Create the use case\r\n uc = makeEditStateNameUC(appObject);\r\n });\r\n\r\n it(\"should edit the state name in the entity\", () => {\r\n // Test the main functionality\r\n uc.editStateName(newName);\r\n\r\n // Verify the entity was updated\r\n expect(entity.name).toBe(newName);\r\n });\r\n\r\n it(\"should log a warning when entity is not found\", () => {\r\n // Create a new app object without the required entity\r\n const newAppObject = appObjects.getOrCreate(\"another-id\");\r\n\r\n // Spy on the warn method\r\n const warnSpy = jest.spyOn(appObjects, \"submitWarning\");\r\n\r\n // Create a use case without the dependency\r\n const isolatedUC = makeEditStateNameUC(newAppObject);\r\n\r\n // Execute the use case\r\n isolatedUC.editStateName(newName);\r\n\r\n // Verify warning was logged\r\n expect(warnSpy).toHaveBeenCalled();\r\n });\r\n\r\n it(\"should be retrievable via static get method\", () => {\r\n // Test the component access pattern\r\n const retrievedUC = EditStateNameUC.get(appObject);\r\n expect(retrievedUC).toBe(uc);\r\n });\r\n\r\n it(\"should be retrievable via static getById method\", () => {\r\n // Test ID-based retrieval\r\n const retrievedUC = EditStateNameUC.getById(testId, appObjects);\r\n expect(retrievedUC).toBe(uc);\r\n });\r\n\r\n it(\"should return undefined when getById is called with non-existent id\", () => {\r\n // Test graceful handling of missing components\r\n const retrievedUC = EditStateNameUC.getById(\"non-existent-id\", appObjects);\r\n expect(retrievedUC).toBeUndefined();\r\n });\r\n});\r\n"]}
|
|
@@ -2,6 +2,7 @@ export * from "./CancelEditing";
|
|
|
2
2
|
export * from "./ConsumeState";
|
|
3
3
|
export * from "./DeleteStateUC";
|
|
4
4
|
export * from "./DuplicateStateUC";
|
|
5
|
+
export * from "./EditStateNameUC";
|
|
5
6
|
export * from "./EditActiveState";
|
|
6
7
|
export * from "./EditState";
|
|
7
8
|
export * from "./EndActivity";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/StateMachine/UCs/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kCAAkC,CAAC","sourcesContent":["export * from \"./CancelEditing\";\r\nexport * from \"./ConsumeState\";\r\nexport * from \"./DeleteStateUC\";\r\nexport * from \"./DuplicateStateUC\";\r\nexport * from \"./EditActiveState\";\r\nexport * from \"./EditState\";\r\nexport * from \"./EndActivity\";\r\nexport * from \"./NewState\";\r\nexport * from \"./SaveAuthoring\";\r\nexport * from \"./TransitionToState\";\r\nexport * from \"./SavePersistentStates\";\r\nexport * from \"./setSandboxStatesFromData\";\r\nexport * from \"./setSandboxStatesFromStringData\";\r\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/StateMachine/UCs/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kCAAkC,CAAC","sourcesContent":["export * from \"./CancelEditing\";\r\nexport * from \"./ConsumeState\";\r\nexport * from \"./DeleteStateUC\";\r\nexport * from \"./DuplicateStateUC\";\r\nexport * from \"./EditStateNameUC\";\r\nexport * from \"./EditActiveState\";\r\nexport * from \"./EditState\";\r\nexport * from \"./EndActivity\";\r\nexport * from \"./NewState\";\r\nexport * from \"./SaveAuthoring\";\r\nexport * from \"./TransitionToState\";\r\nexport * from \"./SavePersistentStates\";\r\nexport * from \"./setSandboxStatesFromData\";\r\nexport * from \"./setSandboxStatesFromStringData\";\r\n"]}
|
|
@@ -2,8 +2,7 @@ import { SignedAuthTokenUC } from "../UCs/SignedAuthTokenUC";
|
|
|
2
2
|
export class MockSignedAuthTokenUC extends SignedAuthTokenUC {
|
|
3
3
|
constructor(appObject) {
|
|
4
4
|
super(appObject, SignedAuthTokenUC.type);
|
|
5
|
-
this.
|
|
6
|
-
this.getUserAuthToken = jest.fn();
|
|
5
|
+
this.getAuthToken = jest.fn();
|
|
7
6
|
}
|
|
8
7
|
}
|
|
9
8
|
export function makeMockSignedAuthTokenUC(appObjects) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MockSignedAuthToken.js","sourceRoot":"","sources":["../../../../src/VivedAPI/Mocks/MockSignedAuthToken.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,MAAM,OAAO,qBAAsB,SAAQ,iBAAiB;
|
|
1
|
+
{"version":3,"file":"MockSignedAuthToken.js","sourceRoot":"","sources":["../../../../src/VivedAPI/Mocks/MockSignedAuthToken.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,MAAM,OAAO,qBAAsB,SAAQ,iBAAiB;IAG1D,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAH3C,iBAAY,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAIzB,CAAC;CACF;AAED,MAAM,UAAU,yBAAyB,CAAC,UAAyB;IACjE,OAAO,IAAI,qBAAqB,CAC9B,UAAU,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAChD,CAAC;AACJ,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\r\nimport { SignedAuthTokenUC } from \"../UCs/SignedAuthTokenUC\";\r\n\r\nexport class MockSignedAuthTokenUC extends SignedAuthTokenUC {\r\n getAuthToken = jest.fn();\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, SignedAuthTokenUC.type);\r\n }\r\n}\r\n\r\nexport function makeMockSignedAuthTokenUC(appObjects: AppObjectRepo) {\r\n return new MockSignedAuthTokenUC(\r\n appObjects.getOrCreate(\"MockSignedAuthTokenUC\")\r\n );\r\n}\r\n"]}
|
|
@@ -18,7 +18,7 @@ class DeleteAssetUCImp extends DeleteAssetOnAPIUC {
|
|
|
18
18
|
}
|
|
19
19
|
get getAuthToken() {
|
|
20
20
|
return this.getCachedSingleton(SignedAuthTokenUC.type)
|
|
21
|
-
?.
|
|
21
|
+
?.getAuthToken;
|
|
22
22
|
}
|
|
23
23
|
get vivedAPI() {
|
|
24
24
|
return this.getCachedSingleton(VivedAPIEntity.type);
|