added a couple of tests to guestcontrollertests
This commit is contained in:
parent
5dd4dfec2c
commit
6dedf59332
1 changed files with 52 additions and 0 deletions
|
@ -1,13 +1,19 @@
|
|||
package ch.usi.inf.sa4.sanmarinoes.smarthut.controller;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
import static org.junit.jupiter.api.Assertions.assertTrue;
|
||||
import static org.mockito.ArgumentMatchers.any;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
import ch.usi.inf.sa4.sanmarinoes.smarthut.dto.GuestPermissionsRequest;
|
||||
import ch.usi.inf.sa4.sanmarinoes.smarthut.dto.GuestsUpdateRequest;
|
||||
import ch.usi.inf.sa4.sanmarinoes.smarthut.dto.UserResponse;
|
||||
import ch.usi.inf.sa4.sanmarinoes.smarthut.models.EagerUserRepository;
|
||||
import ch.usi.inf.sa4.sanmarinoes.smarthut.models.User;
|
||||
import java.security.Principal;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
import org.junit.jupiter.api.DisplayName;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
@ -89,4 +95,50 @@ public class GuestControllerTests {
|
|||
when(userRepository.findByUsername("user")).thenReturn(user);
|
||||
assertThat(guestController.findGuests(mockPrincipal).isEmpty());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testUpdatePermission() {
|
||||
GuestPermissionsRequest permission = new GuestPermissionsRequest();
|
||||
permission.setCameraEnabled(true);
|
||||
when(mockPrincipal.getName()).thenReturn("user");
|
||||
User user = new User();
|
||||
user.setCameraEnabled(true);
|
||||
when(userRepository.findByUsername("user")).thenReturn(user);
|
||||
when(userRepository.save(user)).thenReturn(user);
|
||||
assertTrue(guestController.updatePermissions(permission, mockPrincipal).isCameraEnabled());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testSetGuests() {
|
||||
when(mockPrincipal.getName()).thenReturn("user");
|
||||
ArrayList<User> users = new ArrayList<>();
|
||||
User user1 = new User();
|
||||
user1.setId(1L);
|
||||
user1.getGuests().add(new User());
|
||||
user1.getGuests().add(new User());
|
||||
user1.getGuests().add(new User());
|
||||
User user2 = new User();
|
||||
user2.setId(2L);
|
||||
User user3 = new User();
|
||||
user3.setId(3L);
|
||||
users.add(user1);
|
||||
users.add(user2);
|
||||
users.add(user3);
|
||||
ArrayList<Long> ids = new ArrayList<>();
|
||||
ids.add(1L);
|
||||
ids.add(2L);
|
||||
ids.add(3L);
|
||||
GuestsUpdateRequest request = new GuestsUpdateRequest();
|
||||
request.setIds(ids);
|
||||
when(userRepository.findAllById(request.getIds())).thenReturn(users);
|
||||
when(userRepository.findByUsername("user")).thenReturn(user1);
|
||||
when(userRepository.saveAll(Set.copyOf(user1.getGuests()))).thenReturn(null);
|
||||
when(userRepository.save(any(User.class))).thenReturn(null);
|
||||
when(userRepository.saveAll(users)).thenReturn(users);
|
||||
List<User> returned = guestController.setGuests(request, mockPrincipal);
|
||||
assertThat(returned.size()).isEqualTo(3);
|
||||
assertTrue(returned.contains(user1));
|
||||
assertTrue(returned.contains(user2));
|
||||
assertTrue(returned.contains(user3));
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue