Metadata-Version: 2.1
Name: shellinspector
Version: 0.11.0
Project-URL: Documentation, https://github.com/uberspace/shellinspector#readme
Project-URL: Issues, https://github.com/uberspace/shellinspector/issues
Project-URL: Source, https://github.com/uberspace/shellinspector
Author-email: "uberspace.de" <hallo@uberspace.de>
License: MIT License
Classifier: Development Status :: 4 - Beta
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Requires-Python: >=3.9
Requires-Dist: pexpect==4.8.0
Requires-Dist: termcolor==2.2.0
Description-Content-Type: text/markdown

# Shell Inspector 🕵️‍️

Open a shell session locally or via SSH, execute commands, and test what comes
back.

[![asciicast](https://asciinema.org/a/IfzFtiTPjabw4etcMJmpcuH8f.svg)](https://asciinema.org/a/IfzFtiTPjabw4etcMJmpcuH8f)

First, prepare a spec file, e.g. `readme.ispec`:

```
[@local]$~ ping -c1 google.com
1 packets transmitted
[@local]$ whoami
shellinspector
```

Then, run it:

```
$ python -m shellinspector readme.ispec
running readme.console
PASS [@local]$~ ping -c1 google.com
FAIL [@local]$ whoami
expected:
    shellinspector
actual:
    luto
```

For more details have a look at [`docs/syntax.md`](docs/syntax.md).
