Merge pull request #21394 from overleaf/msm-esm-user-activation

[web] Migrate `modules/user-activate` to ESM

GitOrigin-RevId: e5ab3e9c53ea2d3f4ddfbc2200a889b8bb0db83c
This commit is contained in:
Miguel Serrano 2024-10-28 12:39:16 +01:00 committed by Copybot
parent 27c2e8b938
commit b290510faf
4 changed files with 30 additions and 28 deletions

View file

@ -1,9 +1,12 @@
const Path = require('path')
const UserGetter = require('../../../../app/src/Features/User/UserGetter')
const UserRegistrationHandler = require('../../../../app/src/Features/User/UserRegistrationHandler')
const ErrorController = require('../../../../app/src/Features/Errors/ErrorController')
import Path from 'node:path'
import { fileURLToPath } from 'node:url'
import UserGetter from '../../../../app/src/Features/User/UserGetter.js'
import UserRegistrationHandler from '../../../../app/src/Features/User/UserRegistrationHandler.js'
import ErrorController from '../../../../app/src/Features/Errors/ErrorController.js'
module.exports = {
const __dirname = Path.dirname(fileURLToPath(import.meta.url))
export default {
registerNewUser(req, res, next) {
res.render(Path.resolve(__dirname, '../views/user/register'))
},

View file

@ -1,9 +1,9 @@
const logger = require('@overleaf/logger')
const UserActivateController = require('./UserActivateController')
const AuthenticationController = require('../../../../app/src/Features/Authentication/AuthenticationController')
const AuthorizationMiddleware = require('../../../../app/src/Features/Authorization/AuthorizationMiddleware')
import logger from '@overleaf/logger'
import UserActivateController from './UserActivateController.mjs'
import AuthenticationController from '../../../../app/src/Features/Authentication/AuthenticationController.js'
import AuthorizationMiddleware from '../../../../app/src/Features/Authorization/AuthorizationMiddleware.js'
module.exports = {
export default {
apply(webRouter) {
logger.debug({}, 'Init UserActivate router')

View file

@ -1,4 +1,4 @@
const UserActivateRouter = require('./app/src/UserActivateRouter')
import UserActivateRouter from './app/src/UserActivateRouter.mjs'
/**
* @import { WebModule } from "../../types/web-module"
@ -9,4 +9,4 @@ const UserActivateModule = {
router: UserActivateRouter,
}
module.exports = UserActivateModule
export default UserActivateModule

View file

@ -1,15 +1,16 @@
const Path = require('path')
const SandboxedModule = require('sandboxed-module')
const sinon = require('sinon')
import Path from 'node:path'
import { fileURLToPath } from 'node:url'
import { strict as esmock } from 'esmock'
import sinon from 'sinon'
const __dirname = Path.dirname(fileURLToPath(import.meta.url))
const MODULE_PATH = '../../../app/src/UserActivateController.mjs'
const MODULE_PATH = Path.join(
__dirname,
'../../../app/src/UserActivateController.js'
)
const VIEW_PATH = Path.join(__dirname, '../../../app/views/user/activate')
describe('UserActivateController', function () {
beforeEach(function () {
beforeEach(async function () {
this.user = {
_id: (this.user_id = 'kwjewkl'),
features: {},
@ -19,14 +20,12 @@ describe('UserActivateController', function () {
this.UserGetter = { getUser: sinon.stub() }
this.UserRegistrationHandler = {}
this.ErrorController = { notFound: sinon.stub() }
this.UserActivateController = SandboxedModule.require(MODULE_PATH, {
requires: {
'../../../../app/src/Features/User/UserGetter': this.UserGetter,
'../../../../app/src/Features/User/UserRegistrationHandler':
this.UserActivateController = await esmock(MODULE_PATH, {
'../../../../../app/src/Features/User/UserGetter.js': this.UserGetter,
'../../../../../app/src/Features/User/UserRegistrationHandler.js':
this.UserRegistrationHandler,
'../../../../app/src/Features/Errors/ErrorController':
'../../../../../app/src/Features/Errors/ErrorController.js':
this.ErrorController,
},
})
this.req = {
body: {},