Refactorization in spec

Shorter tests, more tests and pretty syntax