es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Caso de prueba junit de almacenamiento GCS: cómo escribirlo.

Hola, he creado un proyecto de Spring Boot con un punto final rest que devolverá la lista de todos los archivos dentro de un almacenamiento en la nube.
No puedo escribir un caso de prueba junit para esto, ¿podrías ayudarme con JUnit?

Clase Controlador

@GetMapping(“/getFiles”)
public List getBucketList() throws IOException {
Storage storage =
StorageOptions.newBuilder().setCredentials(ServiceAccountCredentials.getApplicationDefault())
.setProjectId(“projectId”) // identificador de proyecto
.build().getService();

return mainService.getFileList(storage);

Clase servicio

@Service
public class MainServiceDetails {

public List getFileList(Storage storage) {
List lista = new ArrayList<>();
Page blobs = storage.list(“bucketname”); // nombre del cubo

for (Blob blob : blobs.iterateAll()) {
    lista.add(blob.getName());
    System.out.println(blob.getName());
}
return lista;

}
}

Necesito una cobertura de código mínima del 90% en este proyecto. ¿Podría ayudarme con esto, por favor?

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Caso de prueba JUnit

    A continuación se muestra un caso de prueba JUnit de muestra para el código anterior.

    @RunWith(MockitoJUnitRunner.class)
    public class MainServiceDetailsTest {
    
    @Mock
    private Storage storage;
    
    @InjectMocks
    private MainServiceDetails mainService;
    
    @Test
    public void testGetFileList() throws IOException {
        List<String> expectedList = new ArrayList<>();
        expectedList.add("file1");
        expectedList.add("file2");
        expectedList.add("file3");
    
        Página<Blob> bloques = Mockito.mock(Página.class);
        Mockito.when(storage.list("bucketname")).thenReturn(bloques);
        Mockito.when(bloques.iterateAll()).thenReturn(expectedList);
    
        List<String> listaReal = mainService.getFileList(storage);
        assertEquals(expectedList, listaReal);
    }
    }
    

Comments are closed.