Added integration tests (TDD approach)