Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

cli-testing-library

Package Overview
Dependencies
Maintainers
1
Versions
40
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

cli-testing-library

Simple and complete CLI testing utilities that encourage good testing practices.

  • 2.0.2
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
526
increased by14.6%
Maintainers
1
Weekly downloads
 
Created
Source

CLI Testing Library

koala

Simple and complete CLI testing utilities that encourage good testing practices.


Build Status version downloads MIT License PRs Welcome Code of Conduct

All Contributors

Watch on GitHub Star on GitHub

Table of Contents

This project is not affiliated with the "Testing Library" ecosystem that this project is clearly inspired from. We're just big fans :)

Installation

This module is distributed via [npm][npm] which is bundled with [node][node] and should be installed as one of your project's devDependencies:

npm install --save-dev cli-testing-library

Usage

This is currently the only section of "usage" documentation. We'll be expanding it as soon as possible

Usage example:

const {resolve} = require('path')
const {render} = require('cli-testing-library')

test('Is able to make terminal input and view in-progress stdout', async () => {
  const {clear, findByText, queryByText, userEvent} = await render('node', [
    resolve(__dirname, './execute-scripts/stdio-inquirer.js'),
  ])

  const instance = await findByText('First option')

  expect(instance).toBeInTheConsole()

  expect(await findByText('❯ One')).toBeInTheConsole()

  clear()

  userEvent('[ArrowDown]')

  expect(await findByText('❯ Two')).toBeInTheConsole()

  clear()

  userEvent.keyboard('[Enter]')

  expect(await findByText('First option: Two')).toBeInTheConsole()
  expect(await queryByText('First option: Three')).not.toBeInTheConsole()
})

For a API reference documentation, including suggestions on how to use this library, see our documentation introduction with further reading.

While this library does work in Windows, it does not appear to function properly in Windows CI environments, such as GitHub actions. As a result, you may need to either switch CI systems or limit your CI to only run in Linux

If you know how to fix this, please let us know in this tracking issue

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Corbin Crutchley
Corbin Crutchley

💻 📖 🚧
Bitcollage
Bitcollage

📖
Julien Goux
Julien Goux

🐛 💻
Cory Forsyth
Cory Forsyth

📖
eran-cohen
eran-cohen

📖

This project follows the all-contributors specification. Contributions of any kind welcome!

Keywords

FAQs

Package last updated on 02 Jan 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc