import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.doCallRealMethod;
-import static org.mockito.Mockito.doReturn;
-import static org.mockito.Mockito.mock;
import com.fasterxml.jackson.databind.ObjectMapper;
+import com.oransc.rappmanager.models.configuration.RappsEnvironmentConfiguration;
import com.oransc.rappmanager.models.csar.RappCsarConfigurationHandler;
import com.oransc.rappmanager.models.exception.RappValidationException;
import java.io.ByteArrayOutputStream;
@SpringBootTest
@ContextConfiguration(classes = {ArtifactDefinitionValidator.class, RappValidationUtils.class, ObjectMapper.class,
- RappCsarConfigurationHandler.class})
+ RappsEnvironmentConfiguration.class, RappCsarConfigurationHandler.class})
class ArtifactDefinitionValidatorTest {
@Autowired
assertTrue(exception.getMessage().startsWith("rApp package missing a file"));
}
- @Test
- void testCsarNoAsdFailure() {
- MultipartFile multipartFile = mock(MultipartFile.class);
- RappValidationException exception = assertThrows(RappValidationException.class,
- () -> artifactDefinitionValidator.validate(multipartFile, null));
- assertEquals(HttpStatus.BAD_REQUEST, exception.getStatusCode());
- assertEquals("ASD definition in rApp package is invalid.", exception.getMessage());
- }
-
- @ParameterizedTest
- @NullSource
- @ValueSource(strings = {""})
- void testCsarAsdLocationNullFailure(String asdLocation) throws IOException {
- String rappCsarPath = validCsarFileLocation + File.separator + invalidRappAsdEmptyFile;
- MultipartFile multipartFile =
- new MockMultipartFile(rappCsarPath, rappCsarPath, ContentType.MULTIPART_FORM_DATA.getMimeType(),
- new FileInputStream(rappCsarPath));
- doReturn(asdLocation).when(rappValidationUtils).getAsdDefinitionLocation(any());
- RappValidationException exception = assertThrows(RappValidationException.class,
- () -> artifactDefinitionValidator.validate(multipartFile, null));
- assertEquals(HttpStatus.BAD_REQUEST, exception.getStatusCode());
- assertEquals("ASD definition in rApp package is invalid.", exception.getMessage());
- }
@ParameterizedTest
@NullSource
- @ValueSource(strings = {"", "{asasdasd"})
+ @ValueSource(strings = {"{asasdasd"})
void testCsarAsdContentInvalidFailure(String asdContent) throws IOException {
String rappCsarPath = validCsarFileLocation + File.separator + validRappFile;
MultipartFile multipartFile =