aboutsummaryrefslogtreecommitdiffstats
path: root/src/test
diff options
context:
space:
mode:
authorWilliam Harrington <kb0iic@berzerkula.org>2025-02-18 19:40:00 -0600
committerWilliam Harrington <kb0iic@berzerkula.org>2025-02-18 19:40:00 -0600
commit0fa2d061ca8ef5cf81c665453b3c9e4e0526df5d (patch)
treedaf2828beace3a9f48a544b3167cb8bb8bed6326 /src/test
parent77c6eec80559e9d0172aa58ee6006b9e445bf67d (diff)
Add tests for PKG Add/Edit and Account Registration postmappings.
Diffstat (limited to 'src/test')
-rw-r--r--src/test/java/org/berzerkula/builddb/controllers/BuilddbPkgControllerTest.java76
1 files changed, 68 insertions, 8 deletions
diff --git a/src/test/java/org/berzerkula/builddb/controllers/BuilddbPkgControllerTest.java b/src/test/java/org/berzerkula/builddb/controllers/BuilddbPkgControllerTest.java
index 6c0ad46..778f336 100644
--- a/src/test/java/org/berzerkula/builddb/controllers/BuilddbPkgControllerTest.java
+++ b/src/test/java/org/berzerkula/builddb/controllers/BuilddbPkgControllerTest.java
@@ -13,7 +13,9 @@ import org.springframework.test.web.servlet.MockMvc;
import java.util.List;
+import static org.springframework.security.test.web.servlet.request.SecurityMockMvcRequestPostProcessors.csrf;
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
+import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.view;
@@ -53,10 +55,7 @@ class BuilddbPkgControllerTest {
@WithMockUser(roles="client")
void shouldReturnEditPackageView() throws Exception {
- Pkg pkg = new Pkg();
- pkg.setSequence(1);
- pkg.setName("test");
- pkg.setVersion("1.2.3");
+ Pkg pkg = new Pkg(1, "test", "1.2.3", "", "", "", "", "", "");
pkgRepository.save(pkg);
List<Pkg> pkgs = pkgRepository.findAll();
pkg = pkgs.get(0);
@@ -72,10 +71,7 @@ class BuilddbPkgControllerTest {
@WithMockUser(roles="client")
void shouldGetPopupWhenDeletePackage() throws Exception {
- Pkg pkg = new Pkg();
- pkg.setSequence(1);
- pkg.setName("test");
- pkg.setVersion("1.2.3");
+ Pkg pkg = new Pkg(1, "test", "1.2.3", "", "", "", "", "", "");
pkgRepository.save(pkg);
List<Pkg> pkgs = pkgRepository.findAll();
pkg = pkgs.get(0);
@@ -86,4 +82,68 @@ class BuilddbPkgControllerTest {
.andExpect(view().name("redirect:/pkgs/"))
.andDo(print());
}
+
+ @Test
+ @WithMockUser(roles="client")
+ void shouldAddPkgValidationError() throws Exception {
+ mockMvc.perform(post("/pkgs/add")
+ .with(csrf())
+ .formField("sequence", "")
+ .formField("name", "")
+ .formField("version", "")
+ .formField("configure", "")
+ .formField("build", "")
+ .formField("install", "")
+ .formField("setup", "")
+ .formField("notes", "")
+ .formField("Url", ""))
+ .andExpect(status().isOk())
+ .andExpect(view().name("pkgs/add"))
+ .andDo(print());
+ }
+
+ @Test
+ @WithMockUser(roles="client")
+ void shouldAddPkgSuccess() throws Exception {
+ mockMvc.perform(post("/pkgs/add")
+ .with(csrf())
+ .formField("sequence", "123")
+ .formField("name", "test")
+ .formField("version", "1.2.3-test")
+ .formField("configure", "testconf")
+ .formField("build", "testbuild")
+ .formField("install", "testinstall")
+ .formField("setup", "testsetup")
+ .formField("notes", "testnotes")
+ .formField("Url", "http://test.org/test-1.2.3.tar.gz"))
+ .andExpect(status().is3xxRedirection())
+ .andExpect(view().name("redirect:/pkgs"))
+ .andDo(print());
+ }
+
+ @Test
+ @WithMockUser(roles="client")
+ void shouldEditPkgSuccess() throws Exception {
+
+ Pkg pkg = new Pkg(123, "test", "1.2.3", "", "", "", "", "", "");
+ pkgRepository.save(pkg);
+ List<Pkg> pkgs = pkgRepository.findAll();
+ pkg = pkgs.get(0);
+ Integer id = pkg.getId();
+
+ this.mockMvc.perform(post("/pkgs/edit?id=" + id)
+ .with(csrf())
+ .formField("sequence", "123")
+ .formField("name", "test")
+ .formField("version", "4.5.6-test")
+ .formField("configure", "")
+ .formField("build", "")
+ .formField("install", "")
+ .formField("setup", "")
+ .formField("notes", "")
+ .formField("Url", ""))
+ .andExpect(status().is3xxRedirection())
+ .andExpect(view().name("redirect:/pkgs/#" + id))
+ .andDo(print());
+ }
}