npx oclif generate kingoftime-cli
This commit is contained in:
commit
3a8b0d0430
19 changed files with 571 additions and 0 deletions
11
.editorconfig
Normal file
11
.editorconfig
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
root = true
|
||||||
|
|
||||||
|
[*]
|
||||||
|
indent_style = space
|
||||||
|
indent_size = 2
|
||||||
|
charset = utf-8
|
||||||
|
trim_trailing_whitespace = true
|
||||||
|
insert_final_newline = true
|
||||||
|
|
||||||
|
[*.md]
|
||||||
|
trim_trailing_whitespace = false
|
1
.eslintignore
Normal file
1
.eslintignore
Normal file
|
@ -0,0 +1 @@
|
||||||
|
/dist
|
6
.eslintrc
Normal file
6
.eslintrc
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
{
|
||||||
|
"extends": [
|
||||||
|
"oclif",
|
||||||
|
"oclif-typescript"
|
||||||
|
]
|
||||||
|
}
|
10
.gitignore
vendored
Normal file
10
.gitignore
vendored
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
*-debug.log
|
||||||
|
*-error.log
|
||||||
|
/.nyc_output
|
||||||
|
/dist
|
||||||
|
/lib
|
||||||
|
/package-lock.json
|
||||||
|
/tmp
|
||||||
|
/yarn.lock
|
||||||
|
node_modules
|
||||||
|
oclif.manifest.json
|
12
.mocharc.json
Normal file
12
.mocharc.json
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
{
|
||||||
|
"require": [
|
||||||
|
"test/helpers/init.js",
|
||||||
|
"ts-node/register"
|
||||||
|
],
|
||||||
|
"watch-extensions": [
|
||||||
|
"ts"
|
||||||
|
],
|
||||||
|
"recursive": true,
|
||||||
|
"reporter": "spec",
|
||||||
|
"timeout": 60000
|
||||||
|
}
|
337
README.md
Normal file
337
README.md
Normal file
|
@ -0,0 +1,337 @@
|
||||||
|
oclif-hello-world
|
||||||
|
=================
|
||||||
|
|
||||||
|
oclif example Hello World CLI
|
||||||
|
|
||||||
|
[![oclif](https://img.shields.io/badge/cli-oclif-brightgreen.svg)](https://oclif.io)
|
||||||
|
[![Version](https://img.shields.io/npm/v/oclif-hello-world.svg)](https://npmjs.org/package/oclif-hello-world)
|
||||||
|
[![CircleCI](https://circleci.com/gh/oclif/hello-world/tree/main.svg?style=shield)](https://circleci.com/gh/oclif/hello-world/tree/main)
|
||||||
|
[![Downloads/week](https://img.shields.io/npm/dw/oclif-hello-world.svg)](https://npmjs.org/package/oclif-hello-world)
|
||||||
|
[![License](https://img.shields.io/npm/l/oclif-hello-world.svg)](https://github.com/oclif/hello-world/blob/main/package.json)
|
||||||
|
|
||||||
|
<!-- toc -->
|
||||||
|
* [Usage](#usage)
|
||||||
|
* [Commands](#commands)
|
||||||
|
<!-- tocstop -->
|
||||||
|
# Usage
|
||||||
|
<!-- usage -->
|
||||||
|
```sh-session
|
||||||
|
$ npm install -g kingoftime-cli
|
||||||
|
$ kot COMMAND
|
||||||
|
running command...
|
||||||
|
$ kot (--version)
|
||||||
|
kingoftime-cli/0.0.0 darwin-x64 node-v18.15.0
|
||||||
|
$ kot --help [COMMAND]
|
||||||
|
USAGE
|
||||||
|
$ kot COMMAND
|
||||||
|
...
|
||||||
|
```
|
||||||
|
<!-- usagestop -->
|
||||||
|
# Commands
|
||||||
|
<!-- commands -->
|
||||||
|
* [`kot hello PERSON`](#kot-hello-person)
|
||||||
|
* [`kot hello world`](#kot-hello-world)
|
||||||
|
* [`kot help [COMMANDS]`](#kot-help-commands)
|
||||||
|
* [`kot plugins`](#kot-plugins)
|
||||||
|
* [`kot plugins:install PLUGIN...`](#kot-pluginsinstall-plugin)
|
||||||
|
* [`kot plugins:inspect PLUGIN...`](#kot-pluginsinspect-plugin)
|
||||||
|
* [`kot plugins:install PLUGIN...`](#kot-pluginsinstall-plugin-1)
|
||||||
|
* [`kot plugins:link PLUGIN`](#kot-pluginslink-plugin)
|
||||||
|
* [`kot plugins:uninstall PLUGIN...`](#kot-pluginsuninstall-plugin)
|
||||||
|
* [`kot plugins:uninstall PLUGIN...`](#kot-pluginsuninstall-plugin-1)
|
||||||
|
* [`kot plugins:uninstall PLUGIN...`](#kot-pluginsuninstall-plugin-2)
|
||||||
|
* [`kot plugins update`](#kot-plugins-update)
|
||||||
|
|
||||||
|
## `kot hello PERSON`
|
||||||
|
|
||||||
|
Say hello
|
||||||
|
|
||||||
|
```
|
||||||
|
USAGE
|
||||||
|
$ kot hello PERSON -f <value>
|
||||||
|
|
||||||
|
ARGUMENTS
|
||||||
|
PERSON Person to say hello to
|
||||||
|
|
||||||
|
FLAGS
|
||||||
|
-f, --from=<value> (required) Who is saying hello
|
||||||
|
|
||||||
|
DESCRIPTION
|
||||||
|
Say hello
|
||||||
|
|
||||||
|
EXAMPLES
|
||||||
|
$ oex hello friend --from oclif
|
||||||
|
hello friend from oclif! (./src/commands/hello/index.ts)
|
||||||
|
```
|
||||||
|
|
||||||
|
_See code: [dist/commands/hello/index.ts](https://github.com/adamu/kingoftime-cli/blob/v0.0.0/dist/commands/hello/index.ts)_
|
||||||
|
|
||||||
|
## `kot hello world`
|
||||||
|
|
||||||
|
Say hello world
|
||||||
|
|
||||||
|
```
|
||||||
|
USAGE
|
||||||
|
$ kot hello world
|
||||||
|
|
||||||
|
DESCRIPTION
|
||||||
|
Say hello world
|
||||||
|
|
||||||
|
EXAMPLES
|
||||||
|
$ kot hello world
|
||||||
|
hello world! (./src/commands/hello/world.ts)
|
||||||
|
```
|
||||||
|
|
||||||
|
## `kot help [COMMANDS]`
|
||||||
|
|
||||||
|
Display help for kot.
|
||||||
|
|
||||||
|
```
|
||||||
|
USAGE
|
||||||
|
$ kot help [COMMANDS] [-n]
|
||||||
|
|
||||||
|
ARGUMENTS
|
||||||
|
COMMANDS Command to show help for.
|
||||||
|
|
||||||
|
FLAGS
|
||||||
|
-n, --nested-commands Include all nested commands in the output.
|
||||||
|
|
||||||
|
DESCRIPTION
|
||||||
|
Display help for kot.
|
||||||
|
```
|
||||||
|
|
||||||
|
_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v5.2.9/src/commands/help.ts)_
|
||||||
|
|
||||||
|
## `kot plugins`
|
||||||
|
|
||||||
|
List installed plugins.
|
||||||
|
|
||||||
|
```
|
||||||
|
USAGE
|
||||||
|
$ kot plugins [--core]
|
||||||
|
|
||||||
|
FLAGS
|
||||||
|
--core Show core plugins.
|
||||||
|
|
||||||
|
DESCRIPTION
|
||||||
|
List installed plugins.
|
||||||
|
|
||||||
|
EXAMPLES
|
||||||
|
$ kot plugins
|
||||||
|
```
|
||||||
|
|
||||||
|
_See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v2.4.4/src/commands/plugins/index.ts)_
|
||||||
|
|
||||||
|
## `kot plugins:install PLUGIN...`
|
||||||
|
|
||||||
|
Installs a plugin into the CLI.
|
||||||
|
|
||||||
|
```
|
||||||
|
USAGE
|
||||||
|
$ kot plugins:install PLUGIN...
|
||||||
|
|
||||||
|
ARGUMENTS
|
||||||
|
PLUGIN Plugin to install.
|
||||||
|
|
||||||
|
FLAGS
|
||||||
|
-f, --force Run yarn install with force flag.
|
||||||
|
-h, --help Show CLI help.
|
||||||
|
-v, --verbose
|
||||||
|
|
||||||
|
DESCRIPTION
|
||||||
|
Installs a plugin into the CLI.
|
||||||
|
Can be installed from npm or a git url.
|
||||||
|
|
||||||
|
Installation of a user-installed plugin will override a core plugin.
|
||||||
|
|
||||||
|
e.g. If you have a core plugin that has a 'hello' command, installing a user-installed plugin with a 'hello' command
|
||||||
|
will override the core plugin implementation. This is useful if a user needs to update core plugin functionality in
|
||||||
|
the CLI without the need to patch and update the whole CLI.
|
||||||
|
|
||||||
|
|
||||||
|
ALIASES
|
||||||
|
$ kot plugins add
|
||||||
|
|
||||||
|
EXAMPLES
|
||||||
|
$ kot plugins:install myplugin
|
||||||
|
|
||||||
|
$ kot plugins:install https://github.com/someuser/someplugin
|
||||||
|
|
||||||
|
$ kot plugins:install someuser/someplugin
|
||||||
|
```
|
||||||
|
|
||||||
|
## `kot plugins:inspect PLUGIN...`
|
||||||
|
|
||||||
|
Displays installation properties of a plugin.
|
||||||
|
|
||||||
|
```
|
||||||
|
USAGE
|
||||||
|
$ kot plugins:inspect PLUGIN...
|
||||||
|
|
||||||
|
ARGUMENTS
|
||||||
|
PLUGIN [default: .] Plugin to inspect.
|
||||||
|
|
||||||
|
FLAGS
|
||||||
|
-h, --help Show CLI help.
|
||||||
|
-v, --verbose
|
||||||
|
|
||||||
|
GLOBAL FLAGS
|
||||||
|
--json Format output as json.
|
||||||
|
|
||||||
|
DESCRIPTION
|
||||||
|
Displays installation properties of a plugin.
|
||||||
|
|
||||||
|
EXAMPLES
|
||||||
|
$ kot plugins:inspect myplugin
|
||||||
|
```
|
||||||
|
|
||||||
|
## `kot plugins:install PLUGIN...`
|
||||||
|
|
||||||
|
Installs a plugin into the CLI.
|
||||||
|
|
||||||
|
```
|
||||||
|
USAGE
|
||||||
|
$ kot plugins:install PLUGIN...
|
||||||
|
|
||||||
|
ARGUMENTS
|
||||||
|
PLUGIN Plugin to install.
|
||||||
|
|
||||||
|
FLAGS
|
||||||
|
-f, --force Run yarn install with force flag.
|
||||||
|
-h, --help Show CLI help.
|
||||||
|
-v, --verbose
|
||||||
|
|
||||||
|
DESCRIPTION
|
||||||
|
Installs a plugin into the CLI.
|
||||||
|
Can be installed from npm or a git url.
|
||||||
|
|
||||||
|
Installation of a user-installed plugin will override a core plugin.
|
||||||
|
|
||||||
|
e.g. If you have a core plugin that has a 'hello' command, installing a user-installed plugin with a 'hello' command
|
||||||
|
will override the core plugin implementation. This is useful if a user needs to update core plugin functionality in
|
||||||
|
the CLI without the need to patch and update the whole CLI.
|
||||||
|
|
||||||
|
|
||||||
|
ALIASES
|
||||||
|
$ kot plugins add
|
||||||
|
|
||||||
|
EXAMPLES
|
||||||
|
$ kot plugins:install myplugin
|
||||||
|
|
||||||
|
$ kot plugins:install https://github.com/someuser/someplugin
|
||||||
|
|
||||||
|
$ kot plugins:install someuser/someplugin
|
||||||
|
```
|
||||||
|
|
||||||
|
## `kot plugins:link PLUGIN`
|
||||||
|
|
||||||
|
Links a plugin into the CLI for development.
|
||||||
|
|
||||||
|
```
|
||||||
|
USAGE
|
||||||
|
$ kot plugins:link PLUGIN
|
||||||
|
|
||||||
|
ARGUMENTS
|
||||||
|
PATH [default: .] path to plugin
|
||||||
|
|
||||||
|
FLAGS
|
||||||
|
-h, --help Show CLI help.
|
||||||
|
-v, --verbose
|
||||||
|
|
||||||
|
DESCRIPTION
|
||||||
|
Links a plugin into the CLI for development.
|
||||||
|
Installation of a linked plugin will override a user-installed or core plugin.
|
||||||
|
|
||||||
|
e.g. If you have a user-installed or core plugin that has a 'hello' command, installing a linked plugin with a 'hello'
|
||||||
|
command will override the user-installed or core plugin implementation. This is useful for development work.
|
||||||
|
|
||||||
|
|
||||||
|
EXAMPLES
|
||||||
|
$ kot plugins:link myplugin
|
||||||
|
```
|
||||||
|
|
||||||
|
## `kot plugins:uninstall PLUGIN...`
|
||||||
|
|
||||||
|
Removes a plugin from the CLI.
|
||||||
|
|
||||||
|
```
|
||||||
|
USAGE
|
||||||
|
$ kot plugins:uninstall PLUGIN...
|
||||||
|
|
||||||
|
ARGUMENTS
|
||||||
|
PLUGIN plugin to uninstall
|
||||||
|
|
||||||
|
FLAGS
|
||||||
|
-h, --help Show CLI help.
|
||||||
|
-v, --verbose
|
||||||
|
|
||||||
|
DESCRIPTION
|
||||||
|
Removes a plugin from the CLI.
|
||||||
|
|
||||||
|
ALIASES
|
||||||
|
$ kot plugins unlink
|
||||||
|
$ kot plugins remove
|
||||||
|
```
|
||||||
|
|
||||||
|
## `kot plugins:uninstall PLUGIN...`
|
||||||
|
|
||||||
|
Removes a plugin from the CLI.
|
||||||
|
|
||||||
|
```
|
||||||
|
USAGE
|
||||||
|
$ kot plugins:uninstall PLUGIN...
|
||||||
|
|
||||||
|
ARGUMENTS
|
||||||
|
PLUGIN plugin to uninstall
|
||||||
|
|
||||||
|
FLAGS
|
||||||
|
-h, --help Show CLI help.
|
||||||
|
-v, --verbose
|
||||||
|
|
||||||
|
DESCRIPTION
|
||||||
|
Removes a plugin from the CLI.
|
||||||
|
|
||||||
|
ALIASES
|
||||||
|
$ kot plugins unlink
|
||||||
|
$ kot plugins remove
|
||||||
|
```
|
||||||
|
|
||||||
|
## `kot plugins:uninstall PLUGIN...`
|
||||||
|
|
||||||
|
Removes a plugin from the CLI.
|
||||||
|
|
||||||
|
```
|
||||||
|
USAGE
|
||||||
|
$ kot plugins:uninstall PLUGIN...
|
||||||
|
|
||||||
|
ARGUMENTS
|
||||||
|
PLUGIN plugin to uninstall
|
||||||
|
|
||||||
|
FLAGS
|
||||||
|
-h, --help Show CLI help.
|
||||||
|
-v, --verbose
|
||||||
|
|
||||||
|
DESCRIPTION
|
||||||
|
Removes a plugin from the CLI.
|
||||||
|
|
||||||
|
ALIASES
|
||||||
|
$ kot plugins unlink
|
||||||
|
$ kot plugins remove
|
||||||
|
```
|
||||||
|
|
||||||
|
## `kot plugins update`
|
||||||
|
|
||||||
|
Update installed plugins.
|
||||||
|
|
||||||
|
```
|
||||||
|
USAGE
|
||||||
|
$ kot plugins update [-h] [-v]
|
||||||
|
|
||||||
|
FLAGS
|
||||||
|
-h, --help Show CLI help.
|
||||||
|
-v, --verbose
|
||||||
|
|
||||||
|
DESCRIPTION
|
||||||
|
Update installed plugins.
|
||||||
|
```
|
||||||
|
<!-- commandsstop -->
|
17
bin/dev
Executable file
17
bin/dev
Executable file
|
@ -0,0 +1,17 @@
|
||||||
|
#!/usr/bin/env node
|
||||||
|
|
||||||
|
const oclif = require('@oclif/core')
|
||||||
|
|
||||||
|
const path = require('path')
|
||||||
|
const project = path.join(__dirname, '..', 'tsconfig.json')
|
||||||
|
|
||||||
|
// In dev mode -> use ts-node and dev plugins
|
||||||
|
process.env.NODE_ENV = 'development'
|
||||||
|
|
||||||
|
require('ts-node').register({project})
|
||||||
|
|
||||||
|
// In dev mode, always show stack traces
|
||||||
|
oclif.settings.debug = true;
|
||||||
|
|
||||||
|
// Start the CLI
|
||||||
|
oclif.run().then(oclif.flush).catch(oclif.Errors.handle)
|
3
bin/dev.cmd
Normal file
3
bin/dev.cmd
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
@echo off
|
||||||
|
|
||||||
|
node "%~dp0\dev" %*
|
5
bin/run
Executable file
5
bin/run
Executable file
|
@ -0,0 +1,5 @@
|
||||||
|
#!/usr/bin/env node
|
||||||
|
|
||||||
|
const oclif = require('@oclif/core')
|
||||||
|
|
||||||
|
oclif.run().then(require('@oclif/core/flush')).catch(require('@oclif/core/handle'))
|
3
bin/run.cmd
Normal file
3
bin/run.cmd
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
@echo off
|
||||||
|
|
||||||
|
node "%~dp0\run" %*
|
72
package.json
Normal file
72
package.json
Normal file
|
@ -0,0 +1,72 @@
|
||||||
|
{
|
||||||
|
"name": "kingoftime-cli",
|
||||||
|
"version": "0.0.0",
|
||||||
|
"description": "King of Time CLI",
|
||||||
|
"author": "Adam Millerchip @adamu",
|
||||||
|
"bin": {
|
||||||
|
"kot": "./bin/run"
|
||||||
|
},
|
||||||
|
"homepage": "https://github.com/adamu/kingoftime-cli",
|
||||||
|
"license": "MIT",
|
||||||
|
"main": "dist/index.js",
|
||||||
|
"repository": "adamu/kingoftime-cli",
|
||||||
|
"files": [
|
||||||
|
"/bin",
|
||||||
|
"/dist",
|
||||||
|
"/npm-shrinkwrap.json",
|
||||||
|
"/oclif.manifest.json"
|
||||||
|
],
|
||||||
|
"dependencies": {
|
||||||
|
"@oclif/core": "^2",
|
||||||
|
"@oclif/plugin-help": "^5",
|
||||||
|
"@oclif/plugin-plugins": "^2.4.4"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@oclif/test": "^2.3.14",
|
||||||
|
"@types/chai": "^4",
|
||||||
|
"@types/mocha": "^9.0.0",
|
||||||
|
"@types/node": "^16.18.23",
|
||||||
|
"chai": "^4",
|
||||||
|
"eslint": "^7.32.0",
|
||||||
|
"eslint-config-oclif": "^4",
|
||||||
|
"eslint-config-oclif-typescript": "^1.0.3",
|
||||||
|
"mocha": "^9",
|
||||||
|
"oclif": "^3",
|
||||||
|
"shx": "^0.3.3",
|
||||||
|
"ts-node": "^10.9.1",
|
||||||
|
"tslib": "^2.5.0",
|
||||||
|
"typescript": "^4.9.5"
|
||||||
|
},
|
||||||
|
"oclif": {
|
||||||
|
"bin": "kot",
|
||||||
|
"dirname": "kot",
|
||||||
|
"commands": "./dist/commands",
|
||||||
|
"plugins": [
|
||||||
|
"@oclif/plugin-help",
|
||||||
|
"@oclif/plugin-plugins"
|
||||||
|
],
|
||||||
|
"topicSeparator": " ",
|
||||||
|
"topics": {
|
||||||
|
"hello": {
|
||||||
|
"description": "Say hello to the world and others"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"scripts": {
|
||||||
|
"build": "shx rm -rf dist && tsc -b",
|
||||||
|
"lint": "eslint . --ext .ts --config .eslintrc",
|
||||||
|
"postpack": "shx rm -f oclif.manifest.json",
|
||||||
|
"posttest": "npm run lint",
|
||||||
|
"prepack": "npm run build && oclif manifest && oclif readme",
|
||||||
|
"test": "mocha --forbid-only \"test/**/*.test.ts\"",
|
||||||
|
"version": "oclif readme && git add README.md"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12.0.0"
|
||||||
|
},
|
||||||
|
"bugs": "https://github.com/adamu/kingoftime-cli/issues",
|
||||||
|
"keywords": [
|
||||||
|
"oclif"
|
||||||
|
],
|
||||||
|
"types": "dist/index.d.ts"
|
||||||
|
}
|
25
src/commands/hello/index.ts
Normal file
25
src/commands/hello/index.ts
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
import {Args, Command, Flags} from '@oclif/core'
|
||||||
|
|
||||||
|
export default class Hello extends Command {
|
||||||
|
static description = 'Say hello'
|
||||||
|
|
||||||
|
static examples = [
|
||||||
|
`$ oex hello friend --from oclif
|
||||||
|
hello friend from oclif! (./src/commands/hello/index.ts)
|
||||||
|
`,
|
||||||
|
]
|
||||||
|
|
||||||
|
static flags = {
|
||||||
|
from: Flags.string({char: 'f', description: 'Who is saying hello', required: true}),
|
||||||
|
}
|
||||||
|
|
||||||
|
static args = {
|
||||||
|
person: Args.string({description: 'Person to say hello to', required: true}),
|
||||||
|
}
|
||||||
|
|
||||||
|
async run(): Promise<void> {
|
||||||
|
const {args, flags} = await this.parse(Hello)
|
||||||
|
|
||||||
|
this.log(`hello ${args.person} from ${flags.from}! (./src/commands/hello/index.ts)`)
|
||||||
|
}
|
||||||
|
}
|
19
src/commands/hello/world.ts
Normal file
19
src/commands/hello/world.ts
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
import {Command} from '@oclif/core'
|
||||||
|
|
||||||
|
export default class World extends Command {
|
||||||
|
static description = 'Say hello world'
|
||||||
|
|
||||||
|
static examples = [
|
||||||
|
`<%= config.bin %> <%= command.id %>
|
||||||
|
hello world! (./src/commands/hello/world.ts)
|
||||||
|
`,
|
||||||
|
]
|
||||||
|
|
||||||
|
static flags = {}
|
||||||
|
|
||||||
|
static args = {}
|
||||||
|
|
||||||
|
async run(): Promise<void> {
|
||||||
|
this.log('hello world! (./src/commands/hello/world.ts)')
|
||||||
|
}
|
||||||
|
}
|
1
src/index.ts
Normal file
1
src/index.ts
Normal file
|
@ -0,0 +1 @@
|
||||||
|
export {run} from '@oclif/core'
|
10
test/commands/hello/index.test.ts
Normal file
10
test/commands/hello/index.test.ts
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
import {expect, test} from '@oclif/test'
|
||||||
|
|
||||||
|
describe('hello', () => {
|
||||||
|
test
|
||||||
|
.stdout()
|
||||||
|
.command(['hello', 'friend', '--from=oclif'])
|
||||||
|
.it('runs hello cmd', ctx => {
|
||||||
|
expect(ctx.stdout).to.contain('hello friend from oclif!')
|
||||||
|
})
|
||||||
|
})
|
10
test/commands/hello/world.test.ts
Normal file
10
test/commands/hello/world.test.ts
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
import {expect, test} from '@oclif/test'
|
||||||
|
|
||||||
|
describe('hello world', () => {
|
||||||
|
test
|
||||||
|
.stdout()
|
||||||
|
.command(['hello:world'])
|
||||||
|
.it('runs hello world cmd', ctx => {
|
||||||
|
expect(ctx.stdout).to.contain('hello world!')
|
||||||
|
})
|
||||||
|
})
|
6
test/helpers/init.js
Normal file
6
test/helpers/init.js
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
const path = require('path')
|
||||||
|
process.env.TS_NODE_PROJECT = path.resolve('test/tsconfig.json')
|
||||||
|
process.env.NODE_ENV = 'development'
|
||||||
|
|
||||||
|
global.oclif = global.oclif || {}
|
||||||
|
global.oclif.columns = 80
|
9
test/tsconfig.json
Normal file
9
test/tsconfig.json
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
{
|
||||||
|
"extends": "../tsconfig",
|
||||||
|
"compilerOptions": {
|
||||||
|
"noEmit": true
|
||||||
|
},
|
||||||
|
"references": [
|
||||||
|
{"path": ".."}
|
||||||
|
]
|
||||||
|
}
|
14
tsconfig.json
Normal file
14
tsconfig.json
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
{
|
||||||
|
"compilerOptions": {
|
||||||
|
"declaration": true,
|
||||||
|
"importHelpers": true,
|
||||||
|
"module": "commonjs",
|
||||||
|
"outDir": "dist",
|
||||||
|
"rootDir": "src",
|
||||||
|
"strict": true,
|
||||||
|
"target": "es2019"
|
||||||
|
},
|
||||||
|
"include": [
|
||||||
|
"src/**/*"
|
||||||
|
]
|
||||||
|
}
|
Loading…
Reference in a new issue