Skip to content

Commit ae84e25

Browse files
committed
test: fix test with and without auth
1 parent b4cf2e0 commit ae84e25

File tree

6 files changed

+96
-63
lines changed

6 files changed

+96
-63
lines changed

src/main/java/fr/insee/genesis/controller/rest/responses/RawResponseController.java

Lines changed: 14 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,21 @@
11
package fr.insee.genesis.controller.rest.responses;
22

3-
import fr.insee.bpm.metadata.model.VariablesMap;
43
import fr.insee.genesis.controller.dto.rawdata.LunaticJsonRawDataUnprocessedDto;
5-
import fr.insee.genesis.controller.services.MetadataService;
6-
import fr.insee.genesis.controller.utils.ControllerUtils;
7-
import fr.insee.genesis.domain.model.surveyunit.DataState;
84
import fr.insee.genesis.domain.model.surveyunit.Mode;
9-
import fr.insee.genesis.domain.model.surveyunit.SurveyUnitModel;
105
import fr.insee.genesis.domain.model.surveyunit.rawdata.LunaticJsonRawDataModel;
11-
import fr.insee.genesis.domain.ports.api.LunaticJsonRawDataApiPort;
12-
import fr.insee.genesis.domain.service.surveyunit.SurveyUnitQualityService;
13-
import fr.insee.genesis.domain.service.surveyunit.SurveyUnitService;
14-
import fr.insee.genesis.exceptions.GenesisError;
15-
import fr.insee.genesis.exceptions.GenesisException;
16-
import fr.insee.genesis.infrastructure.utils.FileUtils;
6+
import fr.insee.genesis.domain.service.rawdata.LunaticJsonRawDataService;
177
import io.swagger.v3.oas.annotations.Operation;
188
import lombok.extern.slf4j.Slf4j;
199
import org.springframework.http.ResponseEntity;
2010
import org.springframework.security.access.prepost.PreAuthorize;
2111
import org.springframework.stereotype.Controller;
2212
import org.springframework.web.bind.annotation.GetMapping;
23-
import org.springframework.web.bind.annotation.PostMapping;
2413
import org.springframework.web.bind.annotation.PutMapping;
2514
import org.springframework.web.bind.annotation.RequestBody;
2615
import org.springframework.web.bind.annotation.RequestMapping;
2716
import org.springframework.web.bind.annotation.RequestParam;
2817

2918
import java.time.LocalDateTime;
30-
import java.util.ArrayList;
3119
import java.util.List;
3220
import java.util.Map;
3321

@@ -37,20 +25,24 @@
3725
public class RawResponseController {
3826

3927
private static final String SUCCESS_MESSAGE = "Interrogation %s saved";
40-
private final LunaticJsonRawDataApiPort lunaticJsonRawDataApiPort;
41-
private final ControllerUtils controllerUtils;
42-
private final MetadataService metadataService;
43-
private final SurveyUnitService surveyUnitService;
44-
private final SurveyUnitQualityService surveyUnitQualityService;
45-
private final FileUtils fileUtils;
28+
private final LunaticJsonRawDataService lunaticJsonRawDataApiPort;
29+
// private final ControllerUtils controllerUtils;
30+
// private final MetadataService metadataService;
31+
// private final SurveyUnitService surveyUnitService;
32+
// private final SurveyUnitQualityService surveyUnitQualityService;
33+
// private final FileUtils fileUtils;
4634

47-
public RawResponseController(LunaticJsonRawDataApiPort lunaticJsonRawDataApiPort, ControllerUtils controllerUtils, MetadataService metadataService, SurveyUnitService surveyUnitService, SurveyUnitQualityService surveyUnitQualityService, FileUtils fileUtils) {
35+
/* public RawResponseController(LunaticJsonRawDataService lunaticJsonRawDataApiPort, ControllerUtils controllerUtils, MetadataService metadataService, SurveyUnitService surveyUnitService, SurveyUnitQualityService surveyUnitQualityService, FileUtils fileUtils) {
4836
this.lunaticJsonRawDataApiPort = lunaticJsonRawDataApiPort;
4937
this.controllerUtils = controllerUtils;
5038
this.metadataService = metadataService;
5139
this.surveyUnitService = surveyUnitService;
5240
this.surveyUnitQualityService = surveyUnitQualityService;
5341
this.fileUtils = fileUtils;
42+
}*/
43+
44+
public RawResponseController(LunaticJsonRawDataService lunaticJsonRawDataApiPort) {
45+
this.lunaticJsonRawDataApiPort = lunaticJsonRawDataApiPort;
5446
}
5547

5648
@Operation(summary = "Save lunatic json data from one interrogation in Genesis Database")
@@ -95,7 +87,7 @@ public ResponseEntity<List<LunaticJsonRawDataUnprocessedDto>> getUnproccessedJso
9587
}
9688

9789
//PROCESS
98-
@Operation(summary = "Process raw data of a campaign")
90+
/* @Operation(summary = "Process raw data of a campaign")
9991
@PostMapping(path = "/lunatic-json/process")
10092
@PreAuthorize("hasRole('ADMIN')")
10193
public ResponseEntity<Object> processJsonRawData(
@@ -153,5 +145,5 @@ public ResponseEntity<Object> processJsonRawData(
153145
return ResponseEntity.status(e.getStatus()).body(e.getMessage());
154146
}
155147
}
156-
148+
*/
157149
}
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
fr.insee.genesis.application.host.url=http://localhost:8080
2+
fr.insee.genesis.sourcefolder.data = /data/genesis
3+
fr.insee.genesis.sourcefolder.specifications = /data/genesis
4+
5+
app.role.admin.claims=administrateur_traiter
6+
app.role.user-kraftwerk.claims=utilisateur_Kraftwerk
7+
app.role.user-platine.claims=utilisateur_Platine
8+
app.role.reader.claims=lecteur_traiter
9+
app.role.collect-platform.claims=protools
10+
11+
logging.file.name = /logs/genesis-api.log
12+
13+
fr.insee.genesis.oidc.auth-server-url=https://organisation.server.auth/auth
14+
fr.insee.genesis.oidc.realm=test-realm
15+
springdoc.swagger-ui.oauth.client-id=client-id-test
16+
17+
18+
fr.insee.genesis.authentication = NONE

src/main/resources/application-test.properties

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,7 @@ logging.file.name = /logs/genesis-api.log
1212

1313
fr.insee.genesis.oidc.auth-server-url=https://organisation.server.auth/auth
1414
fr.insee.genesis.oidc.realm=test-realm
15-
springdoc.swagger-ui.oauth.client-id=client-id-test
15+
springdoc.swagger-ui.oauth.client-id=client-id-test
16+
17+
18+
fr.insee.genesis.authentication = OIDC

src/test/java/cucumber/config/CucumberSpringConfiguration.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
@CucumberContextConfiguration
1010
@SpringBootTest(classes = GenesisApi.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
11-
@ActiveProfiles("test")
11+
@ActiveProfiles("test-cucumber")
1212
public class CucumberSpringConfiguration {
1313
}
1414

src/test/java/cucumber/functional_tests/RawDataDefinitions.java

Lines changed: 29 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,12 @@
11
package cucumber.functional_tests;
22

3+
import cucumber.config.CucumberSpringConfiguration;
34
import fr.insee.genesis.TestConstants;
45
import fr.insee.genesis.configuration.Config;
56
import fr.insee.genesis.controller.rest.responses.RawResponseController;
6-
import fr.insee.genesis.controller.services.MetadataService;
7-
import fr.insee.genesis.controller.utils.ControllerUtils;
87
import fr.insee.genesis.domain.model.surveyunit.Mode;
9-
import fr.insee.genesis.domain.ports.api.LunaticJsonRawDataApiPort;
108
import fr.insee.genesis.domain.service.rawdata.LunaticJsonRawDataService;
119
import fr.insee.genesis.domain.service.surveyunit.SurveyUnitQualityService;
12-
import fr.insee.genesis.domain.service.surveyunit.SurveyUnitService;
1310
import fr.insee.genesis.infrastructure.utils.FileUtils;
1411
import fr.insee.genesis.stubs.ConfigStub;
1512
import fr.insee.genesis.stubs.LunaticJsonRawDataPersistanceStub;
@@ -29,12 +26,18 @@
2926
import org.springframework.http.HttpStatus;
3027
import org.springframework.http.MediaType;
3128
import org.springframework.http.ResponseEntity;
29+
import org.springframework.test.context.ContextConfiguration;
3230

3331
import java.io.IOException;
3432
import java.nio.file.Files;
3533
import java.nio.file.Path;
34+
import java.security.KeyPair;
35+
import java.security.KeyPairGenerator;
36+
import java.security.NoSuchAlgorithmException;
37+
import java.security.interfaces.RSAPublicKey;
3638

3739
@Slf4j
40+
@ContextConfiguration(classes = CucumberSpringConfiguration.class)
3841
public class RawDataDefinitions {
3942

4043

@@ -45,19 +48,20 @@ public class RawDataDefinitions {
4548
@Autowired
4649
private TestRestTemplate rest;
4750

51+
4852
LunaticJsonRawDataPersistanceStub lunaticJsonRawDataPersistanceStub = new LunaticJsonRawDataPersistanceStub();
49-
LunaticJsonRawDataApiPort lunaticJsonRawDataApiPort = new LunaticJsonRawDataService(lunaticJsonRawDataPersistanceStub);
53+
LunaticJsonRawDataService lunaticJsonRawDataApiPort = new LunaticJsonRawDataService(lunaticJsonRawDataPersistanceStub);
5054
Config config = new ConfigStub();
5155
FileUtils fileUtils = new FileUtils(config);
5256
SurveyUnitPersistencePortStub surveyUnitPersistencePortStub = new SurveyUnitPersistencePortStub();
5357
SurveyUnitQualityService surveyUnitQualityService = new SurveyUnitQualityService();
5458
RawResponseController rawResponseController = new RawResponseController(
55-
lunaticJsonRawDataApiPort,
56-
new ControllerUtils(fileUtils),
57-
new MetadataService(),
58-
new SurveyUnitService(surveyUnitPersistencePortStub),
59-
surveyUnitQualityService,
60-
fileUtils
59+
lunaticJsonRawDataApiPort
60+
// , new ControllerUtils(fileUtils),
61+
// new MetadataService(),
62+
// new SurveyUnitService(surveyUnitPersistencePortStub),
63+
// surveyUnitQualityService,
64+
// fileUtils
6165
);
6266
Path rawDataFilePath;
6367
String rawJsonData;
@@ -69,6 +73,16 @@ public void init(){
6973
this.lunaticJsonRawDataPersistanceStub.getMongoStub().clear();
7074
log.info("rest autowired : {}", rest.getRootUri());
7175
BASE_URL = "http://localhost:" + port + "/";
76+
77+
}
78+
79+
private RSAPublicKey generateTestKey() {
80+
try {
81+
KeyPair keyPair = KeyPairGenerator.getInstance("RSA").generateKeyPair();
82+
return (RSAPublicKey) keyPair.getPublic();
83+
} catch (NoSuchAlgorithmException e) {
84+
throw new RuntimeException(e);
85+
}
7286
}
7387

7488
@Given("We have raw data file in {string}")
@@ -81,7 +95,7 @@ public void set_input_file(String rawDataFile) throws IOException {
8195
public void save_raw_data(String campaignId, String questionnaireId, String interrogationId) throws IOException {
8296
HttpHeaders headers = new HttpHeaders();
8397
headers.setContentType(MediaType.APPLICATION_JSON);
84-
98+
headers.set("Authorization", "Bearer fake_token");
8599
String url = String.format("%sresponses/raw/lunatic-json/save?campaignName=%s&questionnaireId=%s&interrogationId=%s&surveyUnitId=%s&mode=%s",
86100
BASE_URL,
87101
campaignId,
@@ -112,4 +126,7 @@ public void check_response_status_code(int expectedStatusCode){
112126
Assertions.assertThat(response.getStatusCode().value()).isEqualTo(expectedStatusCode);
113127
}
114128

129+
130+
131+
115132
}

0 commit comments

Comments
 (0)