diff --git a/docs/api/app.md b/docs/api/app.md index 78f22127fd796..04ba49b729d76 100644 --- a/docs/api/app.md +++ b/docs/api/app.md @@ -530,12 +530,6 @@ Returns `String` - The current application locale. Possible return values are do **Note:** On Windows you have to call it after the `ready` events gets emitted. -### `app.setLocale(locale)` - -* `locale` String - -Set the locale of the app (must be called before the `ready` event). - ### `app.addRecentDocument(path)` _macOS_ _Windows_ * `path` String diff --git a/docs/api/chrome-command-line-switches.md b/docs/api/chrome-command-line-switches.md index f3e189fdf43cb..09c24f6c195b2 100644 --- a/docs/api/chrome-command-line-switches.md +++ b/docs/api/chrome-command-line-switches.md @@ -28,6 +28,10 @@ Disables the disk cache for HTTP requests. Disable HTTP/2 and SPDY/3.1 protocols. +## --lang + +Set a custom locale. + ## --inspect=`port` and --inspect-brk=`port` Debug-related flags, see the [Debugging the Main Process][debugging-main-process] guide for details. diff --git a/spec/api-app-spec.js b/spec/api-app-spec.js index 539cd661dca3a..0eda951b15d6f 100644 --- a/spec/api-app-spec.js +++ b/spec/api-app-spec.js @@ -112,25 +112,6 @@ describe('app module', () => { }) }) - describe('app.setLocale()', () => { - const testLocale = (locale, result, done) => { - const appPath = path.join(__dirname, 'fixtures', 'api', 'locale-check') - const electronPath = remote.getGlobal('process').execPath - let output = '' - let appProcess = ChildProcess.spawn(electronPath, [appPath, `--lang=${locale}`]) - - appProcess.stdout.on('data', (data) => { output += data }) - appProcess.stdout.on('end', () => { - output = output.replace(/(\r\n|\n|\r)/gm, '') - assert.equal(output, result) - done() - }) - } - - it('should set the locale', (done) => testLocale('fr', 'fr', done)) - it('should not set an invalid locale', (done) => testLocale('asdfkl', 'en-US', done)) - }) - describe('app.isInApplicationsFolder()', () => { before(function () { if (process.platform !== 'darwin') { diff --git a/spec/chromium-spec.js b/spec/chromium-spec.js index 204cd111b48ee..2d388ca3b5744 100644 --- a/spec/chromium-spec.js +++ b/spec/chromium-spec.js @@ -4,6 +4,7 @@ const http = require('http') const path = require('path') const ws = require('ws') const url = require('url') +const ChildProcess = require('child_process') const {ipcRenderer, remote} = require('electron') const {closeWindow} = require('./window-helpers') @@ -26,6 +27,27 @@ describe('chromium feature', () => { listener = null }) + describe('command line switches', () => { + describe('--lang switch', () => { + const testLocale = (locale, result, done) => { + const appPath = path.join(__dirname, 'fixtures', 'api', 'locale-check') + const electronPath = remote.getGlobal('process').execPath + let output = '' + let appProcess = ChildProcess.spawn(electronPath, [appPath, `--lang=${locale}`]) + + appProcess.stdout.on('data', (data) => { output += data }) + appProcess.stdout.on('end', () => { + output = output.replace(/(\r\n|\n|\r)/gm, '') + assert.equal(output, result) + done() + }) + } + + it('should set the locale', (done) => testLocale('fr', 'fr', done)) + it('should not set an invalid locale', (done) => testLocale('asdfkl', 'en-US', done)) + }) + }) + afterEach(() => closeWindow(w).then(() => { w = null })) describe('heap snapshot', () => {