crystal-koans

Version, currently master branch1 version
  • master branchlatestNov 9, 2024

github.com/ilmanzo/crystal-koans

an educational unit test suite for the Crystal Programming Language.

56 stars
0 dependents
License: MIT

Installation

# Add this to your shard.yml
dependencies:
  crystal-koans:
    github: ilmanzo/crystal-koans
    branch: master

master is a branch, not a release, so this tracks it rather than pinning a version.

Then run:

shards install

shard.yml

Crystal
no constraint declared
License
MIT
Author
Andrea Manzini <ilmanzo@gmail.com>

Dependencies

Runtime Dependencies

  • watch*github: danreeves/watch

README

# The Crystal Language Koans

Inspired from RubyKoans, CppKoans, GoKoans; an educational unit test suite for
the [Crystal Programming Language](https://crystal-lang.org/) and standard library.

## Installation

- clone this repository: `git clone "https://github.com/ilmanzo/crystal-koans"`

## Manual Usage

1. run `crystal run koans.cr` to make a small step at a time 
   or run `crystal spec` to run all the tests at once
2. observe the test errors
3. think and make the test pass
4. goto step 1

## Automatic Usage (run tests on save)
1. install shard dependencies with `shards install`
2. open a separate terminal and run `crystal run watch.cr`. Keep it open and visible
3. observe the test errors, think and make the test pass
4. tests will automatically run as you save the files. Press CTRL-C to stop the watcher

## Contributing

1. Fork it ( https://github.com/ilmanzo/crystal-koans/fork )
2. Create your feature branch (git checkout -b my-new-feature)
3. Commit your changes (git commit -am 'Add some feature')
4. Push to the branch (git push origin my-new-feature)
5. Create a new Pull Request

## Contributors

- [ilmanzo](https://github.com/ilmanzo) Andrea Manzini - creator, maintainer
- [Daniel Sokil](https://github.com/s0kil)
- [Dorian MariƩ](https://github.com/dorianmariefr)
- [Jack Kavanagh](https://github.com/jackkav)
- [collidedscope](https://github.com/collidedscope)