Implement and add tests for `fetch`