Add service provider and tests