Skip to content
Snippets Groups Projects
Commit 6cf87571 authored by michael.minelli's avatar michael.minelli
Browse files

Sonar => Resolve issues

parent 4db9ee9e
No related branches found
No related tags found
1 merge request!10Resolve "Add sonar integration"
Pipeline #30055 failed
......@@ -41,7 +41,7 @@ class ExerciseCorrectionCommand extends CommanderCommand {
return assignment.corrections.map(correction => {
return {
name : correction.name.replace(correction.assignmentName, '').split('-')[2].trim(),
value: correction.correctionCommit!.web_url?.replace('/commit/', '/tree/') ?? ''
value: correction.correctionCommit?.web_url?.replace('/commit/', '/tree/') ?? ''
};
});
}
......
......@@ -9,6 +9,7 @@ import Exercise from '../sharedByClients/models/Exercise';
import GitlabToken from '../shared/types/Gitlab/GitlabToken';
import User from '../sharedByClients/models/User';
import DojoStatusCode from '../shared/types/Dojo/DojoStatusCode';
import DojoBackendHelper from '../sharedByClients/helpers/Dojo/DojoBackendHelper';
class DojoBackendManager {
......@@ -55,14 +56,9 @@ class DojoBackendManager {
}
public getApiUrl(route: ApiRoute): string {
return `${ ClientsSharedConfig.apiURL }${ route }`;
}
public async login(gitlabTokens: GitlabToken): Promise<User | undefined> {
try {
return (await axios.post<DojoBackendResponse<User>>(this.getApiUrl(ApiRoute.LOGIN), {
return (await axios.post<DojoBackendResponse<User>>(DojoBackendHelper.getApiUrl(ApiRoute.LOGIN), {
accessToken : gitlabTokens.access_token,
refreshToken: gitlabTokens.refresh_token
})).data.data;
......@@ -73,7 +69,7 @@ class DojoBackendManager {
public async refreshTokens(refreshToken: string): Promise<GitlabToken> {
return (await axios.post<DojoBackendResponse<GitlabToken>>(this.getApiUrl(ApiRoute.REFRESH_TOKENS), {
return (await axios.post<DojoBackendResponse<GitlabToken>>(DojoBackendHelper.getApiUrl(ApiRoute.REFRESH_TOKENS), {
refreshToken: refreshToken
})).data.data;
}
......@@ -81,7 +77,7 @@ class DojoBackendManager {
public async getAssignment(nameOrUrl: string): Promise<Assignment | undefined> {
try {
return (await axios.get<DojoBackendResponse<Assignment>>(this.getApiUrl(ApiRoute.ASSIGNMENT_GET).replace('{{nameOrUrl}}', encodeURIComponent(nameOrUrl)))).data.data;
return (await axios.get<DojoBackendResponse<Assignment>>(DojoBackendHelper.getApiUrl(ApiRoute.ASSIGNMENT_GET, { assignmentNameOrUrl: nameOrUrl }))).data.data;
} catch ( error ) {
return undefined;
}
......@@ -96,7 +92,7 @@ class DojoBackendManager {
}
try {
await axios.get(this.getApiUrl(ApiRoute.GITLAB_CHECK_TEMPLATE_ACCESS).replace('{{id}}', idOrNamespace));
await axios.get(DojoBackendHelper.getApiUrl(ApiRoute.GITLAB_CHECK_TEMPLATE_ACCESS, { gitlabProjectId: idOrNamespace }));
if ( verbose ) {
spinner.succeed('Template access granted');
......@@ -118,7 +114,7 @@ class DojoBackendManager {
}
try {
const response = await axios.post<DojoBackendResponse<Assignment>>(this.getApiUrl(ApiRoute.ASSIGNMENT_CREATE), Object.assign({
const response = await axios.post<DojoBackendResponse<Assignment>>(DojoBackendHelper.getApiUrl(ApiRoute.ASSIGNMENT_CREATE), Object.assign({
name : name,
members: JSON.stringify(members)
}, templateIdOrNamespace ? { template: templateIdOrNamespace } : {}));
......@@ -143,7 +139,7 @@ class DojoBackendManager {
}
try {
const response = await axios.post<DojoBackendResponse<Exercise>>(this.getApiUrl(ApiRoute.EXERCISE_CREATE).replace('{{nameOrUrl}}', encodeURIComponent(assignmentName)), { members: JSON.stringify(members) });
const response = await axios.post<DojoBackendResponse<Exercise>>(DojoBackendHelper.getApiUrl(ApiRoute.EXERCISE_CREATE, { assignmentNameOrUrl: assignmentName }), { members: JSON.stringify(members) });
if ( verbose ) {
spinner.succeed(`Exercise successfully created`);
......@@ -165,7 +161,7 @@ class DojoBackendManager {
}
try {
await axios.patch<DojoBackendResponse<null>>(this.getApiUrl(publish ? ApiRoute.ASSIGNMENT_PUBLISH : ApiRoute.ASSIGNMENT_UNPUBLISH).replace('{{nameOrUrl}}', encodeURIComponent(assignment.name)), {});
await axios.patch<DojoBackendResponse<null>>(DojoBackendHelper.getApiUrl(publish ? ApiRoute.ASSIGNMENT_PUBLISH : ApiRoute.ASSIGNMENT_UNPUBLISH, { assignmentNameOrUrl: assignment.name }), {});
if ( verbose ) {
spinner.succeed(`Assignment ${ assignment.name } successfully ${ publish ? 'published' : 'unpublished' }`);
......@@ -196,7 +192,10 @@ class DojoBackendManager {
const axiosFunction = isUpdate ? axios.patch : axios.post;
const route = isUpdate ? ApiRoute.ASSIGNMENT_CORRECTION_UPDATE : ApiRoute.ASSIGNMENT_CORRECTION_LINK;
await axiosFunction(this.getApiUrl(route).replace('{{assignmentNameOrUrl}}', encodeURIComponent(assignment.name)).replace('{{exerciseIdOrUrl}}', encodeURIComponent(exerciseIdOrUrl)), {
await axiosFunction(DojoBackendHelper.getApiUrl(route, {
assignmentNameOrUrl: assignment.name,
exerciseIdOrUrl : exerciseIdOrUrl
}), {
exerciseIdOrUrl: exerciseIdOrUrl
});
......
Subproject commit 2b2b2376b0389a39283327bba5bfaf7d1ce136ac
Subproject commit ce495680ad5fe004f65f7b062660280077d23909
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment