12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- import assert from 'node:assert/strict';
- import { describe, it } from 'node:test';
- import os from 'node:os';
- import { getContext } from '../dist/index.js';
- describe('context', () => {
- it('no arguments', async () => {
- const ctx = await getContext([]);
- assert.ok(!ctx.projectName);
- assert.ok(!ctx.template);
- assert.deepEqual(ctx.skipHouston, os.platform() === 'win32');
- assert.ok(!ctx.dryRun);
- });
- it('project name', async () => {
- const ctx = await getContext(['foobar']);
- assert.deepEqual(ctx.projectName, 'foobar');
- });
- it('template', async () => {
- const ctx = await getContext(['--template', 'minimal']);
- assert.deepEqual(ctx.template, 'minimal');
- });
- it('skip houston (explicit)', async () => {
- const ctx = await getContext(['--skip-houston']);
- assert.deepEqual(ctx.skipHouston, true);
- });
- it('skip houston (yes)', async () => {
- const ctx = await getContext(['-y']);
- assert.deepEqual(ctx.skipHouston, true);
- });
- it('skip houston (no)', async () => {
- const ctx = await getContext(['-n']);
- assert.deepEqual(ctx.skipHouston, true);
- });
- it('skip houston (install)', async () => {
- const ctx = await getContext(['--install']);
- assert.deepEqual(ctx.skipHouston, true);
- });
- it('dry run', async () => {
- const ctx = await getContext(['--dry-run']);
- assert.deepEqual(ctx.dryRun, true);
- });
- it('install', async () => {
- const ctx = await getContext(['--install']);
- assert.deepEqual(ctx.install, true);
- });
- it('no install', async () => {
- const ctx = await getContext(['--no-install']);
- assert.deepEqual(ctx.install, false);
- });
- it('git', async () => {
- const ctx = await getContext(['--git']);
- assert.deepEqual(ctx.git, true);
- });
- it('no git', async () => {
- const ctx = await getContext(['--no-git']);
- assert.deepEqual(ctx.git, false);
- });
- it('typescript', async () => {
- const ctx = await getContext(['--typescript', 'strict']);
- assert.deepEqual(ctx.typescript, 'strict');
- });
- });
|