spring boot/snippets

mocking 하는 방법

lingi04 2021. 12. 22. 23:15
import static org.mockito.Mockito.mock;

public class TestClass {
    @ParameterizedTest
    public void test() {
        DummyRepository repository = mock(DummyRepository.class);
        DummyService service = new DummyService(repository);
        DummyClass dummy = new DummyClass();
        Param param = new Param();

        given(repository.getById(dummy.getId())).willReturn(dummy);

        service.update(dummy.getId(), param, "username");

        assertThat(dummy.getName()).isEqualTo(param.getName());
    }
}
import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.junit.jupiter.MockitoExtension;

@ExtendWith(MockitoExtension.class)
class HackHashServiceTest {
    @Mock
    private MockRepository mockRepository;

    @InjectMock
    private InjectMockRepository injectMockRepository

    ....
}