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

Sonar => Resolve issues

parent 4db9ee9e
Branches
Tags
1 merge request!10Resolve "Add sonar integration"
Pipeline #30055 failed
...@@ -41,7 +41,7 @@ class ExerciseCorrectionCommand extends CommanderCommand { ...@@ -41,7 +41,7 @@ class ExerciseCorrectionCommand extends CommanderCommand {
return assignment.corrections.map(correction => { return assignment.corrections.map(correction => {
return { return {
name : correction.name.replace(correction.assignmentName, '').split('-')[2].trim(), 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'; ...@@ -9,6 +9,7 @@ import Exercise from '../sharedByClients/models/Exercise';
import GitlabToken from '../shared/types/Gitlab/GitlabToken'; import GitlabToken from '../shared/types/Gitlab/GitlabToken';
import User from '../sharedByClients/models/User'; import User from '../sharedByClients/models/User';
import DojoStatusCode from '../shared/types/Dojo/DojoStatusCode'; import DojoStatusCode from '../shared/types/Dojo/DojoStatusCode';
import DojoBackendHelper from '../sharedByClients/helpers/Dojo/DojoBackendHelper';
class DojoBackendManager { class DojoBackendManager {
...@@ -55,14 +56,9 @@ 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> { public async login(gitlabTokens: GitlabToken): Promise<User | undefined> {
try { 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, accessToken : gitlabTokens.access_token,
refreshToken: gitlabTokens.refresh_token refreshToken: gitlabTokens.refresh_token
})).data.data; })).data.data;
...@@ -73,7 +69,7 @@ class DojoBackendManager { ...@@ -73,7 +69,7 @@ class DojoBackendManager {
public async refreshTokens(refreshToken: string): Promise<GitlabToken> { 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 refreshToken: refreshToken
})).data.data; })).data.data;
} }
...@@ -81,7 +77,7 @@ class DojoBackendManager { ...@@ -81,7 +77,7 @@ class DojoBackendManager {
public async getAssignment(nameOrUrl: string): Promise<Assignment | undefined> { public async getAssignment(nameOrUrl: string): Promise<Assignment | undefined> {
try { 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 ) { } catch ( error ) {
return undefined; return undefined;
} }
...@@ -96,7 +92,7 @@ class DojoBackendManager { ...@@ -96,7 +92,7 @@ class DojoBackendManager {
} }
try { 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 ) { if ( verbose ) {
spinner.succeed('Template access granted'); spinner.succeed('Template access granted');
...@@ -118,10 +114,10 @@ class DojoBackendManager { ...@@ -118,10 +114,10 @@ class DojoBackendManager {
} }
try { 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, name : name,
members: JSON.stringify(members) members: JSON.stringify(members)
}, templateIdOrNamespace ? { template: templateIdOrNamespace } : {})); }, templateIdOrNamespace ? { template: templateIdOrNamespace } : {}));
if ( verbose ) { if ( verbose ) {
spinner.succeed(`Assignment successfully created`); spinner.succeed(`Assignment successfully created`);
...@@ -143,7 +139,7 @@ class DojoBackendManager { ...@@ -143,7 +139,7 @@ class DojoBackendManager {
} }
try { 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 ) { if ( verbose ) {
spinner.succeed(`Exercise successfully created`); spinner.succeed(`Exercise successfully created`);
...@@ -165,7 +161,7 @@ class DojoBackendManager { ...@@ -165,7 +161,7 @@ class DojoBackendManager {
} }
try { 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 ) { if ( verbose ) {
spinner.succeed(`Assignment ${ assignment.name } successfully ${ publish ? 'published' : 'unpublished' }`); spinner.succeed(`Assignment ${ assignment.name } successfully ${ publish ? 'published' : 'unpublished' }`);
...@@ -196,9 +192,12 @@ class DojoBackendManager { ...@@ -196,9 +192,12 @@ class DojoBackendManager {
const axiosFunction = isUpdate ? axios.patch : axios.post; const axiosFunction = isUpdate ? axios.patch : axios.post;
const route = isUpdate ? ApiRoute.ASSIGNMENT_CORRECTION_UPDATE : ApiRoute.ASSIGNMENT_CORRECTION_LINK; 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, {
exerciseIdOrUrl: exerciseIdOrUrl assignmentNameOrUrl: assignment.name,
}); exerciseIdOrUrl : exerciseIdOrUrl
}), {
exerciseIdOrUrl: exerciseIdOrUrl
});
if ( verbose ) { if ( verbose ) {
spinner.succeed(`Correction ${ isUpdate ? 'updated' : 'linked' }`); spinner.succeed(`Correction ${ isUpdate ? 'updated' : 'linked' }`);
......
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