mongodb-dynamic-api 4.24.0 → 5.0.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/CHANGELOG.md +134 -0
- package/README.md +79 -2
- package/codemods/migrate-v5/cli.d.ts +3 -0
- package/codemods/migrate-v5/cli.js +38 -0
- package/codemods/migrate-v5/cli.js.map +1 -0
- package/codemods/migrate-v5/migrate-v5.d.ts +18 -0
- package/codemods/migrate-v5/migrate-v5.js +258 -0
- package/codemods/migrate-v5/migrate-v5.js.map +1 -0
- package/codemods/migrate-v5/removed-symbols.d.ts +7 -0
- package/codemods/migrate-v5/removed-symbols.js +122 -0
- package/codemods/migrate-v5/removed-symbols.js.map +1 -0
- package/package.json +44 -55
- package/schematics/resource/files/__name@dasherize__.entity.ts.template +3 -3
- package/schematics.tsbuildinfo +1 -1
- package/src/adapters/socket-adapter.js +5 -6
- package/src/adapters/socket-adapter.js.map +1 -1
- package/src/builders/route-decorators/auth-decorators.builder.d.ts +1 -1
- package/src/builders/route-decorators/paginated-response.builder.d.ts +3 -0
- package/src/builders/route-decorators/paginated-response.builder.js +35 -0
- package/src/builders/route-decorators/paginated-response.builder.js.map +1 -0
- package/src/builders/route-decorators/route-decorators.builder.d.ts +3 -2
- package/src/builders/route-decorators/route-decorators.builder.js +14 -6
- package/src/builders/route-decorators/route-decorators.builder.js.map +1 -1
- package/src/decorators/entity-exists.decorator.js +2 -2
- package/src/decorators/entity-exists.decorator.js.map +1 -1
- package/src/decorators/index.d.ts +2 -5
- package/src/decorators/index.js +4 -5
- package/src/decorators/index.js.map +1 -1
- package/src/decorators/is-unique.decorator.js +2 -2
- package/src/decorators/is-unique.decorator.js.map +1 -1
- package/src/decorators/schema.decorator.d.ts +5 -0
- package/src/decorators/schema.decorator.js +15 -0
- package/src/decorators/schema.decorator.js.map +1 -0
- package/src/dtos/index.d.ts +0 -4
- package/src/dtos/index.js +0 -4
- package/src/dtos/index.js.map +1 -1
- package/src/dynamic-api.module.d.ts +1 -1
- package/src/dynamic-api.module.js +25 -20
- package/src/dynamic-api.module.js.map +1 -1
- package/src/gateways/base.gateway.js +9 -8
- package/src/gateways/base.gateway.js.map +1 -1
- package/src/gateways/dynamic-api-broadcast.gateway.d.ts +2 -2
- package/src/gateways/dynamic-api-broadcast.gateway.js +5 -5
- package/src/gateways/dynamic-api-broadcast.gateway.js.map +1 -1
- package/src/guards/base-policies.guard.d.ts +1 -1
- package/src/guards/base-policies.guard.js +5 -5
- package/src/guards/base-policies.guard.js.map +1 -1
- package/src/guards/dynamic-api-jwt-auth.guard.d.ts +1 -1
- package/src/guards/dynamic-api-jwt-auth.guard.js +7 -4
- package/src/guards/dynamic-api-jwt-auth.guard.js.map +1 -1
- package/src/guards/jwt-socket.guard.d.ts +1 -1
- package/src/guards/jwt-socket.guard.js +9 -10
- package/src/guards/jwt-socket.guard.js.map +1 -1
- package/src/helpers/event-registry.store.js +2 -2
- package/src/helpers/event-registry.store.js.map +1 -1
- package/src/helpers/index-sync.helper.js +4 -4
- package/src/helpers/index-sync.helper.js.map +1 -1
- package/src/helpers/index.d.ts +3 -21
- package/src/helpers/index.js +6 -21
- package/src/helpers/index.js.map +1 -1
- package/src/helpers/mint-token-pair.helper.js +11 -12
- package/src/helpers/mint-token-pair.helper.js.map +1 -1
- package/src/helpers/mixin-data.helper.d.ts +2 -2
- package/src/helpers/mixin-data.helper.js +2 -2
- package/src/helpers/mixin-data.helper.js.map +1 -1
- package/src/helpers/paging-presenter-warning.helper.js +2 -2
- package/src/helpers/paging-presenter-warning.helper.js.map +1 -1
- package/src/helpers/repository.helper.js +2 -2
- package/src/helpers/repository.helper.js.map +1 -1
- package/src/helpers/route-decorators.helper.d.ts +1 -1
- package/src/helpers/schema.helper.js.map +1 -1
- package/src/helpers/socket-config.helper.d.ts +0 -1
- package/src/helpers/socket-config.helper.js +9 -19
- package/src/helpers/socket-config.helper.js.map +1 -1
- package/src/helpers/swagger-config.helper.d.ts +2 -2
- package/src/helpers/swagger-config.helper.js.map +1 -1
- package/src/helpers/validation-config.helper.js.map +1 -1
- package/src/helpers/versioning-config.helper.js.map +1 -1
- package/src/index.d.ts +0 -9
- package/src/index.js +0 -9
- package/src/index.js.map +1 -1
- package/src/interceptors/dynamic-api-cache.interceptor.d.ts +1 -1
- package/src/interceptors/dynamic-api-cache.interceptor.js +4 -0
- package/src/interceptors/dynamic-api-cache.interceptor.js.map +1 -1
- package/src/interfaces/dynamic-api-options.interface.d.ts +2 -2
- package/src/interfaces/dynamic-api-route-config.interface.d.ts +1 -2
- package/src/interfaces/dynamic-api-route-config.interface.js.map +1 -1
- package/src/interfaces/dynamic-api-schema-options.interface.d.ts +2 -3
- package/src/interfaces/dynamic-api-service-before-save-callback.interface.d.ts +1 -15
- package/src/interfaces/dynamic-api-service-callback.interface.d.ts +1 -3
- package/src/interfaces/dynamic-api-service-provider.interface.d.ts +1 -2
- package/src/interfaces/dynamic-api-swagger-options.type.d.ts +1 -3
- package/src/interfaces/index.d.ts +4 -7
- package/src/interfaces/index.js +0 -7
- package/src/interfaces/index.js.map +1 -1
- package/src/logger/index.d.ts +1 -1
- package/src/logger/index.js +0 -15
- package/src/logger/index.js.map +1 -1
- package/src/mixins/policies-guard.mixin.d.ts +2 -1
- package/src/mixins/policies-guard.mixin.js +3 -3
- package/src/mixins/policies-guard.mixin.js.map +1 -1
- package/src/models/base-entity.model.js.map +1 -1
- package/src/models/soft-deletable-entity.model.js.map +1 -1
- package/src/modules/auth/auth-broadcast.helper.js +2 -2
- package/src/modules/auth/auth-broadcast.helper.js.map +1 -1
- package/src/modules/auth/auth.helper.d.ts +3 -3
- package/src/modules/auth/auth.helper.js +12 -11
- package/src/modules/auth/auth.helper.js.map +1 -1
- package/src/modules/auth/auth.module.js +15 -11
- package/src/modules/auth/auth.module.js.map +1 -1
- package/src/modules/auth/guards/jwt-socket-auth/jwt-socket-auth.guard.d.ts +1 -1
- package/src/modules/auth/guards/jwt-socket-auth/jwt-socket-auth.guard.js +7 -8
- package/src/modules/auth/guards/jwt-socket-auth/jwt-socket-auth.guard.js.map +1 -1
- package/src/modules/auth/guards/jwt-socket-refresh/jwt-socket-refresh.guard.js +4 -4
- package/src/modules/auth/guards/jwt-socket-refresh/jwt-socket-refresh.guard.js.map +1 -1
- package/src/modules/auth/interfaces/auth-controller.interface.d.ts +1 -1
- package/src/modules/auth/interfaces/auth-gateway.interface.d.ts +2 -1
- package/src/modules/auth/mixins/auth-controller.mixin.js +23 -17
- package/src/modules/auth/mixins/auth-controller.mixin.js.map +1 -1
- package/src/modules/auth/mixins/auth-gateway.mixin.js +8 -6
- package/src/modules/auth/mixins/auth-gateway.mixin.js.map +1 -1
- package/src/modules/auth/mixins/auth-policies-guard.mixin.d.ts +2 -1
- package/src/modules/auth/mixins/auth-policies-guard.mixin.js +1 -1
- package/src/modules/auth/mixins/auth-policies-guard.mixin.js.map +1 -1
- package/src/modules/auth/models/otp-code.model.d.ts +4 -4
- package/src/modules/auth/services/base-auth.service.d.ts +2 -1
- package/src/modules/auth/services/base-auth.service.js +4 -4
- package/src/modules/auth/services/base-auth.service.js.map +1 -1
- package/src/modules/dynamic-api-config/dynamic-api-config.module.d.ts +1 -1
- package/src/modules/dynamic-api-config/dynamic-api-config.module.js +3 -3
- package/src/modules/dynamic-api-config/dynamic-api-config.module.js.map +1 -1
- package/src/modules/health/index.d.ts +1 -2
- package/src/modules/health/index.js +3 -16
- package/src/modules/health/index.js.map +1 -1
- package/src/modules/presence/index.d.ts +1 -5
- package/src/modules/presence/index.js +3 -19
- package/src/modules/presence/index.js.map +1 -1
- package/src/modules/presence/presence.gateway.d.ts +1 -1
- package/src/modules/presence/presence.gateway.js +5 -5
- package/src/modules/presence/presence.gateway.js.map +1 -1
- package/src/routes/aggregate/aggregate-controller.mixin.d.ts +2 -2
- package/src/routes/aggregate/aggregate-controller.mixin.js +12 -8
- package/src/routes/aggregate/aggregate-controller.mixin.js.map +1 -1
- package/src/routes/aggregate/aggregate-gateway.interface.d.ts +2 -1
- package/src/routes/aggregate/aggregate-gateway.mixin.d.ts +2 -2
- package/src/routes/aggregate/aggregate-gateway.mixin.js +10 -7
- package/src/routes/aggregate/aggregate-gateway.mixin.js.map +1 -1
- package/src/routes/aggregate/aggregate.helper.d.ts +5 -4
- package/src/routes/aggregate/aggregate.helper.js +10 -10
- package/src/routes/aggregate/aggregate.helper.js.map +1 -1
- package/src/routes/aggregate/aggregate.module.d.ts +2 -2
- package/src/routes/aggregate/aggregate.module.js +4 -3
- package/src/routes/aggregate/aggregate.module.js.map +1 -1
- package/src/routes/aggregate/base-aggregate.service.d.ts +1 -1
- package/src/routes/aggregate/base-aggregate.service.js +2 -2
- package/src/routes/aggregate/base-aggregate.service.js.map +1 -1
- package/src/routes/create-many/base-create-many.service.d.ts +1 -1
- package/src/routes/create-many/base-create-many.service.js +5 -5
- package/src/routes/create-many/base-create-many.service.js.map +1 -1
- package/src/routes/create-many/create-many-controller.interface.d.ts +1 -1
- package/src/routes/create-many/create-many-controller.mixin.d.ts +2 -2
- package/src/routes/create-many/create-many-controller.mixin.js +16 -11
- package/src/routes/create-many/create-many-controller.mixin.js.map +1 -1
- package/src/routes/create-many/create-many-gateway.interface.d.ts +2 -1
- package/src/routes/create-many/create-many-gateway.mixin.d.ts +2 -2
- package/src/routes/create-many/create-many-gateway.mixin.js +10 -7
- package/src/routes/create-many/create-many-gateway.mixin.js.map +1 -1
- package/src/routes/create-many/create-many.helper.d.ts +5 -4
- package/src/routes/create-many/create-many.helper.js +13 -13
- package/src/routes/create-many/create-many.helper.js.map +1 -1
- package/src/routes/create-many/create-many.module.js +6 -5
- package/src/routes/create-many/create-many.module.js.map +1 -1
- package/src/routes/create-one/base-create-one.service.d.ts +1 -1
- package/src/routes/create-one/base-create-one.service.js +5 -5
- package/src/routes/create-one/base-create-one.service.js.map +1 -1
- package/src/routes/create-one/create-one-controller.interface.d.ts +1 -1
- package/src/routes/create-one/create-one-controller.mixin.d.ts +2 -2
- package/src/routes/create-one/create-one-controller.mixin.js +14 -10
- package/src/routes/create-one/create-one-controller.mixin.js.map +1 -1
- package/src/routes/create-one/create-one-gateway.interface.d.ts +2 -1
- package/src/routes/create-one/create-one-gateway.mixin.d.ts +2 -2
- package/src/routes/create-one/create-one-gateway.mixin.js +10 -7
- package/src/routes/create-one/create-one-gateway.mixin.js.map +1 -1
- package/src/routes/create-one/create-one.helper.d.ts +5 -4
- package/src/routes/create-one/create-one.helper.js +13 -13
- package/src/routes/create-one/create-one.helper.js.map +1 -1
- package/src/routes/create-one/create-one.module.js +6 -5
- package/src/routes/create-one/create-one.module.js.map +1 -1
- package/src/routes/custom/create-custom-route-controller.js +15 -13
- package/src/routes/custom/create-custom-route-controller.js.map +1 -1
- package/src/routes/custom/create-custom-route-gateway.js +12 -10
- package/src/routes/custom/create-custom-route-gateway.js.map +1 -1
- package/src/routes/custom/custom-route-callback.service.d.ts +1 -1
- package/src/routes/custom/custom-route-callback.service.js +2 -2
- package/src/routes/custom/custom-route-callback.service.js.map +1 -1
- package/src/routes/delete-many/base-delete-many.service.d.ts +2 -2
- package/src/routes/delete-many/base-delete-many.service.js +5 -5
- package/src/routes/delete-many/base-delete-many.service.js.map +1 -1
- package/src/routes/delete-many/delete-many-controller.interface.d.ts +2 -2
- package/src/routes/delete-many/delete-many-controller.mixin.d.ts +2 -2
- package/src/routes/delete-many/delete-many-controller.mixin.js +14 -10
- package/src/routes/delete-many/delete-many-controller.mixin.js.map +1 -1
- package/src/routes/delete-many/delete-many-gateway.interface.d.ts +3 -2
- package/src/routes/delete-many/delete-many-gateway.mixin.d.ts +2 -2
- package/src/routes/delete-many/delete-many-gateway.mixin.js +10 -7
- package/src/routes/delete-many/delete-many-gateway.mixin.js.map +1 -1
- package/src/routes/delete-many/delete-many.helper.d.ts +5 -4
- package/src/routes/delete-many/delete-many.helper.js +13 -13
- package/src/routes/delete-many/delete-many.helper.js.map +1 -1
- package/src/routes/delete-many/delete-many.module.js +6 -5
- package/src/routes/delete-many/delete-many.module.js.map +1 -1
- package/src/routes/delete-one/base-delete-one.service.d.ts +2 -2
- package/src/routes/delete-one/base-delete-one.service.js +5 -5
- package/src/routes/delete-one/base-delete-one.service.js.map +1 -1
- package/src/routes/delete-one/delete-one-controller.interface.d.ts +1 -1
- package/src/routes/delete-one/delete-one-controller.mixin.d.ts +2 -2
- package/src/routes/delete-one/delete-one-controller.mixin.js +14 -10
- package/src/routes/delete-one/delete-one-controller.mixin.js.map +1 -1
- package/src/routes/delete-one/delete-one-gateway.interface.d.ts +3 -2
- package/src/routes/delete-one/delete-one-gateway.mixin.d.ts +2 -2
- package/src/routes/delete-one/delete-one-gateway.mixin.js +10 -7
- package/src/routes/delete-one/delete-one-gateway.mixin.js.map +1 -1
- package/src/routes/delete-one/delete-one.helper.d.ts +5 -4
- package/src/routes/delete-one/delete-one.helper.js +13 -13
- package/src/routes/delete-one/delete-one.helper.js.map +1 -1
- package/src/routes/delete-one/delete-one.module.js +6 -5
- package/src/routes/delete-one/delete-one.module.js.map +1 -1
- package/src/routes/duplicate-many/base-duplicate-many.service.d.ts +1 -1
- package/src/routes/duplicate-many/base-duplicate-many.service.js +4 -4
- package/src/routes/duplicate-many/base-duplicate-many.service.js.map +1 -1
- package/src/routes/duplicate-many/duplicate-many-controller.interface.d.ts +1 -1
- package/src/routes/duplicate-many/duplicate-many-controller.mixin.d.ts +2 -2
- package/src/routes/duplicate-many/duplicate-many-controller.mixin.js +16 -11
- package/src/routes/duplicate-many/duplicate-many-controller.mixin.js.map +1 -1
- package/src/routes/duplicate-many/duplicate-many-gateway.interface.d.ts +3 -2
- package/src/routes/duplicate-many/duplicate-many-gateway.mixin.d.ts +2 -2
- package/src/routes/duplicate-many/duplicate-many-gateway.mixin.js +10 -7
- package/src/routes/duplicate-many/duplicate-many-gateway.mixin.js.map +1 -1
- package/src/routes/duplicate-many/duplicate-many.helper.d.ts +5 -4
- package/src/routes/duplicate-many/duplicate-many.helper.js +13 -13
- package/src/routes/duplicate-many/duplicate-many.helper.js.map +1 -1
- package/src/routes/duplicate-many/duplicate-many.module.js +6 -5
- package/src/routes/duplicate-many/duplicate-many.module.js.map +1 -1
- package/src/routes/duplicate-one/base-duplicate-one.service.d.ts +1 -1
- package/src/routes/duplicate-one/base-duplicate-one.service.js +4 -4
- package/src/routes/duplicate-one/base-duplicate-one.service.js.map +1 -1
- package/src/routes/duplicate-one/duplicate-one-controller.interface.d.ts +1 -1
- package/src/routes/duplicate-one/duplicate-one-controller.mixin.d.ts +2 -2
- package/src/routes/duplicate-one/duplicate-one-controller.mixin.js +18 -13
- package/src/routes/duplicate-one/duplicate-one-controller.mixin.js.map +1 -1
- package/src/routes/duplicate-one/duplicate-one-gateway.interface.d.ts +3 -2
- package/src/routes/duplicate-one/duplicate-one-gateway.mixin.d.ts +2 -2
- package/src/routes/duplicate-one/duplicate-one-gateway.mixin.js +10 -7
- package/src/routes/duplicate-one/duplicate-one-gateway.mixin.js.map +1 -1
- package/src/routes/duplicate-one/duplicate-one.helper.d.ts +5 -4
- package/src/routes/duplicate-one/duplicate-one.helper.js +13 -13
- package/src/routes/duplicate-one/duplicate-one.helper.js.map +1 -1
- package/src/routes/duplicate-one/duplicate-one.module.js +6 -5
- package/src/routes/duplicate-one/duplicate-one.module.js.map +1 -1
- package/src/routes/get-many/base-get-many.service.d.ts +1 -1
- package/src/routes/get-many/base-get-many.service.js +2 -2
- package/src/routes/get-many/base-get-many.service.js.map +1 -1
- package/src/routes/get-many/get-many-controller.mixin.d.ts +2 -2
- package/src/routes/get-many/get-many-controller.mixin.js +13 -10
- package/src/routes/get-many/get-many-controller.mixin.js.map +1 -1
- package/src/routes/get-many/get-many-gateway.interface.d.ts +2 -1
- package/src/routes/get-many/get-many-gateway.mixin.d.ts +2 -2
- package/src/routes/get-many/get-many-gateway.mixin.js +10 -8
- package/src/routes/get-many/get-many-gateway.mixin.js.map +1 -1
- package/src/routes/get-many/get-many.helper.d.ts +5 -4
- package/src/routes/get-many/get-many.helper.js +10 -10
- package/src/routes/get-many/get-many.helper.js.map +1 -1
- package/src/routes/get-many/get-many.module.js +4 -3
- package/src/routes/get-many/get-many.module.js.map +1 -1
- package/src/routes/get-one/base-get-one.service.d.ts +1 -1
- package/src/routes/get-one/base-get-one.service.js +2 -2
- package/src/routes/get-one/base-get-one.service.js.map +1 -1
- package/src/routes/get-one/get-one-controller.mixin.d.ts +2 -2
- package/src/routes/get-one/get-one-controller.mixin.js +11 -8
- package/src/routes/get-one/get-one-controller.mixin.js.map +1 -1
- package/src/routes/get-one/get-one-gateway.interface.d.ts +3 -2
- package/src/routes/get-one/get-one-gateway.mixin.d.ts +2 -2
- package/src/routes/get-one/get-one-gateway.mixin.js +9 -7
- package/src/routes/get-one/get-one-gateway.mixin.js.map +1 -1
- package/src/routes/get-one/get-one.helper.d.ts +5 -4
- package/src/routes/get-one/get-one.helper.js +10 -10
- package/src/routes/get-one/get-one.helper.js.map +1 -1
- package/src/routes/get-one/get-one.module.js +4 -3
- package/src/routes/get-one/get-one.module.js.map +1 -1
- package/src/routes/replace-one/base-replace-one.service.d.ts +1 -1
- package/src/routes/replace-one/base-replace-one.service.js +5 -5
- package/src/routes/replace-one/base-replace-one.service.js.map +1 -1
- package/src/routes/replace-one/replace-one-controller.interface.d.ts +1 -1
- package/src/routes/replace-one/replace-one-controller.mixin.d.ts +2 -2
- package/src/routes/replace-one/replace-one-controller.mixin.js +16 -12
- package/src/routes/replace-one/replace-one-controller.mixin.js.map +1 -1
- package/src/routes/replace-one/replace-one-gateway.interface.d.ts +3 -2
- package/src/routes/replace-one/replace-one-gateway.mixin.d.ts +2 -2
- package/src/routes/replace-one/replace-one-gateway.mixin.js +8 -6
- package/src/routes/replace-one/replace-one-gateway.mixin.js.map +1 -1
- package/src/routes/replace-one/replace-one.helper.d.ts +5 -4
- package/src/routes/replace-one/replace-one.helper.js +13 -13
- package/src/routes/replace-one/replace-one.helper.js.map +1 -1
- package/src/routes/replace-one/replace-one.module.js +6 -5
- package/src/routes/replace-one/replace-one.module.js.map +1 -1
- package/src/routes/update-many/base-update-many.service.d.ts +1 -1
- package/src/routes/update-many/base-update-many.service.js +4 -4
- package/src/routes/update-many/base-update-many.service.js.map +1 -1
- package/src/routes/update-many/update-many-controller.interface.d.ts +1 -1
- package/src/routes/update-many/update-many-controller.mixin.d.ts +2 -2
- package/src/routes/update-many/update-many-controller.mixin.js +16 -11
- package/src/routes/update-many/update-many-controller.mixin.js.map +1 -1
- package/src/routes/update-many/update-many-gateway.interface.d.ts +3 -2
- package/src/routes/update-many/update-many-gateway.mixin.d.ts +2 -2
- package/src/routes/update-many/update-many-gateway.mixin.js +10 -7
- package/src/routes/update-many/update-many-gateway.mixin.js.map +1 -1
- package/src/routes/update-many/update-many.helper.d.ts +5 -4
- package/src/routes/update-many/update-many.helper.js +13 -13
- package/src/routes/update-many/update-many.helper.js.map +1 -1
- package/src/routes/update-many/update-many.module.js +6 -5
- package/src/routes/update-many/update-many.module.js.map +1 -1
- package/src/routes/update-one/base-update-one.service.d.ts +1 -1
- package/src/routes/update-one/base-update-one.service.js +5 -5
- package/src/routes/update-one/base-update-one.service.js.map +1 -1
- package/src/routes/update-one/update-one-controller.interface.d.ts +1 -1
- package/src/routes/update-one/update-one-controller.mixin.d.ts +2 -2
- package/src/routes/update-one/update-one-controller.mixin.js +18 -13
- package/src/routes/update-one/update-one-controller.mixin.js.map +1 -1
- package/src/routes/update-one/update-one-gateway.interface.d.ts +3 -2
- package/src/routes/update-one/update-one-gateway.mixin.d.ts +2 -2
- package/src/routes/update-one/update-one-gateway.mixin.js +8 -6
- package/src/routes/update-one/update-one-gateway.mixin.js.map +1 -1
- package/src/routes/update-one/update-one.helper.d.ts +5 -4
- package/src/routes/update-one/update-one.helper.js +13 -13
- package/src/routes/update-one/update-one.helper.js.map +1 -1
- package/src/routes/update-one/update-one.module.js +6 -5
- package/src/routes/update-one/update-one.module.js.map +1 -1
- package/src/services/base/base.service.js +3 -4
- package/src/services/base/base.service.js.map +1 -1
- package/src/services/bcrypt/bcrypt.service.js.map +1 -1
- package/src/services/dynamic-api-broadcast/dynamic-api-broadcast.service.js +4 -4
- package/src/services/dynamic-api-broadcast/dynamic-api-broadcast.service.js.map +1 -1
- package/src/services/dynamic-api-cache/dynamic-api-cache.service.js +2 -2
- package/src/services/dynamic-api-cache/dynamic-api-cache.service.js.map +1 -1
- package/src/services/dynamic-api-entity/dynamic-api-entity.service.d.ts +6 -0
- package/src/services/dynamic-api-entity/dynamic-api-entity.service.js +11 -0
- package/src/services/dynamic-api-entity/dynamic-api-entity.service.js.map +1 -0
- package/src/services/dynamic-api-global-state/dynamic-api-global-state.service.d.ts +6 -2
- package/src/services/index.d.ts +1 -2
- package/src/services/index.js +1 -2
- package/src/services/index.js.map +1 -1
- package/src/testing/create-dynamic-api-testing-app.js +1 -1
- package/src/testing/create-dynamic-api-testing-app.js.map +1 -1
- package/src/utils/index.d.ts +0 -1
- package/src/utils/index.js +0 -1
- package/src/utils/index.js.map +1 -1
- package/src/version.json +1 -1
- package/test/e2e.setup.d.ts +3 -3
- package/test/e2e.setup.js +8 -7
- package/test/e2e.setup.js.map +1 -1
- package/test/for-feature/ability-predicate-filter.e2e-spec.js +20 -20
- package/test/for-feature/ability-predicate-filter.e2e-spec.js.map +1 -1
- package/test/for-feature/ability-predicates.e2e-spec.js +28 -27
- package/test/for-feature/ability-predicates.e2e-spec.js.map +1 -1
- package/test/for-feature/after-save-callback-reliability.e2e-spec.js +35 -34
- package/test/for-feature/after-save-callback-reliability.e2e-spec.js.map +1 -1
- package/test/for-feature/aggregate-ability-predicate-paging.e2e-spec.js +20 -19
- package/test/for-feature/aggregate-ability-predicate-paging.e2e-spec.js.map +1 -1
- package/test/for-feature/aggregate-paging-without-from-aggregate.e2e-spec.js +11 -10
- package/test/for-feature/aggregate-paging-without-from-aggregate.e2e-spec.js.map +1 -1
- package/test/for-feature/aggregate-swagger-paginated-response.e2e-spec.d.ts +1 -0
- package/test/for-feature/aggregate-swagger-paginated-response.e2e-spec.js +99 -0
- package/test/for-feature/aggregate-swagger-paginated-response.e2e-spec.js.map +1 -0
- package/test/for-feature/audit-log.e2e-spec.js +26 -25
- package/test/for-feature/audit-log.e2e-spec.js.map +1 -1
- package/test/for-feature/base-entity.e2e-spec.js +126 -125
- package/test/for-feature/base-entity.e2e-spec.js.map +1 -1
- package/test/for-feature/broadcast-event-registry.e2e-spec.js +20 -19
- package/test/for-feature/broadcast-event-registry.e2e-spec.js.map +1 -1
- package/test/for-feature/cache-identity-key.e2e-spec.js +22 -21
- package/test/for-feature/cache-identity-key.e2e-spec.js.map +1 -1
- package/test/for-feature/cache-scoped-invalidation.e2e-spec.js +33 -32
- package/test/for-feature/cache-scoped-invalidation.e2e-spec.js.map +1 -1
- package/test/for-feature/callbacks-user.e2e-spec.js +159 -158
- package/test/for-feature/callbacks-user.e2e-spec.js.map +1 -1
- package/test/for-feature/cascade-and-before-delete.e2e-spec.js +47 -46
- package/test/for-feature/cascade-and-before-delete.e2e-spec.js.map +1 -1
- package/test/for-feature/cascade-transaction-atomicity.e2e-spec.js +17 -16
- package/test/for-feature/cascade-transaction-atomicity.e2e-spec.js.map +1 -1
- package/test/for-feature/custom-route-auth-ability-predicate.e2e-spec.js +17 -16
- package/test/for-feature/custom-route-auth-ability-predicate.e2e-spec.js.map +1 -1
- package/test/for-feature/custom-route-inject.e2e-spec.js +9 -8
- package/test/for-feature/custom-route-inject.e2e-spec.js.map +1 -1
- package/test/for-feature/custom-route-params-openapi.e2e-spec.js +10 -9
- package/test/for-feature/custom-route-params-openapi.e2e-spec.js.map +1 -1
- package/test/for-feature/custom-route-target-param.e2e-spec.js +14 -13
- package/test/for-feature/custom-route-target-param.e2e-spec.js.map +1 -1
- package/test/for-feature/custom-routes.e2e-spec.js +38 -38
- package/test/for-feature/custom-routes.e2e-spec.js.map +1 -1
- package/test/for-feature/db-aware-validators.e2e-spec.js +40 -39
- package/test/for-feature/db-aware-validators.e2e-spec.js.map +1 -1
- package/test/for-feature/derived-fields-protected-from-user.e2e-spec.js +39 -38
- package/test/for-feature/derived-fields-protected-from-user.e2e-spec.js.map +1 -1
- package/test/for-feature/derived-fields-raw-write-recompute.e2e-spec.js +25 -24
- package/test/for-feature/derived-fields-raw-write-recompute.e2e-spec.js.map +1 -1
- package/test/for-feature/exclude-from-response.e2e-spec.js +21 -20
- package/test/for-feature/exclude-from-response.e2e-spec.js.map +1 -1
- package/test/for-feature/http-broadcast.e2e-spec.js +62 -61
- package/test/for-feature/http-broadcast.e2e-spec.js.map +1 -1
- package/test/for-feature/index-sync.e2e-spec.js +39 -28
- package/test/for-feature/index-sync.e2e-spec.js.map +1 -1
- package/test/for-feature/paging-query-helper.e2e-spec.js +21 -20
- package/test/for-feature/paging-query-helper.e2e-spec.js.map +1 -1
- package/test/for-feature/populate.e2e-spec.js +18 -17
- package/test/for-feature/populate.e2e-spec.js.map +1 -1
- package/test/for-feature/presence.e2e-spec.js +18 -17
- package/test/for-feature/presence.e2e-spec.js.map +1 -1
- package/test/for-feature/raw-update-callback-methods.e2e-spec.js +49 -48
- package/test/for-feature/raw-update-callback-methods.e2e-spec.js.map +1 -1
- package/test/for-feature/room-broadcast.e2e-spec.js +61 -60
- package/test/for-feature/room-broadcast.e2e-spec.js.map +1 -1
- package/test/for-feature/soft-deletable-entity.e2e-spec.js +136 -135
- package/test/for-feature/soft-deletable-entity.e2e-spec.js.map +1 -1
- package/test/for-feature/websockets.e2e-spec.js +54 -53
- package/test/for-feature/websockets.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-basic.e2e-spec.js +94 -93
- package/test/for-root/auth-api-basic.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-broadcast.e2e-spec.js +24 -23
- package/test/for-root/auth-api-broadcast.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-login.e2e-spec.js +99 -97
- package/test/for-root/auth-api-login.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-logout.e2e-spec.js +18 -17
- package/test/for-root/auth-api-logout.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-mint-token-pair.e2e-spec.js +17 -16
- package/test/for-root/auth-api-mint-token-pair.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-passwordless.e2e-spec.js +37 -36
- package/test/for-root/auth-api-passwordless.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-rate-limit.e2e-spec.js +14 -13
- package/test/for-root/auth-api-rate-limit.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-refresh-token-cookie.e2e-spec.js +27 -26
- package/test/for-root/auth-api-refresh-token-cookie.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-refresh-token.e2e-spec.js +55 -54
- package/test/for-root/auth-api-refresh-token.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-register.e2e-spec.js +29 -27
- package/test/for-root/auth-api-register.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-reset-password.e2e-spec.js +50 -48
- package/test/for-root/auth-api-reset-password.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-update-account-derived-field.e2e-spec.js +9 -8
- package/test/for-root/auth-api-update-account-derived-field.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-update-account.e2e-spec.js +38 -37
- package/test/for-root/auth-api-update-account.e2e-spec.js.map +1 -1
- package/test/for-root/health-check.e2e-spec.js +21 -20
- package/test/for-root/health-check.e2e-spec.js.map +1 -1
- package/test/for-root/initialization.e2e-spec.js +10 -9
- package/test/for-root/initialization.e2e-spec.js.map +1 -1
- package/test/for-root/websockets-auth-basic.e2e-spec.js +115 -114
- package/test/for-root/websockets-auth-basic.e2e-spec.js.map +1 -1
- package/test/for-root/websockets-auth-broadcast.e2e-spec.js +26 -25
- package/test/for-root/websockets-auth-broadcast.e2e-spec.js.map +1 -1
- package/test/for-root/websockets-auth-login.e2e-spec.js +40 -38
- package/test/for-root/websockets-auth-login.e2e-spec.js.map +1 -1
- package/test/for-root/websockets-auth-refresh-token.e2e-spec.js +22 -21
- package/test/for-root/websockets-auth-refresh-token.e2e-spec.js.map +1 -1
- package/test/for-root/websockets-auth-register.e2e-spec.js +36 -34
- package/test/for-root/websockets-auth-register.e2e-spec.js.map +1 -1
- package/test/for-root/websockets-auth-reset-password.e2e-spec.js +56 -54
- package/test/for-root/websockets-auth-reset-password.e2e-spec.js.map +1 -1
- package/test/helpers/create-mock.helper.d.ts +12 -0
- package/test/helpers/create-mock.helper.js +58 -0
- package/test/helpers/create-mock.helper.js.map +1 -0
- package/test/helpers/index.d.ts +1 -0
- package/test/helpers/index.js +18 -0
- package/test/helpers/index.js.map +1 -0
- package/test/helpers/register-ts-require-hook.d.ts +1 -0
- package/test/helpers/register-ts-require-hook.js +20 -0
- package/test/helpers/register-ts-require-hook.js.map +1 -0
- package/test/testing/create-dynamic-api-testing-app.e2e-spec.js +17 -15
- package/test/testing/create-dynamic-api-testing-app.e2e-spec.js.map +1 -1
- package/test/utils.d.ts +5 -1
- package/test/utils.js +2 -2
- package/test/utils.js.map +1 -1
- package/tsconfig.tsbuildinfo +1 -1
- package/src/decorators/schema-options.decorator.d.ts +0 -5
- package/src/decorators/schema-options.decorator.js +0 -14
- package/src/decorators/schema-options.decorator.js.map +0 -1
- package/src/utils/deep-patial.d.ts +0 -1
- package/src/utils/deep-patial.js +0 -3
- package/src/utils/deep-patial.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"broadcast-event-registry.e2e-spec.js","sourceRoot":"","sources":["../../../libs/dynamic-api/test/for-feature/broadcast-event-registry.e2e-spec.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,+CAAgD;AAChD,uCAAgD;AAChD,mCAAyD;AACzD,iFAAsF;AACtF,4CAAuD;AACvD,yBAAuB;AACvB,oCAA8C;AAC9C,sCAAoC;AAEpC,
|
|
1
|
+
{"version":3,"file":"broadcast-event-registry.e2e-spec.js","sourceRoot":"","sources":["../../../libs/dynamic-api/test/for-feature/broadcast-event-registry.e2e-spec.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,mCAAqE;AACrE,+CAAgD;AAChD,uCAAgD;AAChD,mCAAyD;AACzD,iFAAsF;AACtF,4CAAuD;AACvD,yBAAuB;AACvB,oCAA8C;AAC9C,sCAAoC;AAEpC,IAAA,iBAAQ,EAAC,8DAA8D,EAAE,GAAG,EAAE;IAE5E,IAAA,mBAAU,EAAC,GAAG,EAAE;QACd,sBAAgB,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;QACvC,mDAA4B,CAAC,KAAK,EAAE,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,IAAA,kBAAS,EAAC,KAAK,IAAI,EAAE;QACnB,MAAM,IAAA,2BAAe,EAAC,kBAAQ,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAGH,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,gBAAU;KAGxC,CAAA;IADC;QADC,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kDAC1B;IAFT,gBAAgB;QADrB,IAAA,iBAAM,EAAC,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC;OACjC,gBAAgB,CAGrB;IAED,IAAA,iBAAQ,EAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,IAAI,eAAiC,CAAC;QAEtC,IAAA,mBAAU,EAAC,KAAK,IAAI,EAAE;YACpB,MAAM,QAAQ,GAAG,KAAK,EAAE,CAAa,EAAE,EAAE;gBACvC,MAAM,KAAK,GAAG,MAAM,IAAA,0BAAkB,EAAC,gBAAgB,CAAC,CAAC;gBACzD,eAAe,GAAG,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAgC,CAAC;YAC7F,CAAC,CAAC;YAEF,MAAM,IAAA,gBAAO,EACX;gBACE,MAAM,EAAE,gBAAgB;gBACxB,iBAAiB,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE;gBACjF,MAAM,EAAE;oBACN,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;oBACnC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;oBACnD,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,qBAAqB,EAAE,EAAE;iBACtF;aACF,EACD,SAAS,EACT,QAAQ,CACT,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,mEAAmE,EAAE,GAAG,EAAE;YAC3E,MAAM,UAAU,GAAG,mDAA4B,CAAC,MAAM,EAAE;iBACrD,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,wBAAwB,CAAC,CAAC;YAErD,IAAA,eAAM,EAAC,UAAU,CAAC,CAAC,aAAa,CAAC;gBAC/B,SAAS,EAAE,WAAW;gBACtB,UAAU,EAAE,kBAAkB;gBAC9B,iBAAiB,EAAE,KAAK;gBACxB,QAAQ,EAAE,CAAC,MAAM,CAAC;aACnB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,yEAAyE,EAAE,GAAG,EAAE;YACjF,MAAM,UAAU,GAAG,mDAA4B,CAAC,MAAM,EAAE;iBACrD,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,qBAAqB,CAAC,CAAC;YAElD,IAAA,eAAM,EAAC,UAAU,CAAC,CAAC,aAAa,CAAC;gBAC/B,SAAS,EAAE,WAAW;gBACtB,UAAU,EAAE,kBAAkB;gBAC9B,iBAAiB,EAAE,IAAI;gBACvB,QAAQ,EAAE,CAAC,MAAM,CAAC;aACnB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,qFAAqF,EAAE,GAAG,EAAE;YAC7F,MAAM,MAAM,GAAG,mDAA4B,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YAEzE,IAAA,eAAM,EAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;YAC3E,MAAM,QAAQ,GAAG,MAAM,kBAAM,CAAC,MAAM,CAAC,iBAAiB,eAAe,CAAC,EAAE,EAAE,CAAC,CAAC;YAE5E,IAAA,eAAM,EAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAA,iBAAQ,EAAC,gCAAgC,EAAE,GAAG,EAAE;QAE9C,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,gBAAU;SAGzC,CAAA;QADC;YADC,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;wDACzB;QAFV,iBAAiB;YADtB,IAAA,iBAAM,EAAC,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC;WACnC,iBAAiB,CAGtB;QAED,IAAA,mBAAU,EAAC,KAAK,IAAI,EAAE;YACpB,MAAM,IAAA,gBAAO,EACX;gBACE,MAAM,EAAE,gBAAgB;gBACxB,iBAAiB,EAAE;oBACjB,IAAI,EAAE,wBAAwB;oBAC9B,MAAM,EAAE,qBAAqB;oBAC7B,QAAQ,EAAE,IAAI;iBACf;gBACD,MAAM,EAAE;oBACN,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,wBAAwB,EAAE,EAAE;iBACzF;gBACD,YAAY,EAAE;oBACZ,sBAAgB,CAAC,UAAU,CAAC;wBAC1B,MAAM,EAAE,iBAAiB;wBACzB,iBAAiB,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,QAAQ,EAAE,IAAI,EAAE;wBACvE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,wBAAwB,EAAE,EAAE,CAAC;qBACnG,CAAC;iBACH;aACF,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;YACzE,IAAA,eAAM,EAAC,mDAA4B,CAAC,aAAa,EAAE,CAAC,CAAC,OAAO,CAC1D,eAAM,CAAC,eAAe,CAAC,CAAC,eAAM,CAAC,gBAAgB,CAAC,EAAE,KAAK,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,CACvF,CAAC;YAEF,MAAM,eAAe,GAAG,MAAM,kBAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAC;YACpG,MAAM,gBAAgB,GAAG,MAAM,kBAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC,CAAC;YAEzG,IAAA,eAAM,EAAC,eAAe,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACzC,IAAA,eAAM,EAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -9,6 +9,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
const vitest_1 = require("vitest");
|
|
12
13
|
const mongoose_1 = require("@nestjs/mongoose");
|
|
13
14
|
const mongoose_2 = require("mongoose");
|
|
14
15
|
const src_1 = require("../../src");
|
|
@@ -16,11 +17,11 @@ const e2e_setup_1 = require("../e2e.setup");
|
|
|
16
17
|
require("dotenv/config");
|
|
17
18
|
const utils_1 = require("../utils");
|
|
18
19
|
const shared_1 = require("../shared");
|
|
19
|
-
describe('DynamicApiModule forFeature - Cache identity-aware key (e2e)', () => {
|
|
20
|
-
beforeEach(() => {
|
|
20
|
+
(0, vitest_1.describe)('DynamicApiModule forFeature - Cache identity-aware key (e2e)', () => {
|
|
21
|
+
(0, vitest_1.beforeEach)(() => {
|
|
21
22
|
src_1.DynamicApiModule.state['resetState']();
|
|
22
23
|
});
|
|
23
|
-
afterEach(async () => {
|
|
24
|
+
(0, vitest_1.afterEach)(async () => {
|
|
24
25
|
await (0, e2e_setup_1.closeTestingApp)(mongoose_2.default.connections);
|
|
25
26
|
});
|
|
26
27
|
let CacheKeyNoteEntity = class CacheKeyNoteEntity extends src_1.BaseEntity {
|
|
@@ -36,7 +37,7 @@ describe('DynamicApiModule forFeature - Cache identity-aware key (e2e)', () => {
|
|
|
36
37
|
CacheKeyNoteEntity = __decorate([
|
|
37
38
|
(0, mongoose_1.Schema)({ collection: 'cache_key_notes' })
|
|
38
39
|
], CacheKeyNoteEntity);
|
|
39
|
-
describe('authenticated route with a per-caller-varying response', () => {
|
|
40
|
+
(0, vitest_1.describe)('authenticated route with a per-caller-varying response', () => {
|
|
40
41
|
let CacheKeyNoteUserEntity = class CacheKeyNoteUserEntity extends src_1.BaseEntity {
|
|
41
42
|
};
|
|
42
43
|
__decorate([
|
|
@@ -56,7 +57,7 @@ describe('DynamicApiModule forFeature - Cache identity-aware key (e2e)', () => {
|
|
|
56
57
|
const { body: account } = await e2e_setup_1.server.get('/auth/account', { authToken: accessToken });
|
|
57
58
|
return { accessToken, id: account.id };
|
|
58
59
|
};
|
|
59
|
-
beforeEach(async () => {
|
|
60
|
+
(0, vitest_1.beforeEach)(async () => {
|
|
60
61
|
await (0, shared_1.initApp)({
|
|
61
62
|
entity: CacheKeyNoteEntity,
|
|
62
63
|
controllerOptions: { path: 'cache-key-notes' },
|
|
@@ -74,7 +75,7 @@ describe('DynamicApiModule forFeature - Cache identity-aware key (e2e)', () => {
|
|
|
74
75
|
},
|
|
75
76
|
});
|
|
76
77
|
});
|
|
77
|
-
it("should never serve one caller's cached filtered response to a different caller on the same URL", async () => {
|
|
78
|
+
(0, vitest_1.it)("should never serve one caller's cached filtered response to a different caller on the same URL", async () => {
|
|
78
79
|
const alice = await registerAndLogin('alice@cache-key.co');
|
|
79
80
|
const bob = await registerAndLogin('bob@cache-key.co');
|
|
80
81
|
const model = await (0, utils_1.getModelFromEntity)(CacheKeyNoteEntity);
|
|
@@ -83,21 +84,21 @@ describe('DynamicApiModule forFeature - Cache identity-aware key (e2e)', () => {
|
|
|
83
84
|
{ text: 'bob-note', ownerId: bob.id },
|
|
84
85
|
]);
|
|
85
86
|
const aliceFirst = await e2e_setup_1.server.get('/cache-key-notes', { authToken: alice.accessToken });
|
|
86
|
-
expect(aliceFirst.status).toBe(200);
|
|
87
|
-
expect(aliceFirst.body).toHaveLength(1);
|
|
88
|
-
expect(aliceFirst.body[0].text).toBe('alice-note');
|
|
87
|
+
(0, vitest_1.expect)(aliceFirst.status).toBe(200);
|
|
88
|
+
(0, vitest_1.expect)(aliceFirst.body).toHaveLength(1);
|
|
89
|
+
(0, vitest_1.expect)(aliceFirst.body[0].text).toBe('alice-note');
|
|
89
90
|
const bobFirst = await e2e_setup_1.server.get('/cache-key-notes', { authToken: bob.accessToken });
|
|
90
|
-
expect(bobFirst.status).toBe(200);
|
|
91
|
-
expect(bobFirst.body).toHaveLength(1);
|
|
92
|
-
expect(bobFirst.body[0].text).toBe('bob-note');
|
|
91
|
+
(0, vitest_1.expect)(bobFirst.status).toBe(200);
|
|
92
|
+
(0, vitest_1.expect)(bobFirst.body).toHaveLength(1);
|
|
93
|
+
(0, vitest_1.expect)(bobFirst.body[0].text).toBe('bob-note');
|
|
93
94
|
const aliceSecond = await e2e_setup_1.server.get('/cache-key-notes', { authToken: alice.accessToken });
|
|
94
|
-
expect(aliceSecond.status).toBe(200);
|
|
95
|
-
expect(aliceSecond.body).toHaveLength(1);
|
|
96
|
-
expect(aliceSecond.body[0].text).toBe('alice-note');
|
|
95
|
+
(0, vitest_1.expect)(aliceSecond.status).toBe(200);
|
|
96
|
+
(0, vitest_1.expect)(aliceSecond.body).toHaveLength(1);
|
|
97
|
+
(0, vitest_1.expect)(aliceSecond.body[0].text).toBe('alice-note');
|
|
97
98
|
});
|
|
98
99
|
});
|
|
99
|
-
describe('public route with no per-caller identity', () => {
|
|
100
|
-
beforeEach(async () => {
|
|
100
|
+
(0, vitest_1.describe)('public route with no per-caller identity', () => {
|
|
101
|
+
(0, vitest_1.beforeEach)(async () => {
|
|
101
102
|
await (0, shared_1.initApp)({
|
|
102
103
|
entity: CacheKeyNoteEntity,
|
|
103
104
|
controllerOptions: { path: 'cache-key-public-notes' },
|
|
@@ -106,14 +107,14 @@ describe('DynamicApiModule forFeature - Cache identity-aware key (e2e)', () => {
|
|
|
106
107
|
],
|
|
107
108
|
});
|
|
108
109
|
});
|
|
109
|
-
it('should share one cache entry across anonymous callers (no identity to key on)', async () => {
|
|
110
|
+
(0, vitest_1.it)('should share one cache entry across anonymous callers (no identity to key on)', async () => {
|
|
110
111
|
const model = await (0, utils_1.getModelFromEntity)(CacheKeyNoteEntity);
|
|
111
112
|
await model.insertMany([{ text: 'public-note' }]);
|
|
112
113
|
const first = await e2e_setup_1.server.get('/cache-key-public-notes');
|
|
113
114
|
const second = await e2e_setup_1.server.get('/cache-key-public-notes');
|
|
114
|
-
expect(first.status).toBe(200);
|
|
115
|
-
expect(second.status).toBe(200);
|
|
116
|
-
expect(second.body).toEqual(first.body);
|
|
115
|
+
(0, vitest_1.expect)(first.status).toBe(200);
|
|
116
|
+
(0, vitest_1.expect)(second.status).toBe(200);
|
|
117
|
+
(0, vitest_1.expect)(second.body).toEqual(first.body);
|
|
117
118
|
});
|
|
118
119
|
});
|
|
119
120
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache-identity-key.e2e-spec.js","sourceRoot":"","sources":["../../../libs/dynamic-api/test/for-feature/cache-identity-key.e2e-spec.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,+CAAgD;AAChD,uCAAgC;AAChC,mCAAkE;AAClE,4CAAuD;AACvD,yBAAuB;AACvB,oCAA8C;AAC9C,sCAAoC;AAWpC,
|
|
1
|
+
{"version":3,"file":"cache-identity-key.e2e-spec.js","sourceRoot":"","sources":["../../../libs/dynamic-api/test/for-feature/cache-identity-key.e2e-spec.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,mCAAqE;AACrE,+CAAgD;AAChD,uCAAgC;AAChC,mCAAkE;AAClE,4CAAuD;AACvD,yBAAuB;AACvB,oCAA8C;AAC9C,sCAAoC;AAWpC,IAAA,iBAAQ,EAAC,8DAA8D,EAAE,GAAG,EAAE;IAE5E,IAAA,mBAAU,EAAC,GAAG,EAAE;QACd,sBAAgB,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,IAAA,kBAAS,EAAC,KAAK,IAAI,EAAE;QACnB,MAAM,IAAA,2BAAe,EAAC,kBAAQ,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAGH,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,gBAAU;KAM1C,CAAA;IAJC;QADC,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;oDAC1B;IAGb;QADC,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;uDACN;IALb,kBAAkB;QADvB,IAAA,iBAAM,EAAC,EAAE,UAAU,EAAE,iBAAiB,EAAE,CAAC;OACpC,kBAAkB,CAMvB;IAED,IAAA,iBAAQ,EAAC,wDAAwD,EAAE,GAAG,EAAE;QAEtE,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,gBAAU;SAM9C,CAAA;QAJC;YADC,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;6DACzB;QAGd;YADC,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gEACtB;QALb,sBAAsB;YAD3B,IAAA,iBAAM,EAAC,EAAE,UAAU,EAAE,sBAAsB,EAAE,CAAC;WACzC,sBAAsB,CAM3B;QAED,MAAM,gBAAgB,GAAG,KAAK,EAAE,KAAa,EAAE,EAAE;YAC/C,MAAM,kBAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,CAAC;YACxE,MAAM,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,EAAE,GAAG,MAAM,kBAAM,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,CAAC;YACvG,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,kBAAM,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC;YAExF,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,OAAO,CAAC,EAAY,EAAE,CAAC;QACnD,CAAC,CAAC;QAEF,IAAA,mBAAU,EAAC,KAAK,IAAI,EAAE;YACpB,MAAM,IAAA,gBAAO,EACX;gBACE,MAAM,EAAE,kBAAkB;gBAC1B,iBAAiB,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE;gBAC9C,MAAM,EAAE;oBACN;wBACE,IAAI,EAAE,SAAS;wBAGf,gBAAgB,EAAE,IAAA,aAAO,GAAE;wBAC3B,iBAAiB,EAAE,QAAQ;qBAC5B;iBACF;aACF,EACD;gBACE,OAAO,EAAE;oBACP,UAAU,EAAE,sBAAsB;oBAClC,KAAK,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE;iBAC1D;aACF,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,gGAAgG,EAAE,KAAK,IAAI,EAAE;YAC9G,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;YAC3D,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;YAEvD,MAAM,KAAK,GAAG,MAAM,IAAA,0BAAkB,EAAC,kBAAkB,CAAC,CAAC;YAC3D,MAAM,KAAK,CAAC,UAAU,CAAC;gBACrB,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE;gBACzC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,EAAE;aACtC,CAAC,CAAC;YAGH,MAAM,UAAU,GAAG,MAAM,kBAAM,CAAC,GAAG,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;YAC1F,IAAA,eAAM,EAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACpC,IAAA,eAAM,EAAC,UAAU,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACxC,IAAA,eAAM,EAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAInD,MAAM,QAAQ,GAAG,MAAM,kBAAM,CAAC,GAAG,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;YACtF,IAAA,eAAM,EAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAClC,IAAA,eAAM,EAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACtC,IAAA,eAAM,EAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAG/C,MAAM,WAAW,GAAG,MAAM,kBAAM,CAAC,GAAG,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;YAC3F,IAAA,eAAM,EAAC,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACrC,IAAA,eAAM,EAAC,WAAW,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACzC,IAAA,eAAM,EAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAA,iBAAQ,EAAC,0CAA0C,EAAE,GAAG,EAAE;QACxD,IAAA,mBAAU,EAAC,KAAK,IAAI,EAAE;YACpB,MAAM,IAAA,gBAAO,EAAC;gBACZ,MAAM,EAAE,kBAAkB;gBAC1B,iBAAiB,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE;gBACrD,MAAM,EAAE;oBACN,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;iBACpC;aACF,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,+EAA+E,EAAE,KAAK,IAAI,EAAE;YAC7F,MAAM,KAAK,GAAG,MAAM,IAAA,0BAAkB,EAAC,kBAAkB,CAAC,CAAC;YAC3D,MAAM,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;YAElD,MAAM,KAAK,GAAG,MAAM,kBAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;YAC1D,MAAM,MAAM,GAAG,MAAM,kBAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;YAE3D,IAAA,eAAM,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC/B,IAAA,eAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAChC,IAAA,eAAM,EAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -9,6 +9,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
const vitest_1 = require("vitest");
|
|
12
13
|
const mongoose_1 = require("@nestjs/mongoose");
|
|
13
14
|
const mongoose_2 = require("mongoose");
|
|
14
15
|
const src_1 = require("../../src");
|
|
@@ -16,11 +17,11 @@ const e2e_setup_1 = require("../e2e.setup");
|
|
|
16
17
|
require("dotenv/config");
|
|
17
18
|
const utils_1 = require("../utils");
|
|
18
19
|
const shared_1 = require("../shared");
|
|
19
|
-
describe('DynamicApiModule forFeature - scoped cache invalidation (e2e)', () => {
|
|
20
|
-
beforeEach(() => {
|
|
20
|
+
(0, vitest_1.describe)('DynamicApiModule forFeature - scoped cache invalidation (e2e)', () => {
|
|
21
|
+
(0, vitest_1.beforeEach)(() => {
|
|
21
22
|
src_1.DynamicApiModule.state['resetState']();
|
|
22
23
|
});
|
|
23
|
-
afterEach(async () => {
|
|
24
|
+
(0, vitest_1.afterEach)(async () => {
|
|
24
25
|
await (0, e2e_setup_1.closeTestingApp)(mongoose_2.default.connections);
|
|
25
26
|
});
|
|
26
27
|
let CacheScopeProductEntity = class CacheScopeProductEntity extends src_1.BaseEntity {
|
|
@@ -41,8 +42,8 @@ describe('DynamicApiModule forFeature - scoped cache invalidation (e2e)', () =>
|
|
|
41
42
|
CacheScopeOrderEntity = __decorate([
|
|
42
43
|
(0, mongoose_1.Schema)({ collection: 'cache_scope_orders' })
|
|
43
44
|
], CacheScopeOrderEntity);
|
|
44
|
-
describe('F3 — write to one entity never invalidates another entity\'s cache', () => {
|
|
45
|
-
beforeEach(async () => {
|
|
45
|
+
(0, vitest_1.describe)('F3 — write to one entity never invalidates another entity\'s cache', () => {
|
|
46
|
+
(0, vitest_1.beforeEach)(async () => {
|
|
46
47
|
await (0, shared_1.initApp)({
|
|
47
48
|
entity: CacheScopeProductEntity,
|
|
48
49
|
controllerOptions: { path: 'cache-scope-products', isPublic: true },
|
|
@@ -59,26 +60,26 @@ describe('DynamicApiModule forFeature - scoped cache invalidation (e2e)', () =>
|
|
|
59
60
|
],
|
|
60
61
|
});
|
|
61
62
|
});
|
|
62
|
-
it('should refresh the written entity\'s cache while leaving another entity\'s cache untouched', async () => {
|
|
63
|
+
(0, vitest_1.it)('should refresh the written entity\'s cache while leaving another entity\'s cache untouched', async () => {
|
|
63
64
|
const productModel = await (0, utils_1.getModelFromEntity)(CacheScopeProductEntity);
|
|
64
65
|
const orderModel = await (0, utils_1.getModelFromEntity)(CacheScopeOrderEntity);
|
|
65
66
|
await productModel.insertMany([{ name: 'product-1' }]);
|
|
66
67
|
await orderModel.insertMany([{ label: 'order-1' }]);
|
|
67
68
|
const productsFirst = await e2e_setup_1.server.get('/cache-scope-products');
|
|
68
69
|
const ordersFirst = await e2e_setup_1.server.get('/cache-scope-orders');
|
|
69
|
-
expect(productsFirst.body).toHaveLength(1);
|
|
70
|
-
expect(ordersFirst.body).toHaveLength(1);
|
|
70
|
+
(0, vitest_1.expect)(productsFirst.body).toHaveLength(1);
|
|
71
|
+
(0, vitest_1.expect)(ordersFirst.body).toHaveLength(1);
|
|
71
72
|
await orderModel.insertMany([{ label: 'order-2' }]);
|
|
72
73
|
const created = await e2e_setup_1.server.post('/cache-scope-products', { name: 'product-2' });
|
|
73
|
-
expect(created.status).toBe(201);
|
|
74
|
+
(0, vitest_1.expect)(created.status).toBe(201);
|
|
74
75
|
const productsSecond = await e2e_setup_1.server.get('/cache-scope-products');
|
|
75
76
|
const ordersSecond = await e2e_setup_1.server.get('/cache-scope-orders');
|
|
76
|
-
expect(productsSecond.body).toHaveLength(2);
|
|
77
|
-
expect(ordersSecond.body).toHaveLength(1);
|
|
77
|
+
(0, vitest_1.expect)(productsSecond.body).toHaveLength(2);
|
|
78
|
+
(0, vitest_1.expect)(ordersSecond.body).toHaveLength(1);
|
|
78
79
|
});
|
|
79
80
|
});
|
|
80
|
-
describe('F3 — the manual DELETE .../cache purge endpoint is scoped too', () => {
|
|
81
|
-
beforeEach(async () => {
|
|
81
|
+
(0, vitest_1.describe)('F3 — the manual DELETE .../cache purge endpoint is scoped too', () => {
|
|
82
|
+
(0, vitest_1.beforeEach)(async () => {
|
|
82
83
|
await (0, shared_1.initApp)({
|
|
83
84
|
entity: CacheScopeProductEntity,
|
|
84
85
|
controllerOptions: { path: 'cache-scope-products', isPublic: true },
|
|
@@ -92,7 +93,7 @@ describe('DynamicApiModule forFeature - scoped cache invalidation (e2e)', () =>
|
|
|
92
93
|
],
|
|
93
94
|
});
|
|
94
95
|
});
|
|
95
|
-
it('should purge only the requested entity\'s cache, not every entity\'s', async () => {
|
|
96
|
+
(0, vitest_1.it)('should purge only the requested entity\'s cache, not every entity\'s', async () => {
|
|
96
97
|
const productModel = await (0, utils_1.getModelFromEntity)(CacheScopeProductEntity);
|
|
97
98
|
const orderModel = await (0, utils_1.getModelFromEntity)(CacheScopeOrderEntity);
|
|
98
99
|
await productModel.insertMany([{ name: 'product-1' }]);
|
|
@@ -102,37 +103,37 @@ describe('DynamicApiModule forFeature - scoped cache invalidation (e2e)', () =>
|
|
|
102
103
|
await orderModel.insertMany([{ label: 'order-2' }]);
|
|
103
104
|
await productModel.insertMany([{ name: 'product-2' }]);
|
|
104
105
|
const purge = await e2e_setup_1.server.delete('/cache-scope-products/cache');
|
|
105
|
-
expect(purge.status).toBe(200);
|
|
106
|
-
expect(purge.body).toEqual({ purged: true });
|
|
106
|
+
(0, vitest_1.expect)(purge.status).toBe(200);
|
|
107
|
+
(0, vitest_1.expect)(purge.body).toEqual({ purged: true });
|
|
107
108
|
const productsAfterPurge = await e2e_setup_1.server.get('/cache-scope-products');
|
|
108
109
|
const ordersAfterPurge = await e2e_setup_1.server.get('/cache-scope-orders');
|
|
109
|
-
expect(productsAfterPurge.body).toHaveLength(2);
|
|
110
|
-
expect(ordersAfterPurge.body).toHaveLength(1);
|
|
110
|
+
(0, vitest_1.expect)(productsAfterPurge.body).toHaveLength(2);
|
|
111
|
+
(0, vitest_1.expect)(ordersAfterPurge.body).toHaveLength(1);
|
|
111
112
|
});
|
|
112
113
|
});
|
|
113
|
-
describe('F4 — DynamicApiCacheService invalidates a raw, outside-HTTP write', () => {
|
|
114
|
-
beforeEach(async () => {
|
|
114
|
+
(0, vitest_1.describe)('F4 — DynamicApiCacheService invalidates a raw, outside-HTTP write', () => {
|
|
115
|
+
(0, vitest_1.beforeEach)(async () => {
|
|
115
116
|
await (0, shared_1.initApp)({
|
|
116
117
|
entity: CacheScopeProductEntity,
|
|
117
118
|
controllerOptions: { path: 'cache-scope-products', isPublic: true },
|
|
118
119
|
routes: [{ type: 'GetMany' }],
|
|
119
120
|
});
|
|
120
121
|
});
|
|
121
|
-
it('should leave the cache stale after a raw write, then refresh it once DynamicApiCacheService.invalidate is called', async () => {
|
|
122
|
+
(0, vitest_1.it)('should leave the cache stale after a raw write, then refresh it once DynamicApiCacheService.invalidate is called', async () => {
|
|
122
123
|
const model = await (0, utils_1.getModelFromEntity)(CacheScopeProductEntity);
|
|
123
124
|
await model.insertMany([{ name: 'seed' }]);
|
|
124
125
|
const first = await e2e_setup_1.server.get('/cache-scope-products');
|
|
125
|
-
expect(first.body).toHaveLength(1);
|
|
126
|
+
(0, vitest_1.expect)(first.body).toHaveLength(1);
|
|
126
127
|
await model.insertMany([{ name: 'added-by-cron' }]);
|
|
127
128
|
const stillCached = await e2e_setup_1.server.get('/cache-scope-products');
|
|
128
|
-
expect(stillCached.body).toHaveLength(1);
|
|
129
|
+
(0, vitest_1.expect)(stillCached.body).toHaveLength(1);
|
|
129
130
|
const cacheService = global.app.get(src_1.DynamicApiCacheService);
|
|
130
131
|
await cacheService.invalidate(CacheScopeProductEntity);
|
|
131
132
|
const fresh = await e2e_setup_1.server.get('/cache-scope-products');
|
|
132
|
-
expect(fresh.body).toHaveLength(2);
|
|
133
|
+
(0, vitest_1.expect)(fresh.body).toHaveLength(2);
|
|
133
134
|
});
|
|
134
135
|
});
|
|
135
|
-
describe('suggestion #11 — DynamicApiCacheService reachable from a custom route handler via inject', () => {
|
|
136
|
+
(0, vitest_1.describe)('suggestion #11 — DynamicApiCacheService reachable from a custom route handler via inject', () => {
|
|
136
137
|
const invalidateProductsRoute = {
|
|
137
138
|
path: 'bulk-rename',
|
|
138
139
|
method: 'POST',
|
|
@@ -145,7 +146,7 @@ describe('DynamicApiModule forFeature - scoped cache invalidation (e2e)', () =>
|
|
|
145
146
|
return { renamed: true };
|
|
146
147
|
},
|
|
147
148
|
};
|
|
148
|
-
beforeEach(async () => {
|
|
149
|
+
(0, vitest_1.beforeEach)(async () => {
|
|
149
150
|
await (0, shared_1.initApp)({
|
|
150
151
|
entity: CacheScopeProductEntity,
|
|
151
152
|
controllerOptions: { path: 'cache-scope-products', isPublic: true },
|
|
@@ -153,17 +154,17 @@ describe('DynamicApiModule forFeature - scoped cache invalidation (e2e)', () =>
|
|
|
153
154
|
customRoutes: [invalidateProductsRoute],
|
|
154
155
|
});
|
|
155
156
|
});
|
|
156
|
-
it('should leave the cache stale after methods.updateManyDocuments alone, then refresh it once the injected DynamicApiCacheService invalidates', async () => {
|
|
157
|
+
(0, vitest_1.it)('should leave the cache stale after methods.updateManyDocuments alone, then refresh it once the injected DynamicApiCacheService invalidates', async () => {
|
|
157
158
|
const model = await (0, utils_1.getModelFromEntity)(CacheScopeProductEntity);
|
|
158
159
|
await model.insertMany([{ name: 'old-name' }]);
|
|
159
160
|
const first = await e2e_setup_1.server.get('/cache-scope-products');
|
|
160
|
-
expect(first.body).toHaveLength(1);
|
|
161
|
-
expect(first.body[0].name).toBe('old-name');
|
|
161
|
+
(0, vitest_1.expect)(first.body).toHaveLength(1);
|
|
162
|
+
(0, vitest_1.expect)(first.body[0].name).toBe('old-name');
|
|
162
163
|
const renamed = await e2e_setup_1.server.post('/cache-scope-products/bulk-rename', { from: 'old-name', to: 'new-name' });
|
|
163
|
-
expect(renamed.status).toBe(201);
|
|
164
|
+
(0, vitest_1.expect)(renamed.status).toBe(201);
|
|
164
165
|
const fresh = await e2e_setup_1.server.get('/cache-scope-products');
|
|
165
|
-
expect(fresh.body).toHaveLength(1);
|
|
166
|
-
expect(fresh.body[0].name).toBe('new-name');
|
|
166
|
+
(0, vitest_1.expect)(fresh.body).toHaveLength(1);
|
|
167
|
+
(0, vitest_1.expect)(fresh.body[0].name).toBe('new-name');
|
|
167
168
|
});
|
|
168
169
|
});
|
|
169
170
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache-scoped-invalidation.e2e-spec.js","sourceRoot":"","sources":["../../../libs/dynamic-api/test/for-feature/cache-scoped-invalidation.e2e-spec.ts"],"names":[],"mappings":";;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"cache-scoped-invalidation.e2e-spec.js","sourceRoot":"","sources":["../../../libs/dynamic-api/test/for-feature/cache-scoped-invalidation.e2e-spec.ts"],"names":[],"mappings":"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"}
|