I'm trying to test the findByPhoneNumber
method in this repository
public interface UserRepository extends ReactiveMongoRepository<User, String> {
Mono<User> findByPhoneNumber(String phoneNumber);
}
ATM, my test looks like this
@ExtendWith(SpringExtension.class)
class UserRepositoryTest {
@Autowired
private UserRepository repository;
@Test
void findByPhoneNumber() {
val phoneNumber = "11111 111111";
val user = repository.save(User.builder().phoneNumber(phoneNumber).password("password").build());
assertEquals(user, repository.findByPhoneNumber(phoneNumber));
}
}
When I run it, I get this error
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'io.freesale.repository.UserRepositoryTest': Unsatisfied dependency expressed through field 'repository'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'io.freesale.repository.UserRepository' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
I'm a Spring noob so please don’t bully me too hard 😀
I was missing the @DataMongoTest
annotation