add tests for the core module