Fix tests and add build pipeline
Some checks failed
continuous-integration/drone/push Build is failing
Some checks failed
continuous-integration/drone/push Build is failing
This commit is contained in:
parent
18f035b7c2
commit
226d2802ef
4 changed files with 37 additions and 22 deletions
18
.drone.yml
Normal file
18
.drone.yml
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
kind: pipeline
|
||||||
|
type: docker
|
||||||
|
name: default
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: build-service
|
||||||
|
image: adoptopenjdk:11-hotspot
|
||||||
|
commands:
|
||||||
|
- ls -al
|
||||||
|
- cd service/fling
|
||||||
|
- ./mvnw clean package
|
||||||
|
|
||||||
|
- name: build-web
|
||||||
|
image: node:latest
|
||||||
|
commands:
|
||||||
|
- ls -al
|
||||||
|
- cd web/fling
|
||||||
|
- npm install && npm run build
|
|
@ -26,6 +26,8 @@ public class ArtifactDto {
|
||||||
|
|
||||||
@JsonProperty("uploadTime")
|
@JsonProperty("uploadTime")
|
||||||
public Long getJsonUploadTime() {
|
public Long getJsonUploadTime() {
|
||||||
|
if(uploadTime == null) return null;
|
||||||
|
|
||||||
return uploadTime.toEpochMilli();
|
return uploadTime.toEpochMilli();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,13 +0,0 @@
|
||||||
package net.friedl.fling;
|
|
||||||
|
|
||||||
import org.junit.jupiter.api.Test;
|
|
||||||
import org.springframework.boot.test.context.SpringBootTest;
|
|
||||||
|
|
||||||
@SpringBootTest
|
|
||||||
class FlingApplicationTests {
|
|
||||||
|
|
||||||
@Test
|
|
||||||
void contextLoads() {
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -10,16 +10,22 @@ import java.util.List;
|
||||||
|
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration;
|
||||||
import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
|
import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
|
||||||
import org.springframework.boot.test.mock.mockito.MockBean;
|
import org.springframework.boot.test.mock.mockito.MockBean;
|
||||||
|
import org.springframework.context.annotation.ComponentScan.Filter;
|
||||||
|
import org.springframework.context.annotation.FilterType;
|
||||||
import org.springframework.test.web.servlet.MockMvc;
|
import org.springframework.test.web.servlet.MockMvc;
|
||||||
|
|
||||||
import net.friedl.fling.model.dto.ArtifactDto;
|
import net.friedl.fling.model.dto.ArtifactDto;
|
||||||
import net.friedl.fling.service.ArtifactService;
|
import net.friedl.fling.service.ArtifactService;
|
||||||
|
|
||||||
@WebMvcTest(ArtifactController.class)
|
@WebMvcTest(controllers = ArtifactController.class,
|
||||||
|
// do auto-configure security
|
||||||
|
excludeAutoConfiguration = SecurityAutoConfiguration.class,
|
||||||
|
// do not try to create beans in security
|
||||||
|
excludeFilters = @Filter(type = FilterType.REGEX, pattern = "net.friedl.fling.security.*"))
|
||||||
class ArtifactControllerTest {
|
class ArtifactControllerTest {
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private MockMvc mvc;
|
private MockMvc mvc;
|
||||||
|
|
||||||
|
@ -27,25 +33,27 @@ class ArtifactControllerTest {
|
||||||
private ArtifactService artifactService;
|
private ArtifactService artifactService;
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void testGetArtifacts_noArtifacts_empty() throws Exception {
|
public void testGetArtifacts_noArtifacts_empty() throws Exception {
|
||||||
var flingId = 123L;
|
Long flingId = 123L;
|
||||||
|
|
||||||
when(artifactService.findAllArtifacts(flingId)).thenReturn(List.of());
|
when(artifactService.findAllArtifacts(flingId)).thenReturn(List.of());
|
||||||
|
|
||||||
mvc.perform(get("/api/fling/{flingId}/artifact", flingId)).andExpect(jsonPath("$", hasSize(0)));
|
mvc.perform(get("/api/artifacts").param("flingId", flingId.toString()))
|
||||||
|
.andExpect(jsonPath("$", hasSize(0)));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void testGetArtifacts_hasArtifacts_allArtifacts() throws Exception {
|
public void testGetArtifacts_hasArtifacts_allArtifacts() throws Exception {
|
||||||
var flingId = 123L;
|
Long flingId = 123L;
|
||||||
var artifactName = "TEST";
|
String artifactName = "TEST";
|
||||||
|
|
||||||
ArtifactDto artifactDto = new ArtifactDto();
|
ArtifactDto artifactDto = new ArtifactDto();
|
||||||
artifactDto.setName(artifactName);
|
artifactDto.setName(artifactName);
|
||||||
|
|
||||||
when(artifactService.findAllArtifacts(flingId)).thenReturn(List.of(artifactDto));
|
when(artifactService.findAllArtifacts(flingId)).thenReturn(List.of(artifactDto));
|
||||||
|
|
||||||
mvc.perform(get("/api/fling/{flingId}/artifact", flingId)).andExpect(jsonPath("$", hasSize(1)))
|
mvc.perform(get("/api/artifacts").param("flingId", flingId.toString()))
|
||||||
|
.andExpect(jsonPath("$", hasSize(1)))
|
||||||
.andExpect(jsonPath("$[0].name", equalTo(artifactName)));
|
.andExpect(jsonPath("$[0].name", equalTo(artifactName)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue