Skip to content

Commit 2447763

Browse files
committed
[backend/frontend] Multiple fixes for testing and linting
1 parent 36bd9cf commit 2447763

File tree

18 files changed

+172
-65
lines changed

18 files changed

+172
-65
lines changed

openbas-api/src/test/java/io/openbas/helper/InjectHelperTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ void injectsToRunTest() {
7878
Inject inject = new Inject();
7979
inject.setTitle("Test inject");
8080
inject.setType(TYPE);
81-
inject.setInjectorContract(injectorContractRepository.findById(EMAIL_DEFAULT).orElseThrow());
81+
inject.setInjectorContract(this.injectorContractRepository.findById(EMAIL_DEFAULT).orElseThrow());
8282
inject.setEnabled(true);
8383
inject.setExercise(exerciseSaved);
8484
inject.setTeams(List.of(team));

openbas-api/src/test/java/io/openbas/injects/InjectCrudTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
import io.openbas.database.repository.ExerciseRepository;
66
import io.openbas.database.repository.InjectRepository;
77
import io.openbas.database.repository.InjectorContractRepository;
8-
import io.openbas.injectors.email.EmailContract;
98
import org.junit.jupiter.api.DisplayName;
109
import org.junit.jupiter.api.Test;
1110
import org.springframework.beans.factory.annotation.Autowired;
@@ -25,6 +24,7 @@ public class InjectCrudTest {
2524

2625
@Autowired
2726
private ExerciseRepository exerciseRepository;
27+
2828
@Autowired
2929
private InjectorContractRepository injectorContractRepository;
3030

@@ -40,7 +40,7 @@ void createInjectSuccess() {
4040
Inject inject = new Inject();
4141
inject.setTitle("test");
4242
inject.setType(TYPE);
43-
inject.setInjectorContract(injectorContractRepository.findById(EmailContract.EMAIL_DEFAULT).orElseThrow());
43+
inject.setInjectorContract(this.injectorContractRepository.findById(EMAIL_DEFAULT).orElseThrow());
4444
inject.setExercise(exerciseCreated);
4545
inject.setDependsDuration(0L);
4646

openbas-api/src/test/java/io/openbas/injects/email/EmailExecutorTest.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222

2323
import java.util.List;
2424

25+
import static io.openbas.injectors.email.EmailContract.EMAIL_DEFAULT;
2526
import static io.openbas.helper.StreamHelper.fromIterable;
2627
import static org.junit.jupiter.api.Assertions.assertEquals;
2728
import static org.junit.jupiter.api.Assertions.assertNotNull;
@@ -53,7 +54,7 @@ void process() throws Exception {
5354
content.setExpectations(List.of(expectation));
5455
Inject inject = new Inject();
5556
inject.setType(EmailContract.TYPE);
56-
inject.setInjectorContract(injectorContractRepository.findById(EmailContract.EMAIL_DEFAULT).orElseThrow());
57+
inject.setInjectorContract(this.injectorContractRepository.findById(EMAIL_DEFAULT).orElseThrow());
5758
inject.setContent(this.mapper.valueToTree(content));
5859
Iterable<User> users = this.userRepository.findAll();
5960
List<ExecutionContext> userInjectContexts = fromIterable(users).stream()

openbas-api/src/test/java/io/openbas/rest/ChallengeApiTest.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import io.openbas.database.model.Scenario;
88
import io.openbas.database.repository.ChallengeRepository;
99
import io.openbas.database.repository.InjectRepository;
10+
import io.openbas.database.repository.InjectorContractRepository;
1011
import io.openbas.database.repository.ScenarioRepository;
1112
import io.openbas.injectors.challenge.model.ChallengeContent;
1213
import io.openbas.service.ScenarioService;
@@ -47,6 +48,8 @@ public class ChallengeApiTest {
4748
private InjectRepository injectRepository;
4849
@Autowired
4950
private ChallengeRepository challengeRepository;
51+
@Autowired
52+
private InjectorContractRepository injectorContractRepository;
5053
@Resource
5154
private ObjectMapper objectMapper;
5255

@@ -84,7 +87,7 @@ void retrieveChallengesVariableForScenarioTest() throws Exception {
8487
Inject inject = new Inject();
8588
inject.setTitle("Test inject");
8689
inject.setType(TYPE);
87-
inject.setContract(CHALLENGE_PUBLISH);
90+
inject.setInjectorContract(this.injectorContractRepository.findById(CHALLENGE_PUBLISH).orElseThrow());
8891
inject.setContent(this.objectMapper.valueToTree(content));
8992
inject.setDependsDuration(0L);
9093
inject.setScenario(scenario);

openbas-api/src/test/java/io/openbas/rest/InjectApiTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ void updateInjectForScenarioTest() throws Exception {
146146
String injectTitle = "A new title";
147147
input.setTitle(injectTitle);
148148
input.setType(inject.getType());
149-
input.setContract(inject.getContract());
149+
input.setInjectorContract(inject.getInjectorContract().getId());
150150
input.setDependsDuration(inject.getDependsDuration());
151151

152152
// -- EXECUTE --

openbas-api/src/test/java/io/openbas/scenario/ScenarioToExerciseServiceTest.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
import java.util.ArrayList;
1616
import java.util.List;
1717

18+
import static io.openbas.injectors.email.EmailContract.EMAIL_DEFAULT;
1819
import static io.openbas.utils.fixtures.ArticleFixture.ARTICLE_NAME;
1920
import static io.openbas.utils.fixtures.ArticleFixture.getArticle;
2021
import static io.openbas.utils.fixtures.DocumentFixture.getDocumentJpeg;
@@ -196,7 +197,7 @@ void scenarioToExerciseTest() {
196197
}});
197198

198199
// Inject
199-
Inject inject = getInjectForEmailContract();
200+
Inject inject = getInjectForEmailContract(this.injectorContractRepository.findById(EMAIL_DEFAULT).orElseThrow());
200201
inject.setTeams(new ArrayList<>() {{
201202
add(teamSaved);
202203
add(contextualTeamSaved);

openbas-api/src/test/java/io/openbas/service/ExerciseExpectationServiceTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ void beforeAll() {
6464
Inject inject = new Inject();
6565
inject.setTitle("test");
6666
inject.setType(TYPE);
67-
inject.setInjectorContract(injectorContractRepository.findById(EMAIL_DEFAULT).orElseThrow());
67+
inject.setInjectorContract(this.injectorContractRepository.findById(EMAIL_DEFAULT).orElseThrow());
6868
inject.setExercise(exerciseCreated);
6969
inject.setDependsDuration(0L);
7070
Inject injectCreated = this.injectRepository.save(inject);
Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,21 @@
11
package io.openbas.utils.fixtures;
22

33
import io.openbas.database.model.Inject;
4+
import io.openbas.database.model.InjectorContract;
45

5-
import static io.openbas.injectors.email.EmailContract.EMAIL_DEFAULT;
66
import static io.openbas.injectors.email.EmailContract.TYPE;
77

88
public class InjectFixture {
99

10-
public static final String INJECT_EMAIL_NAME = "Test email inject";
11-
12-
public static Inject getInjectForEmailContract() {
13-
Inject inject = new Inject();
14-
inject.setTitle(INJECT_EMAIL_NAME);
15-
inject.setType(TYPE);
16-
inject.setEnabled(true);
17-
inject.setDependsDuration(0L);
18-
return inject;
19-
}
10+
public static final String INJECT_EMAIL_NAME = "Test email inject";
2011

12+
public static Inject getInjectForEmailContract(InjectorContract injectorContract) {
13+
Inject inject = new Inject();
14+
inject.setTitle(INJECT_EMAIL_NAME);
15+
inject.setType(TYPE);
16+
inject.setInjectorContract(injectorContract);
17+
inject.setEnabled(true);
18+
inject.setDependsDuration(0L);
19+
return inject;
20+
}
2121
}

openbas-front/src/admin/components/common/injects/CreateinjectDetails.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import React, { FunctionComponent, useContext } from 'react';
22
import { Button } from '@mui/material';
33
import InjectDefinition from './InjectDefinition';
4-
import { PermissionsContext } from '..';
4+
import { PermissionsContext } from '../Context';
55
import type { Inject, Tag } from '../../../../utils/api-types';
66
import { useHelper } from '../../../../store';
77
import type { InjectHelper } from '../../../../actions/injects/inject-helper';

openbas-front/src/admin/components/common/injects/InjectPopover.tsx

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ import { InjectContext, PermissionsContext } from '../Context';
88
import type { Inject, InjectStatus, InjectStatusExecution, Tag } from '../../../../utils/api-types';
99
import { tryInject } from '../../../../actions/Inject';
1010
import { useAppDispatch } from '../../../../utils/hooks';
11-
import type { Contract } from '../../../../actions/contract/contract';
1211

1312
interface Props {
1413
inject: InjectStore;

openbas-front/src/admin/components/common/injects/Injects.js

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,6 @@ import { useHelper } from '../../../../store';
1616
import ItemBoolean from '../../../../components/ItemBoolean';
1717
import { exportData } from '../../../../utils/Environment';
1818
import Loader from '../../../../components/Loader';
19-
import useDataLoader from '../../../../utils/ServerSideEvent';
20-
import { useAppDispatch } from '../../../../utils/hooks';
2119
import { InjectContext, PermissionsContext } from '../Context';
2220
import CreateInject from './CreateInject';
2321
import UpdateInject from './UpdateInject';
@@ -159,7 +157,6 @@ const Injects = ({
159157
}) => {
160158
// Standard hooks
161159
const classes = useStyles();
162-
const dispatch = useAppDispatch();
163160
const { t, tPick } = useFormatter();
164161

165162
const [selectedInjectId, setSelectedInjectId] = useState(null);
@@ -174,9 +171,6 @@ const Injects = ({
174171
searchColumns,
175172
);
176173
// Fetching data
177-
useDataLoader(() => {
178-
dispatch(fetchInjectorContracts());
179-
});
180174
const {
181175
tagsMap,
182176
selectedInject,
@@ -313,7 +307,6 @@ const Injects = ({
313307
const injectContract = inject.inject_injector_contract.injector_contract_content_parsed;
314308
const injectorContractName = tPick(injectContract?.label);
315309
const duration = splitDuration(inject.inject_depends_duration || 0);
316-
console.log('injectContract', injectContract);
317310
const isDisabled = !injectContract?.config.expose;
318311
const isNoTeam = !(injectContract?.fields.filter((f) => f.key === 'teams').length > 0);
319312
let injectStatus = inject.inject_enabled

openbas-front/src/admin/components/simulations/controls/Dryrun.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ import InjectStatus from '../../common/injects/InjectStatus';
2020
import InjectStatusDetails from '../../common/injects/InjectStatusDetails';
2121
import { resolveUserName } from '../../../../utils/String';
2222
import DryrunProgress from './DryrunProgress';
23-
import { fetchInjectorContracts } from '../../../../actions/InjectorContracts';
2423

2524
const useStyles = makeStyles((theme) => ({
2625
parameters: {
@@ -327,7 +326,7 @@ const Dryrun = () => {
327326
<ListItemSecondaryAction> &nbsp; </ListItemSecondaryAction>
328327
</ListItem>
329328
{filtering.filterAndSort(dryinjects).map((dryinject) => {
330-
const injectContract = injectorContractsMap[dryinject.dryinject_inject.inject_injector_contract];
329+
const injectContract = dryinject.inject_injector_contract.injector_contract_content_parsed;
331330
const injectorContractName = tPick(injectContract?.label);
332331
return (
333332
<ListItem

openbas-front/src/admin/components/simulations/injects/CreateQuickInject.js

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ import QuickInject from './QuickInject';
1010
import { storeHelper } from '../../../../actions/Schema';
1111
import { fetchExercises } from '../../../../actions/Exercise';
1212
import { fetchTags } from '../../../../actions/Tag';
13-
import { fetchInjectorContracts } from '../../../../actions/InjectorContracts';
1413

1514
const styles = (theme) => ({
1615
createButton: {
@@ -98,7 +97,6 @@ export default R.compose(
9897
connect(select, {
9998
fetchExercises,
10099
fetchTags,
101-
fetchInjectorContracts,
102100
}),
103101
inject18n,
104102
withTheme,

openbas-front/src/admin/components/simulations/overview/ExerciseDistributionByInjectorContract.tsx

Lines changed: 3 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,8 @@ import Chart from 'react-apexcharts';
22
import React, { FunctionComponent } from 'react';
33
import { useTheme } from '@mui/styles';
44
import * as R from 'ramda';
5-
import { horizontalBarsChartOptions } from '../../../../utils/Charts';
65
import Empty from '../../../../components/Empty';
7-
import type { ExerciseStore } from '../../../../actions/exercises/Exercise';
6+
import { horizontalBarsChartOptions } from '../../../../utils/Charts';
87
import { useFormatter } from '../../../../components/i18n';
98
import { useAppDispatch } from '../../../../utils/hooks';
109
import type { Theme } from '../../../../components/Theme';
@@ -13,22 +12,8 @@ import type { InjectHelper } from '../../../../actions/injects/inject-helper';
1312
import useDataLoader from '../../../../utils/ServerSideEvent';
1413
import { fetchInjects } from '../../../../actions/Inject';
1514
import { fetchExerciseInjectExpectations } from '../../../../actions/Exercise';
16-
import type { InjectExpectationStore } from '../../../../actions/injects/Inject';
17-
import type { Inject } from '../../../../utils/api-types';
18-
import { fetchInjectorContracts } from '../../../../actions/InjectorContracts';
19-
import type { InjectorContractHelper } from '../../../../actions/injector_contracts/injector-contract-helper';
20-
import { horizontalBarsChartOptions } from '../../../../../utils/Charts';
21-
import Empty from '../../../../../components/Empty';
22-
import type { ExerciseStore } from '../../../../../actions/exercises/Exercise';
23-
import { useFormatter } from '../../../../../components/i18n';
24-
import { useAppDispatch } from '../../../../../utils/hooks';
25-
import type { Theme } from '../../../../../components/Theme';
26-
import { useHelper } from '../../../../../store';
27-
import type { InjectHelper } from '../../../../../actions/injects/inject-helper';
28-
import useDataLoader from '../../../../../utils/ServerSideEvent';
29-
import { fetchInjects } from '../../../../../actions/Inject';
30-
import { fetchExerciseInjectExpectations } from '../../../../../actions/Exercise';
31-
import type { InjectExpectationStore, InjectStore } from '../../../../../actions/injects/Inject';
15+
import type { InjectExpectationStore, InjectStore } from '../../../../actions/injects/Inject';
16+
import type { ExerciseStore } from '../../../../actions/exercises/Exercise';
3217

3318
interface Props {
3419
exerciseId: ExerciseStore['exercise_id'];

0 commit comments

Comments
 (0)