Generate placeholder checkin and checkout commands

This commit is contained in:
Adam Millerchip 2023-04-14 22:21:21 +09:00
parent 3a8b0d0430
commit 2a53b55801
4 changed files with 94 additions and 0 deletions

30
src/commands/checkin.ts Normal file
View file

@ -0,0 +1,30 @@
import {Args, Command, Flags} from '@oclif/core'
export default class Checkin extends Command {
static description = 'describe the command here'
static examples = [
'<%= config.bin %> <%= command.id %>',
]
static flags = {
// flag with a value (-n, --name=VALUE)
name: Flags.string({char: 'n', description: 'name to print'}),
// flag with no value (-f, --force)
force: Flags.boolean({char: 'f'}),
}
static args = {
file: Args.string({description: 'file to read'}),
}
public async run(): Promise<void> {
const {args, flags} = await this.parse(Checkin)
const name = flags.name ?? 'world'
this.log(`hello ${name} from src/commands/checkin.ts`)
if (args.file && flags.force) {
this.log(`you input --force and --file: ${args.file}`)
}
}
}

30
src/commands/checkout.ts Normal file
View file

@ -0,0 +1,30 @@
import {Args, Command, Flags} from '@oclif/core'
export default class Checkout extends Command {
static description = 'describe the command here'
static examples = [
'<%= config.bin %> <%= command.id %>',
]
static flags = {
// flag with a value (-n, --name=VALUE)
name: Flags.string({char: 'n', description: 'name to print'}),
// flag with no value (-f, --force)
force: Flags.boolean({char: 'f'}),
}
static args = {
file: Args.string({description: 'file to read'}),
}
public async run(): Promise<void> {
const {args, flags} = await this.parse(Checkout)
const name = flags.name ?? 'world'
this.log(`hello ${name} from src/commands/checkout.ts`)
if (args.file && flags.force) {
this.log(`you input --force and --file: ${args.file}`)
}
}
}

View file

@ -0,0 +1,17 @@
import {expect, test} from '@oclif/test'
describe('checkin', () => {
test
.stdout()
.command(['checkin'])
.it('runs hello', ctx => {
expect(ctx.stdout).to.contain('hello world')
})
test
.stdout()
.command(['checkin', '--name', 'jeff'])
.it('runs hello --name jeff', ctx => {
expect(ctx.stdout).to.contain('hello jeff')
})
})

View file

@ -0,0 +1,17 @@
import {expect, test} from '@oclif/test'
describe('checkout', () => {
test
.stdout()
.command(['checkout'])
.it('runs hello', ctx => {
expect(ctx.stdout).to.contain('hello world')
})
test
.stdout()
.command(['checkout', '--name', 'jeff'])
.it('runs hello --name jeff', ctx => {
expect(ctx.stdout).to.contain('hello jeff')
})
})