Skip to content
This repository was archived by the owner on Jan 15, 2025. It is now read-only.

Commit 26ac202

Browse files
authored
Merge pull request #210 from microsoft/emimunoz/config
Adding flag to enable telemetry
2 parents 180906d + 12965dd commit 26ac202

File tree

2 files changed

+23
-10
lines changed

2 files changed

+23
-10
lines changed

packages/config/src/commands/config/set/telemetry.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,18 @@ export default class ConfigSetTelemetry extends Command {
66

77
static flags = {
88
help: flags.help({char: 'h'}),
9-
disable: flags.boolean({char: 'd', description: 'Disable tlemetry', default: false})
9+
disable: flags.boolean({char: 'd', description: 'Disable tlemetry'}),
10+
enable: flags.boolean({char: 'e', description: 'Enable tlemetry'})
1011
}
1112

1213
async run() {
1314
const {flags} = this.parse(ConfigSetTelemetry)
1415
let userConfig: Config = await getConfigFile(this.config.configDir)
15-
userConfig.telemetry = !flags.disable
16+
if (!flags.enable && !flags.disable) {
17+
this._help()
18+
}
19+
userConfig.telemetry = flags.enable ? true : false
1620
await writeConfigFile(this.config.configDir, userConfig)
17-
this.log('Telemetry set to ' + !flags.disable)
21+
this.log('Telemetry set to ' + userConfig.telemetry)
1822
}
1923
}

packages/config/test/commands/config/set/telemetry.test.ts

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,27 +4,36 @@ const fs = require('fs-extra')
44

55
describe('config:set:telemetry', () => {
66
test
7-
before(async function() {
7+
beforeEach(async function() {
88
await initTestConfigFile()
99
});
1010

1111
after(async function() {
1212
await deleteTestConfigFile()
1313
});
14-
15-
test
14+
15+
test
16+
.stdout()
17+
.command(['config:set:telemetry', '--disable'])
18+
.it('Disables telemetry in config file', async ctx => {
19+
let config = await fs.readJSON(getConfigFile())
20+
expect(config.telemetry).to.be.false
21+
})
22+
23+
test
1624
.stdout()
1725
.command(['config:set:telemetry'])
18-
.it('Enables telemetry in config file', async ctx => {
26+
.it('Shows help and keeps the same seetings', async ctx => {
1927
let config = await fs.readJSON(getConfigFile())
2028
expect(config.telemetry).to.be.true
29+
expect(ctx.stdout).to.be.contain('Enable or disable telemetry')
2130
})
2231

2332
test
2433
.stdout()
25-
.command(['config:set:telemetry', '--disable'])
26-
.it('Disables telemetry in config file', async ctx => {
34+
.command(['config:set:telemetry', '--enable'])
35+
.it('Enables telemetry in config file', async ctx => {
2736
let config = await fs.readJSON(getConfigFile())
28-
expect(config.telemetry).to.be.false
37+
expect(config.telemetry).to.be.true
2938
})
3039
})

0 commit comments

Comments
 (0)