opencv/src/test/java/pl/edu/amu/wmi/bookapi/Integration/api/UserControllerInt.java

58 lines
1.8 KiB
Java

package pl.edu.amu.wmi.bookapi.Integration.api;
import com.fasterxml.jackson.databind.*;
import org.junit.*;
import org.junit.jupiter.api.*;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.*;
import org.springframework.boot.test.autoconfigure.web.servlet.*;
import org.springframework.boot.test.context.*;
import org.springframework.data.mongodb.core.*;
import org.springframework.test.web.servlet.*;
import pl.edu.amu.wmi.bookapi.fixtures.*;
import pl.edu.amu.wmi.bookapi.fixtures.api.*;
import pl.edu.amu.wmi.bookapi.models.UserDocument;
import static org.junit.Assert.*;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*;
@SpringBootTest
@AutoConfigureMockMvc
@TestInstance(TestInstance.Lifecycle.PER_CLASS)
public class UserControllerInt{
@Autowired
MongoTemplate mongoTemplate;
@Autowired
MockMvc mvc;
@Autowired
IntegrationTestUtil testUtil;
private UserControllerRequests userRequests;
@BeforeEach
void cleanCollections() {
this.userRequests = new UserControllerRequests(mvc, new ObjectMapper());
testUtil.cleanCollections();
}
@Test
void should_register_new_user() throws Exception {
userRequests.registerUser("Abc", "def")
.andExpect(status().isOk());
assertEquals(mongoTemplate.findAll(UserDocument.class).size(), 1);
}
@Test
void user_should_not_be_able_to_create_account_with_already_existing_login() throws Exception {
userRequests.registerUser("a", "def")
.andExpect(status().isOk());
userRequests.registerUser("a", "fed")
.andExpect(status().is4xxClientError());
assertEquals(mongoTemplate.findAll(UserDocument.class).size(), 1);
}
}