使用Mockito嘲笑枚举?
2022-09-04 08:27:13
						我需要模拟以下枚举:
public enum PersonStatus
{
    WORKING,
    HOLIDAY,
    SICK      
}
这是因为它在我正在测试的以下类中使用:
被测类:
public interface PersonRepository extends CrudRepository<Person, Integer>
{
    List<Person> findByStatus(PersonStatus personStatus);
}
以下是我当前的测试尝试:
当前测试:
public class PersonRepositoryTest {
    private final Logger LOGGER = LoggerFactory.getLogger(PersonRepositoryTest.class);
    //Mock the PersonRepository class
    @Mock
    private PersonRepository PersonRepository;
    @Mock
    private PersonStatus personStatus;
    @Before
    public void setUp() throws Exception {
        MockitoAnnotations.initMocks(this);
        assertThat(PersonRepository, notNullValue());
        assertThat(PersonStatus, notNullValue());
    }
    @Test
    public void testFindByStatus() throws ParseException {
        List<Person> personlist = PersonRepository.findByStatus(personStatus);
        assertThat(personlist, notNullValue());
    }
}
这给出了以下错误:
错误:
org.mockito.exceptions.base.MockitoException: 
Cannot mock/spy class PersonStatus
Mockito cannot mock/spy following:
  - final classes
  - anonymous classes
  - primitive types
我该如何解决这个问题?