SettingsTests.js 974 B

1234567891011121314151617181920212223242526
  1. const chai = require('chai')
  2. const { expect } = chai
  3. function clearSettingsCache() {
  4. const monorepoPath = require
  5. .resolve('../../../../config/settings.defaults.js')
  6. .replace(/\/services\/web\/config\/settings\.defaults\.js$/, '')
  7. const settingsDeps = Object.keys(require.cache).filter(
  8. x =>
  9. x.includes('/@overleaf/settings') ||
  10. x.includes(`${monorepoPath}/libraries/settings`) ||
  11. x.includes(`${monorepoPath}/services/web/config`)
  12. )
  13. settingsDeps.forEach(dep => delete require.cache[dep])
  14. }
  15. describe('settings.defaults', function () {
  16. it('additional text extensions can be added via config', function () {
  17. clearSettingsCache()
  18. process.env.ADDITIONAL_TEXT_EXTENSIONS = 'abc, xyz'
  19. const settings = require('@overleaf/settings')
  20. expect(settings.textExtensions).to.include('tex') // from the default list
  21. expect(settings.textExtensions).to.include('abc')
  22. expect(settings.textExtensions).to.include('xyz')
  23. })
  24. })