added tests for all items fetching
some custom logics has been moved into child field classes