added provider and integration tests