Hejto.pl
Dodaj post

Wpisz coś do wyszukania (minimum 2 znaki)

#xunit

Kompan

w Programowanie

0piorunów

Mam kurde problem z unit testem 😒 Napisałem sobie API i piszę teraz testy dla endpointów. Moq itp pięknie działa, testy się dobrze robią. ALE mam problem z jednym endpointem który teoretycznie zwraca listę DTO. No i tutaj mam problem bo serwis zwraca tę listę jako listę DTO z wartościami albo new List<DTO> z mappera. Kod serwisu to ten o:

> var list = _context.MoviesList.Include(x => x.Movies).Where(x => x.UserId == userId).ToList();

>       return _mapper.Map<List<MoviesListDto>>(list);

A w kontrolerze mam takie cudo:

> var list = _userMoviesService.GetLists(GetUserId());

>       if (list == null)

>       {

>         return NoContent();

>       }

>       return Ok(list);

I tutaj mam problem bo niestety lista nie jest nullem, więc zamiast oczekiwanego NoContent w teście dostaje Ok wraz z listą która jest pusta xD I po prostu teraz nie wiem, serwis powinien zwracać nulle? Czy returna opakować w jakiś obiekt w stylu ResponseDto gdzie bedzie StatusCode wraz z responsem czy jak to zrobić aby było legitnie + dało się jakoś testować?

 

Zawodowiec1piorunów

@Dapred warunek:

`if (list == null)`

Zamień na sprawdzenie, czy nie jest pusta. Dziękuję, FV wyślę na priv.

Pokaż więcej komentarzy (2)