Skip to content
This repository was archived by the owner on Dec 11, 2019. It is now read-only.

Commit f3efaa1

Browse files
authored
Merge pull request #9650 from bsclifton/hide-prerelease-linux
Hide pre-release preference, since Linux builds don't auto-update
2 parents ebec62b + 82253c5 commit f3efaa1

File tree

2 files changed

+89
-1
lines changed

2 files changed

+89
-1
lines changed

app/renderer/components/preferences/advancedTab.js

+13-1
Original file line numberDiff line numberDiff line change
@@ -21,14 +21,26 @@ const {scaleSize} = require('../../../common/constants/toolbarUserInterfaceScale
2121

2222
// Utils
2323
const {changeSetting} = require('../../lib/settingsUtil')
24+
const platformUtil = require('../../../common/lib/platformUtil')
2425

2526
class AdvancedTab extends ImmutableComponent {
27+
previewReleases () {
28+
return platformUtil.isLinux()
29+
? null
30+
: <SettingCheckbox
31+
dataL10nId='updateToPreviewReleases'
32+
data-test-id='update-to-preview-releases'
33+
prefKey={settings.UPDATE_TO_PREVIEW_RELEASES}
34+
settings={this.props.settings}
35+
onChangeSetting={this.props.onChangeSetting} />
36+
}
37+
2638
render () {
2739
return <section>
2840
<main className={css(styles.advancedTabMain)}>
2941
<DefaultSectionTitle data-l10n-id='contentSettings' />
3042
<SettingsList>
31-
<SettingCheckbox dataL10nId='updateToPreviewReleases' prefKey={settings.UPDATE_TO_PREVIEW_RELEASES} settings={this.props.settings} onChangeSetting={this.props.onChangeSetting} />
43+
{this.previewReleases()}
3244
<SettingCheckbox dataL10nId='useHardwareAcceleration' prefKey={settings.HARDWARE_ACCELERATION_ENABLED} settings={this.props.settings} onChangeSetting={this.props.onChangeSetting} />
3345
<SettingCheckbox dataL10nId='useSmoothScroll' prefKey={settings.SMOOTH_SCROLL_ENABLED} settings={this.props.settings} onChangeSetting={this.props.onChangeSetting} />
3446
<SettingCheckbox dataL10nId='sendCrashReports' prefKey={settings.SEND_CRASH_REPORTS} settings={this.props.settings} onChangeSetting={this.props.onChangeSetting} />
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
/* This Source Code Form is subject to the terms of the Mozilla Public
2+
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
3+
* You can obtain one at http://mozilla.org/MPL/2.0/. */
4+
/* global describe, before, after, it */
5+
6+
const mockery = require('mockery')
7+
const {mount} = require('enzyme')
8+
const assert = require('assert')
9+
const fakeElectron = require('../../../../lib/fakeElectron')
10+
let AdvancedTab
11+
require('../../../../braveUnit')
12+
13+
describe('AdvancedTab component', function () {
14+
before(function () {
15+
mockery.enable({
16+
warnOnReplace: false,
17+
warnOnUnregistered: false,
18+
useCleanCache: true
19+
})
20+
mockery.registerMock('../../less/switchControls.less', {})
21+
mockery.registerMock('../../less/about/preferences.less', {})
22+
mockery.registerMock('../../less/forms.less', {})
23+
mockery.registerMock('../../less/button.less', {})
24+
mockery.registerMock('../../node_modules/font-awesome/css/font-awesome.css', {})
25+
mockery.registerMock('../../../extensions/brave/img/caret_down_grey.svg')
26+
27+
// default platformUtil to non-Linux
28+
mockery.registerMock('../../../common/lib/platformUtil', {isLinux: () => false})
29+
30+
mockery.registerMock('electron', fakeElectron)
31+
window.chrome = fakeElectron
32+
33+
AdvancedTab = require('../../../../../../app/renderer/components/preferences/advancedTab')
34+
})
35+
after(function () {
36+
mockery.disable()
37+
})
38+
39+
describe('AdvancedTab', function () {
40+
describe('previewReleases', function () {
41+
describe('on macOS', function () {
42+
it('is shown', function () {
43+
const wrapper = mount(
44+
<AdvancedTab onChangeSetting={null} />
45+
)
46+
const instance = wrapper.instance()
47+
assert(instance.previewReleases())
48+
})
49+
})
50+
51+
describe('on Linux', function () {
52+
before(function () {
53+
mockery.deregisterMock('../../../common/lib/platformUtil')
54+
mockery.registerMock('../../../common/lib/platformUtil', {isLinux: () => true})
55+
mockery.resetCache()
56+
AdvancedTab = require('../../../../../../app/renderer/components/preferences/advancedTab')
57+
})
58+
59+
after(function () {
60+
mockery.deregisterMock('../../../common/lib/platformUtil')
61+
mockery.registerMock('../../../common/lib/platformUtil', {isLinux: () => false})
62+
mockery.resetCache()
63+
AdvancedTab = require('../../../../../../app/renderer/components/preferences/advancedTab')
64+
})
65+
66+
it('is hidden', function () {
67+
const wrapper = mount(
68+
<AdvancedTab onChangeSetting={null} />
69+
)
70+
const instance = wrapper.instance()
71+
assert.equal(instance.previewReleases(), null)
72+
})
73+
})
74+
})
75+
})
76+
})

0 commit comments

Comments
 (0)