irc-parser-tests

command module
v0.0.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 4, 2020 License: CC0-1.0 Imports: 9 Imported by: 0

README

IRC Parser Tests

Various tests for IRC parsers so people can check to ensure they're consistent. These tests are based on existing test suites and widespread client behaviour.

Note: This is still being written. Feel free to suggest or contribute tests - PRs are welcomed!

Testing

There are two included tests used to test these vectors, the Python and Golang programs.

Using the python library

Either pip install irc_parser_tests or add irc_parser_tests to your requirements.txt. The test data is available in the module parser_tests.

Releasing a new python version
  1. Bump the version identifier in parser_tests/__init__.py
  2. Commit the version bump and tag it git tag v<version>
  3. Push to master
  4. Github actions will deploy to PyPi
Python

The test.py script uses the girc and ircmatch libraries as reference implementations, as well as pyyaml to parse the test files.

To install these libraries, run:

pip3 install --upgrade girc ircmatch pyyaml

After that, simply run the script with python3 test.py in the root dir. This will test everything we can test, and show the output.

Go

The test.go script uses the girc-go packages as reference implementations.

To install these packages, run:

go get -u ./...

After that, simply run the script with go run test.go run in the root dir. This will test everything we can test, and show the output.

Sources

Thanks to these sources for having open tests and/or agreeing to let me include your tests here!

Some tests originate from Mozilla's test vectors, which are public domain.

Some tests originate from grawity's test vectors which were WTFPL v2 licensed when they were retrieved.

Some tests originate from Sadie's test vectors which she's indicated I'm free to include here.

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL