An open API service indexing awesome lists of open source software.

https://github.com/pbalduino/north

Small test tool, RSpec based, for Clojure
https://github.com/pbalduino/north

Last synced: 3 months ago
JSON representation

Small test tool, RSpec based, for Clojure

Awesome Lists containing this project

README

        

:keywords: North, Dan North, BDD, TDD, RSpec
:description: North is a small test tool based on Dan North and Dave Chelimsky works with JBehave and RSpec

:toc:

North
=====

.{revdate}: AsciiDoc {revnumber} Released

What is
-------
North is a small test tool based on Dan North and Dave Chelimsky work with JBehave and RSpec.

It's written in Clojure and is intended to be a simple way and expressive way to write tests using most of RSpec conventions.

Why
---
The standard Clojure test tool is test-is and sometimes it looks quite incomplete.

Even knowing that Functional Programming should rely on immutability and absence of side effects, in the real world the things don't work so clean and smooth.

The most important thing I missed is the classic Setup/Teardown approach (before/after from RSpec), because I need to set the environment before the test execution and then clean up the mess (as I said, side effects do exist in real world)

Usage
-----

Installation
~~~~~~~~~~~~
- clone the git repository:
+
---------------------------------------------------
git clone [email protected]:pbalduino/north.git

cd north

lein install
---------------------------------------------------

- add in your +project.clj+:
+
---------------------------------------------------
(def project ...
:dev-dependencies [[north "0.1.0-SNAPSHOT"] ...]
...)
---------------------------------------------------

- run
+
---------------------------------------------------
lein north
---------------------------------------------------
+
and see no evil.

Writing your first test - (in progress)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

. write a test
. see it fail
. write code to make the test pass
. back to step 1

Extending North
~~~~~~~~~~~~~~~
(in progress)

License and Copyright
---------------------

Distributed under the Eclipse Public License, the same as Clojure.

Copyright (C) 2012 Plinio Balduino