Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Programming exercises: Fix routing to repository view #10228

Closed
Show file tree
Hide file tree
Changes from 250 commits
Commits
Show all changes
451 commits
Select commit Hold shift + click to select a range
d7b9ee6
fix science.component.spec.ts
coolchock Jan 8, 2025
a88b803
fix vertical-progress-bar.component.spec.ts
coolchock Jan 8, 2025
c63a946
Merge remote-tracking branch 'origin/chore/update-angular19' into cho…
coolchock Jan 8, 2025
a61ef4f
tutorial groups client tests first half
az108 Jan 8, 2025
678a6b4
Merge remote-tracking branch 'origin/chore/update-angular19' into cho…
az108 Jan 8, 2025
37f666b
fix conversation-member-row.component.spec.ts
asliayk Jan 8, 2025
20e110f
Merge remote-tracking branch 'origin/chore/update-angular19' into cho…
asliayk Jan 8, 2025
03522c8
fix standardized-competency-management.spec.ts
coolchock Jan 8, 2025
ad3edc0
Merge remote-tracking branch 'origin/chore/update-angular19' into cho…
coolchock Jan 8, 2025
1ad8ac0
update ngbCollapseMocks.module.ts to fix course-conversations.compone…
asliayk Jan 8, 2025
e8eed1d
fix conversation-detail-dialog.component.spec.ts
asliayk Jan 8, 2025
8cb1f10
fix channels-create-dialog.component.spec.ts
asliayk Jan 8, 2025
e9732f9
fix channels-overview-dialog.component.spec.ts
asliayk Jan 8, 2025
95b2989
fix attachment-unit-form.component.spec.ts tests
PaRangger Jan 8, 2025
9c6f738
fix conversation-add-users-dialog.component.spec.ts
asliayk Jan 8, 2025
69b71ff
Merge remote-tracking branch 'origin/chore/update-angular19' into cho…
asliayk Jan 8, 2025
ff20ad5
Fix course-registration-button.component.spec.ts tests
PaRangger Jan 8, 2025
d29c8b0
Remove deprecated symbol in pdf-preview components
PaRangger Jan 8, 2025
7a92464
fix text-editor.component.spec.ts tests
PaRangger Jan 8, 2025
8d3c086
Fix notification.interceptor.spec.ts tests
PaRangger Jan 8, 2025
ec98b7c
Fix system-notification-detail.componen.spec.ts tests
PaRangger Jan 8, 2025
a3dbed7
fix conversation-members.component.spec.ts
asliayk Jan 8, 2025
18b9dcd
Merge remote-tracking branch 'origin/chore/update-angular19' into cho…
asliayk Jan 8, 2025
0f9920e
Fix system-notification-management.component.spec.ts tests
PaRangger Jan 8, 2025
e79fab2
fix course-tutorial-group-detail.component.spec.ts
asliayk Jan 8, 2025
aea57be
fix tutorial-groups-import-button.component.spec.ts
asliayk Jan 8, 2025
31ab33c
fix tutorial-groups-export-button.component.spec.ts
asliayk Jan 8, 2025
61643a3
fix tutorial-groups-course-information.component.spec.ts
asliayk Jan 8, 2025
b5809e0
fix tutorial-group-management-detail.component.spec.ts
asliayk Jan 8, 2025
90f53c7
fix tutorial-groups-checklist.component.spec.ts
asliayk Jan 8, 2025
75e26d6
fix tutorial-group-sessions-management.component.spec.ts
asliayk Jan 8, 2025
d0625c0
fix competency-selection.component.spec.ts
coolchock Jan 8, 2025
bbd2caf
fix tutorial-group-free-periods-management.component.spec.ts
asliayk Jan 8, 2025
7d0e5b6
fix feedback-modal.component.spec.ts
coolchock Jan 8, 2025
07cc861
fix exercise-update-warning.component.spec.ts
coolchock Jan 8, 2025
6d0ebc1
fix participant-scores-distribution.component.spec.ts
coolchock Jan 8, 2025
2ccf8b5
fix course-group.component.spec.ts
coolchock Jan 8, 2025
c581c84
fix plagiarism-run-details.component.spec.ts
coolchock Jan 8, 2025
afbd4ee
fix plagiarism-inspector.component.spec.ts
coolchock Jan 8, 2025
3c9ae88
fix modeling-submission-viewer.component.spec.ts
coolchock Jan 8, 2025
7284615
fix compilation error
SimonEntholzer Jan 8, 2025
70d07d9
fix plagiarism-case-instructor-detail-view.component.spec.ts
coolchock Jan 8, 2025
955f1d2
fix plagiarism-case-student-detail-view.component.spec.ts
coolchock Jan 8, 2025
465b8c6
fix split-pane-header.component.spec.ts
coolchock Jan 8, 2025
16967e0
Merge remote-tracking branch 'origin/chore/update-angular19' into cho…
coolchock Jan 8, 2025
5c7d120
fix presentation-score.component.spec.ts
coolchock Jan 8, 2025
be56521
fix quiz-re-evaluate-warning.component.spec.ts
coolchock Jan 8, 2025
0d73a5e
fix star-rating.component.spec.ts
coolchock Jan 8, 2025
b35838a
fix ide-settings.component.spec.ts
coolchock Jan 8, 2025
dd7660f
fix statistics-average-score-graph.component.spec.ts
coolchock Jan 8, 2025
c21763f
fix doughnut-chart.component.spec.ts
coolchock Jan 8, 2025
f8c7d03
fix statistics-average-score-graph.component.spec.ts
coolchock Jan 8, 2025
6e280c8
fix statistics-graph.component.spec.ts
coolchock Jan 8, 2025
66335a5
remove redundant provider
coolchock Jan 8, 2025
8c2ded1
fix table-editable-field.component.spec.ts
coolchock Jan 8, 2025
bc9414f
fix manual-text-selection.component.spec.ts
coolchock Jan 8, 2025
46e5010
fix tutorial-group-session-row-buttons.component.spec.ts
coolchock Jan 8, 2025
a0b6c26
fix cancellation-modal.component.spec.ts
coolchock Jan 8, 2025
6493f23
fix fit-text.directive.spec.ts
coolchock Jan 8, 2025
2925c59
fix code-editor-container.integration.spec.ts
coolchock Jan 8, 2025
8629061
fix CreateTutorialGroupFreePeriodComponent test
SimonEntholzer Jan 8, 2025
57b8da0
fix course-management-overview-statistics.component.spec.ts
coolchock Jan 8, 2025
5cc2a16
course-management-exercises-search.component.spec.ts
coolchock Jan 8, 2025
8386f85
fix course-detail-line-chart.component.spec.ts
coolchock Jan 8, 2025
ffeff5b
fix course-detail-doughnut-chart.component.spec.ts
coolchock Jan 8, 2025
bdbfbd0
fix course-management.component.spec.ts
coolchock Jan 8, 2025
611d69d
fix connection-warning.spec.ts
coolchock Jan 8, 2025
e82f618
fix complaints-form.component.spec.ts
coolchock Jan 8, 2025
1f143d3
fix import-course-competencies.component.spec.ts
coolchock Jan 8, 2025
625b41a
fix course-statistics.component.spec.ts
coolchock Jan 8, 2025
3f9713c
fix course-card.component.spec.ts
coolchock Jan 8, 2025
6a8ec35
fix organization-selector.component.spec.ts
coolchock Jan 8, 2025
4fe5e8b
fix modeling-explanation-editor.component.spec.ts
coolchock Jan 8, 2025
2af0202
fix modeling-exercise.component.spec.ts
coolchock Jan 8, 2025
3659dfd
fix repository-view.component.spec.ts
coolchock Jan 8, 2025
fe0124d
fix build-queue.component.spec.ts
coolchock Jan 8, 2025
20ea1a0
fix participation.component.spec.ts
coolchock Jan 8, 2025
17308f9
Ignore potential lazily loaded component chunks from proxy paths
magaupp Jan 8, 2025
5652198
remove deprecated 'allowSignalWrites' flag to fix tests calling conso…
coolchock Jan 8, 2025
6756cb2
Merge remote-tracking branch 'origin/chore/update-angular19' into cho…
coolchock Jan 8, 2025
a8a9604
fix text-exercise-update.component.spec.ts
coolchock Jan 8, 2025
1b8c413
fix tutor-effort-statistics.component.spec.ts
coolchock Jan 8, 2025
da4f7f6
fix text-exercise.component.spec.ts
coolchock Jan 8, 2025
bcfb708
text-exercise-row-buttons.component.spec.ts
coolchock Jan 8, 2025
b994890
fix artemis-date.pipe.spec.ts
coolchock Jan 8, 2025
ff0a062
fix competency-card.component.spec.ts
coolchock Jan 8, 2025
77b5dc0
fix competency-form.component.spec.ts
coolchock Jan 8, 2025
365ae45
tutorial groups client tests more fixed
az108 Jan 8, 2025
3567bfa
Merge remote-tracking branch 'origin/chore/update-angular19' into cho…
az108 Jan 8, 2025
fdea9a8
Merge remote-tracking branch 'origin/chore/update-angular19' into cho…
coolchock Jan 8, 2025
41704ac
fix user-route-access.service.spec.ts
coolchock Jan 8, 2025
23e9c03
fix course-unenrollment-modal.component.spec.ts
coolchock Jan 8, 2025
12f3f8b
fix file-upload-exercise-update.component.spec.ts
coolchock Jan 8, 2025
40af412
fix file-upload-exercise.component.spec.ts
coolchock Jan 8, 2025
fa90528
fix exercise-scores-chart.component.spec.ts
coolchock Jan 8, 2025
86dd266
fix course-group-membership.component.spec.ts
coolchock Jan 8, 2025
52f382a
more testcase fixes for tutorial groups component
az108 Jan 8, 2025
8139924
Merge remote-tracking branch 'origin/chore/update-angular19' into cho…
az108 Jan 8, 2025
4cd847d
Merge remote-tracking branch 'origin/chore/update-angular19' into cho…
coolchock Jan 8, 2025
270e40d
fix textblock-feedback-editor.component.spec.ts
coolchock Jan 8, 2025
6fd6805
fix textblock-assessment-card.component.spec.ts
coolchock Jan 8, 2025
287db45
fix example-text-submission.component.spec.ts
coolchock Jan 8, 2025
855ea4f
fix text-exercise-detail.component.spec.ts
coolchock Jan 8, 2025
3080fcb
fix course-management-card.component.spec.ts
coolchock Jan 8, 2025
ba27037
fix auth-expired.interceptor.spec.ts
coolchock Jan 8, 2025
728f635
fix reacting-users-on-posting.pipe.spec.ts
coolchock Jan 8, 2025
b5afb2b
fix lecture-units.component.spec.ts
coolchock Jan 8, 2025
9c105de
fix lti-initializer.component.spec.ts
coolchock Jan 8, 2025
74d679a
fix standardized-competency-filter-page.component.spec.ts
coolchock Jan 8, 2025
74a04c2
fix detail-overview-list.component.spec.ts
coolchock Jan 9, 2025
8fbeed4
fix feature-overview.component.spec.ts
coolchock Jan 9, 2025
90dae98
fix exercise-unit.component.spec.ts
coolchock Jan 9, 2025
c8be68c
fix orion-outdated.component.spec.ts
coolchock Jan 9, 2025
538b189
fix modal-confirm-autofocus.component.spec.ts
coolchock Jan 9, 2025
868da8c
fix task-count-warning.component.spec.ts
coolchock Jan 9, 2025
365eeda
fix TutorLeaderboardComponent test
SimonEntholzer Jan 8, 2025
b1e2ced
fix ArtemisTimeAgoPipe test
SimonEntholzer Jan 9, 2025
f76ce52
fix ConfirmEntityNameComponent test
SimonEntholzer Jan 9, 2025
7477ed9
fix ConfirmEntityNameHostComponent test
SimonEntholzer Jan 9, 2025
23a07fa
fix CreateAttachmentUnitComponent test
SimonEntholzer Jan 9, 2025
d440448
fix CompetencyPopoverComponent test
SimonEntholzer Jan 9, 2025
88cac67
fix PrerequisiteFormComponent test
SimonEntholzer Jan 9, 2025
f3d6b3a
fix create-exercise-unit.component.spec.ts
coolchock Jan 9, 2025
fd7479f
fix git-diff-file-panel.component.spec.ts
coolchock Jan 9, 2025
47422d3
fix date-time-picker.component.spec.ts
coolchock Jan 9, 2025
b8f01a4
Fix course-update.component.spec.ts
cremertim Jan 9, 2025
ce3b19d
Merge remote-tracking branch 'origin/chore/update-angular19' into cho…
cremertim Jan 9, 2025
9cf11bf
fix course-lecture-row.component.spec.ts
coolchock Jan 9, 2025
cb34478
fix course-prerequisites-button.component.spec.ts
coolchock Jan 9, 2025
5a43338
Fix translate.directive.spec.ts tests
PaRangger Jan 9, 2025
fd379c1
fix programming-exercise-instruction-analysis.service.spec.ts
coolchock Jan 9, 2025
5552a82
fix organization-management-resolve.spec.ts
coolchock Jan 9, 2025
36b4ba1
fix lecture-period.component.spec.ts
coolchock Jan 9, 2025
8d5307e
Merge remote-tracking branch 'origin/chore/update-angular19' into cho…
coolchock Jan 9, 2025
e73811b
Fix course-overview.component.spec.ts
cremertim Jan 9, 2025
4ecba38
Merge remote-tracking branch 'origin/chore/update-angular19' into cho…
cremertim Jan 9, 2025
db27570
Fixed browser-fingerprint.interceptor.spec.ts
PaRangger Jan 9, 2025
fc4c475
fix CourseUsersSelectorComponent test
SimonEntholzer Jan 9, 2025
6b2171c
fix errorhandler.interceptor.spec.ts
coolchock Jan 9, 2025
78a80c0
Fix Faq Filter
cremertim Jan 9, 2025
1b86429
Merge remote-tracking branch 'origin/chore/update-angular19' into cho…
cremertim Jan 9, 2025
6e27d3f
fix form-footer.component.spec.ts
asliayk Jan 9, 2025
7bd2576
fix exercise-detail.directive.spec.ts
asliayk Jan 9, 2025
84323d5
fix delete-dialog.directive.spec.ts (partially)
asliayk Jan 9, 2025
bebbd38
fix course-update.component.spec.ts (partially)
asliayk Jan 9, 2025
4bb12c7
fix collapsable-assessment-instructions.component.spec.ts
asliayk Jan 9, 2025
2369dbb
fix science.service.spec.ts
asliayk Jan 9, 2025
3fe8fdc
fix orion-programming-exercise.component.spec.ts
asliayk Jan 9, 2025
0efa594
fix data-export-request-button.directive.spec.ts (partially)
asliayk Jan 9, 2025
7a7ab9e
fix science.directive.spec.ts
asliayk Jan 9, 2025
3adc87a
fix programming-exercise-grading.component.spec.ts
asliayk Jan 9, 2025
a6f1cbc
fix treeview-item.component.spec.ts
asliayk Jan 9, 2025
2482879
fix orion-exercise-details-student-actions.component.spec.ts
asliayk Jan 9, 2025
8b48806
fix custom-pattern-validator.directive.spec.ts
coolchock Jan 9, 2025
c4960d2
fix course-prerequisites-modal.component.spec.ts
coolchock Jan 9, 2025
2785feb
fix create-tutorial-group.component.spec.ts
coolchock Jan 9, 2025
8bfe60e
fix edit-competency.component.spec.ts
coolchock Jan 9, 2025
5f5e7c9
fix example-submission-import.component.spec.ts
coolchock Jan 10, 2025
aba628c
fix orion-code-editor-instructor-and-editor-container.component.spec.ts
coolchock Jan 10, 2025
3a9a5a8
fix edit-prerequisite.component.spec.ts tests
PaRangger Jan 10, 2025
325d013
fix orion-exercise-assessment-dashboard.component.spec.ts
coolchock Jan 10, 2025
448a5d9
fix header-course.component.spec.ts
coolchock Jan 10, 2025
4a1b8e1
Fix sort-by.directive.spec.ts tests
PaRangger Jan 10, 2025
5818e99
Fix sticky-popover.directive.spec.ts
PaRangger Jan 10, 2025
e41cc46
Fix text-unit-form.component.spec.ts tests
PaRangger Jan 10, 2025
281ec30
fix learning-path-instructor-page.component.spec.ts
coolchock Jan 10, 2025
88d7dd3
fix data-export-request-button.directive.spec.ts
coolchock Jan 10, 2025
6617d72
fix delete-dialog.directive.spec.ts
coolchock Jan 10, 2025
2d254cf
fix theme.service.spec.ts
FelixTJDietrich Jan 10, 2025
9a064dd
fix monaco-editor.service.spec.ts
FelixTJDietrich Jan 10, 2025
0e9c78a
disable playwright test retries to better see all flaky tests
SimonEntholzer Jan 10, 2025
69234b1
updater angular version again
krusche Jan 10, 2025
0e8ed61
fix undefined error in participation.component.html
SimonEntholzer Jan 10, 2025
62e5fe8
Merge branch 'develop' into chore/update-angular19
raffifasaro Jan 10, 2025
4ed747f
fix course-update.component.spec.ts
FelixTJDietrich Jan 10, 2025
09d0089
fix teams.component.spec.ts
FelixTJDietrich Jan 10, 2025
a186d74
fix tutorial-group-form.component.spec.ts
rabeatwork Jan 10, 2025
1a8cfbe
Merge branch 'develop' into chore/update-angular19
coolchock Jan 10, 2025
058d763
resolve merge conflict
coolchock Jan 10, 2025
8756789
fix TextUnitComponent test
SimonEntholzer Jan 10, 2025
6e7196a
fix edit-online-unit.component.spec.ts
coolchock Jan 10, 2025
b1074d5
fix EditAttachmentUnitComponent test
SimonEntholzer Jan 10, 2025
d1164e0
fix edit-video-unit.component.spec.ts
coolchock Jan 10, 2025
ed04cc6
Merge remote-tracking branch 'origin/chore/update-angular19' into cho…
coolchock Jan 10, 2025
072dfe8
fix create-video-unit.component.spec.ts
coolchock Jan 10, 2025
c188222
fix create-text-unit.component.spec.ts
coolchock Jan 10, 2025
86c3109
fix create-online-unit.component.spec.ts
coolchock Jan 10, 2025
ba24ceb
rename stubs
coolchock Jan 10, 2025
0460f4e
package-lock.json
coolchock Jan 10, 2025
3ff8cb5
fix EditTutorialGroupComponent tests
BBesrour Jan 10, 2025
bcda289
partially fix competency-form.component.spec.ts
coolchock Jan 10, 2025
7f6d791
Merge remote-tracking branch 'origin/chore/update-angular19' into cho…
coolchock Jan 10, 2025
ce4921e
fix EditTutorialGroupComponent tests
BBesrour Jan 10, 2025
1737483
fix course-competencies-relation-graph.component.spec.ts
coolchock Jan 10, 2025
b2612c3
fix ExerciseImportComponent test
SimonEntholzer Jan 10, 2025
1f86b95
fix SidebarCardLargeComponent tests
LeonWehrhahn Jan 10, 2025
620b821
Merge branch 'chore/update-angular19' of https://github.com/ls1intum/…
LeonWehrhahn Jan 10, 2025
f1a2741
fix SidebarCardSmallComponent and SidebarCardMediumComponent tests
LeonWehrhahn Jan 10, 2025
7c186a8
revert changes to course-competencies-relation-graph.component.spec.ts
coolchock Jan 10, 2025
ef986ac
fix competency-form.component.spec.ts tests by injecting correct service
ole-ve Jan 11, 2025
1537ca0
fix course-competencies-relation-graph.component.spec.ts
ole-ve Jan 11, 2025
367eb0e
fix course-competencies-relation-modal.component.spec.ts
ole-ve Jan 11, 2025
b453511
fix detailed-grading-system.component.spec.ts by mocking and expectin…
ole-ve Jan 11, 2025
56c3d67
correctly type in course-competencies-relation-graph.component.spec.ts
ole-ve Jan 11, 2025
2876243
fix tutorial-group-free-period-form.component.ts by not mutating the …
ole-ve Jan 11, 2025
67297ee
return close-method as part of mocked NgbModalRef-result
ole-ve Jan 11, 2025
291dc94
call detectChanges to ensure updated components
ole-ve Jan 11, 2025
02ff2ac
fix git-diff-modal.component.spec.ts
ole-ve Jan 11, 2025
ecdebc6
update eslint
krusche Jan 11, 2025
38d86a0
try out experimental flag to significantly reduce amount of lazy chun…
krusche Jan 11, 2025
d6ec7c7
fix TutorialGroupRowButtonsComponent test
SimonEntholzer Jan 11, 2025
7153d7d
fix plagiarism-cases-instructor-view.component.spec.ts
xHadie Jan 11, 2025
7dbee26
Merge branch 'develop' into chore/update-angular19
krusche Jan 12, 2025
c88bd3f
Fix some issues after merge
krusche Jan 12, 2025
2f1a66d
fix user-settings.directive.spec.ts (partially)
asliayk Jan 12, 2025
76c7385
fix user-settings.directive.spec.ts
asliayk Jan 12, 2025
ddb6f2e
Merge branch 'develop' into chore/update-angular19
krusche Jan 12, 2025
4fe0db0
only apply optimization on prod build
krusche Jan 12, 2025
31fcc22
unify duplicated code
krusche Jan 12, 2025
8dcba0a
implement some smaller code improvements
krusche Jan 12, 2025
38562c3
updated problemStatement.json to fix programming-exercise-instruction…
asliayk Jan 12, 2025
63ef14f
Merge remote-tracking branch 'origin/chore/update-angular19' into cho…
asliayk Jan 12, 2025
adfc26b
revert playwright retry disabling
SimonEntholzer Jan 12, 2025
1c515ee
fix bug where unreferenced feedback was not shown for modeling exercises
SimonEntholzer Jan 12, 2025
f928af0
fix bug where unreferenced feedback was not shown for modeling exercises
SimonEntholzer Jan 12, 2025
2c16494
merge develop
SimonEntholzer Jan 13, 2025
0c503ce
Fix guided-tour.integration.spec.ts tests
PaRangger Jan 13, 2025
d90dcec
improved code button
SimonEntholzer Jan 14, 2025
170d9af
Merge branch 'develop' into feature/programming-exercises/code-button…
SimonEntholzer Jan 14, 2025
6ba9bcf
fixed code button test and cleaned up profile services
SimonEntholzer Jan 18, 2025
028bf42
remove unused constants
SimonEntholzer Jan 18, 2025
e7e5c33
remove comment
SimonEntholzer Jan 18, 2025
73c0035
only show one alert
SimonEntholzer Jan 18, 2025
b8d91ff
Merge branch 'develop' into feature/programming-exercises/code-button…
SimonEntholzer Jan 18, 2025
ec2c6c7
re-added removed route for now
SimonEntholzer Jan 20, 2025
b1ec556
Merge branch 'develop' into feature/programming-exercises/code-button…
SimonEntholzer Jan 21, 2025
34cb776
use effects
SimonEntholzer Jan 21, 2025
62b2f71
Merge branch 'develop' into feature/programming-exercises/code-button…
SimonEntholzer Jan 22, 2025
26dd829
simplify state management
SimonEntholzer Jan 23, 2025
83da1fc
rename method to mechanism for consistency
SimonEntholzer Jan 23, 2025
ed9489d
disable access to vcs access token settings for students completely
SimonEntholzer Jan 23, 2025
f114d21
Merge branch 'develop' into feature/programming-exercises/code-button…
SimonEntholzer Jan 23, 2025
0bd00f0
fix server test
SimonEntholzer Jan 23, 2025
eaa6d1c
updated config ymls
SimonEntholzer Jan 28, 2025
2f2f66e
Merge branch 'develop' into feature/programming-exercises/code-button…
SimonEntholzer Jan 28, 2025
7f48d73
remove unnecessary non null assertions
SimonEntholzer Jan 28, 2025
e25ccee
fixed routing
SimonEntholzer Jan 28, 2025
3877fcb
Merge branch 'feature/programming-exercises/code-button-configuration…
SimonEntholzer Jan 29, 2025
fa240bb
Merge branch 'develop' into feature/programming-exercises/repository-…
SimonEntholzer Feb 1, 2025
c29eab3
Merge branch 'develop' into feature/programming-exercises/repository-…
SimonEntholzer Feb 3, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -243,9 +243,7 @@ public final class Constants {

public static final String INFO_SSH_KEYS_URL_DETAIL = "sshKeysURL";

public static final String INFO_VERSION_CONTROL_ACCESS_TOKEN_DETAIL = "useVersionControlAccessToken";

public static final String INFO_SHOW_CLONE_URL_WITHOUT_TOKEN = "showCloneUrlWithoutToken";
public static final String INFO_CODE_BUTTON_AUTHENTICATION_MECHANISMS = "authenticationMechanisms";

public static final String REGISTRATION_ENABLED = "registrationEnabled";

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
package de.tum.cit.aet.artemis.programming.service.gitlab;

import static de.tum.cit.aet.artemis.core.config.Constants.INFO_CODE_BUTTON_AUTHENTICATION_MECHANISMS;

import java.net.URL;
import java.util.List;
import java.util.Optional;

import org.springframework.beans.factory.annotation.Value;
Expand All @@ -27,11 +30,8 @@ public class GitlabInfoContributor implements InfoContributor {
@Value("${artemis.version-control.ssh-keys-url-path:#{null}}")
private Optional<String> gitlabSshKeysUrlPath;

@Value("${artemis.version-control.use-version-control-access-token:#{false}}")
private Boolean useVersionControlAccessToken;

@Value("${artemis.version-control.show-clone-url-without-token:true}")
private boolean showCloneUrlWithoutToken;
@Value("${artemis.version-control.repository-authentication-mechanisms:password,token,ssh}")
private List<String> orderedAuthenticationMechanisms;

@Override
public void contribute(Info.Builder builder) {
Expand All @@ -54,8 +54,6 @@ public void contribute(Info.Builder builder) {
builder.withDetail(Constants.INFO_SSH_KEYS_URL_DETAIL, sshKeysUrl);
}
}

builder.withDetail(Constants.INFO_VERSION_CONTROL_ACCESS_TOKEN_DETAIL, useVersionControlAccessToken);
builder.withDetail(Constants.INFO_SHOW_CLONE_URL_WITHOUT_TOKEN, showCloneUrlWithoutToken);
builder.withDetail(INFO_CODE_BUTTON_AUTHENTICATION_MECHANISMS, orderedAuthenticationMechanisms);
}
}
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
package de.tum.cit.aet.artemis.programming.service.localvc;

import static de.tum.cit.aet.artemis.core.config.Constants.INFO_CODE_BUTTON_AUTHENTICATION_MECHANISMS;
import static de.tum.cit.aet.artemis.core.config.Constants.PROFILE_LOCALVC;

import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
import java.util.List;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
Expand All @@ -28,11 +30,8 @@ public class LocalVCInfoContributor implements InfoContributor {
@Value("${server.url}")
private String artemisServerUrl;

@Value("${artemis.version-control.use-version-control-access-token:false}")
private boolean useVcsAccessToken;

@Value("${artemis.version-control.show-clone-url-without-token:true}")
private boolean showCloneUrlWithoutToken;
@Value("${artemis.version-control.repository-authentication-mechanisms:password,token,ssh}")
private List<String> orderedAuthenticationMechanisms;

@Value("${artemis.version-control.ssh-port:7921}")
private int sshPort;
Expand All @@ -45,12 +44,8 @@ public void contribute(Info.Builder builder) {
// Store name of the version control system
builder.withDetail(Constants.VERSION_CONTROL_NAME, "Local VC");

// Show the access token in case it is available in the clone URL
// with the account.service.ts and its check if the access token is required
// TODO: Find a better way to test this in LocalVCInfoContributorTest
builder.withDetail(Constants.INFO_VERSION_CONTROL_ACCESS_TOKEN_DETAIL, useVcsAccessToken);
builder.withDetail(Constants.INFO_SHOW_CLONE_URL_WITHOUT_TOKEN, showCloneUrlWithoutToken);

// Store the authentication mechanisms that should be used by the code-button and their order
builder.withDetail(INFO_CODE_BUTTON_AUTHENTICATION_MECHANISMS, orderedAuthenticationMechanisms);
// Store ssh url template
try {
var serverUri = new URI(artemisServerUrl);
Expand Down
3 changes: 2 additions & 1 deletion src/main/resources/config/application-artemis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,8 @@ artemis:
# ssh-private-key-folder-path: <ssh-private-key-folder-path> # the path to the folder in which the private ssh key file (e.g. id_rsa) is stored that can be used to clone git repos on the version control server
# ssh-private-key-password: <ssh-private-key-password> # the password for the private ssh key
default-branch: main # The branch that should be used as default branch for all newly created repositories. This does NOT have to be equal to the default branch of the VCS
use-version-control-access-token: true # for Gitlab and LocalVC setups. For gitlab: a Gitlab-API token can be generated for each user and used as part of the Git clone URL shown to students to allow for password-less Git operations via HTTP. For LocalVC: Artemis generates access tokens for users to use repositories similar to the gitlab setup
use-version-control-access-token: true # for Gitlab setups. For gitlab: a Gitlab-API token can be generated for each user and used as part of the Git clone URL shown to students to allow for password-less Git operations via HTTP.
repository-authentication-mechanisms: token,ssh,password # the order of authentication mechanisms in the code button pop up. Removing parts removes them from the drop-down
continuous-integration:
user: <username> # e.g. ga12abc
password: <password>
Expand Down
3 changes: 0 additions & 3 deletions src/main/resources/config/application-localvc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,3 @@ artemis:
url: http://localhost:8000
build-agent-git-username: buildjob_user # Replace with more secure credentials for production. Required for https access to localvc. This config must be set for build agents and localvc.
build-agent-git-password: buildjob_password # Replace with more secure credentials for production. Required for https access to localvc. This config must be set for build agents and localvc. You can also use an ssh key
use-version-control-access-token: true
show-clone-url-without-token: true

Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
class="ms-2"
[smallButtons]="true"
[repositoryUri]="auxiliaryRepository.repositoryUri"
[routerLinkForRepositoryView]="['.', 'repository', 'AUXILIARY', 'repo', auxiliaryRepository.id]"
[routerLinkForRepositoryView]="['.', 'repository', 'AUXILIARY', auxiliaryRepository.id]"
/>
<jhi-programming-exercise-instructor-repo-download
class="ms-2"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
@if (detail.data.participation?.repositoryUri && detail.data.exerciseId) {
<div class="clone-buttons">
<jhi-code-button [smallButtons]="true" [routerLinkForRepositoryView]="['.', 'repository', detail.data.type]" [repositoryUri]="detail.data.participation?.repositoryUri!" />
<jhi-code-button [smallButtons]="true" [repositoryUri]="detail.data.participation?.repositoryUri!" [routerLinkForRepositoryView]="['.', 'repository', detail.data.type]" />
<jhi-programming-exercise-instructor-repo-download class="ms-2" [exerciseId]="detail.data.exerciseId" [repositoryType]="detail.data.type" />
</div>
} @else {
Expand Down
110 changes: 8 additions & 102 deletions src/main/webapp/app/exam/manage/exam-management.route.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { UserRouteAccessService } from 'app/core/auth/user-route-access-service'

import { TextExerciseResolver } from 'app/exercises/text/manage/text-exercise/text-exercise.route';

import { ProgrammingExerciseResolve } from 'app/exercises/programming/manage/programming-exercise-management-routing.module';
import { ProgrammingExerciseResolve, repositorySubRoutes } from 'app/exercises/programming/manage/programming-exercise-management-routing.module';

import { PendingChangesGuard } from 'app/shared/guard/pending-changes.guard';
import { Authority } from 'app/shared/constants/authority.constants';
Expand All @@ -25,8 +25,6 @@ import { FileUploadExerciseManagementResolve } from 'app/exercises/file-upload/m
import { ModelingExerciseResolver } from 'app/exercises/modeling/manage/modeling-exercise-resolver.service';
import { CourseResolve, ExamResolve, ExerciseGroupResolve, StudentExamResolve } from 'app/exam/manage/exam-management-resolve.service';

import { LocalVCGuard } from 'app/localvc/localvc-guard.service';

export const examManagementRoute: Routes = [
{
path: '',
Expand Down Expand Up @@ -267,31 +265,12 @@ export const examManagementRoute: Routes = [
canActivate: [UserRouteAccessService],
},
{
path: ':examId/student-exams/:studentExamId/summary/exercises/:exerciseId/repository/:participationId',
loadComponent: () => import('app/localvc/repository-view/repository-view.component').then((m) => m.RepositoryViewComponent),
data: {
authorities: [Authority.TA, Authority.EDITOR, Authority.INSTRUCTOR, Authority.ADMIN],
pageTitle: 'artemisApp.repository.title',
},
canActivate: [UserRouteAccessService, LocalVCGuard],
},
{
path: ':examId/student-exams/:studentExamId/summary/exercises/:exerciseId/repository/:participationId/commit-history',
loadComponent: () => import('app/localvc/commit-history/commit-history.component').then((m) => m.CommitHistoryComponent),
data: {
authorities: [Authority.TA, Authority.EDITOR, Authority.INSTRUCTOR, Authority.ADMIN],
pageTitle: 'artemisApp.repository.commitHistory.title',
},
canActivate: [UserRouteAccessService, LocalVCGuard],
path: ':examId/student-exams/:studentExamId/programming-exercises/:exerciseId/repository/:repositoryType',
children: repositorySubRoutes,
},
{
path: ':examId/student-exams/:studentExamId/summary/exercises/:exerciseId/repository/:participationId/commit-history/:commitHash',
loadComponent: () => import('app/localvc/commit-details-view/commit-details-view.component').then((m) => m.CommitDetailsViewComponent),
data: {
authorities: [Authority.TA, Authority.EDITOR, Authority.INSTRUCTOR, Authority.ADMIN],
pageTitle: 'artemisApp.repository.commitHistory.commitDetails.title',
},
canActivate: [UserRouteAccessService, LocalVCGuard],
path: ':examId/student-exams/:studentExamId/programming-exercises/:exerciseId/repository/:repositoryType/:repositoryId',
children: repositorySubRoutes,
},
{
path: ':examId/student-exams/:studentExamId/exam-timeline',
Expand Down Expand Up @@ -596,84 +575,11 @@ export const examManagementRoute: Routes = [
},
{
path: ':examId/exercise-groups/:exerciseGroupId/programming-exercises/:exerciseId/repository/:repositoryType',
loadComponent: () => import('app/localvc/repository-view/repository-view.component').then((m) => m.RepositoryViewComponent),
data: {
authorities: [Authority.ADMIN, Authority.INSTRUCTOR, Authority.EDITOR, Authority.TA],
pageTitle: 'artemisApp.repository.title',
},
canActivate: [UserRouteAccessService, LocalVCGuard],
children: repositorySubRoutes,
},
{
path: ':examId/exercise-groups/:exerciseGroupId/programming-exercises/:exerciseId/repository/:repositoryType/vcs-access-log',
loadComponent: () => import('app/localvc/vcs-repository-access-log-view/vcs-repository-access-log-view.component').then((m) => m.VcsRepositoryAccessLogViewComponent),
data: {
authorities: [Authority.ADMIN, Authority.INSTRUCTOR],
pageTitle: 'artemisApp.repository.title',
},
canActivate: [UserRouteAccessService, LocalVCGuard],
},
{
path: ':examId/exercise-groups/:exerciseGroupId/programming-exercises/:exerciseId/repository/:repositoryType/repo/:repositoryId',
loadComponent: () => import('app/localvc/repository-view/repository-view.component').then((m) => m.RepositoryViewComponent),
data: {
authorities: [Authority.ADMIN, Authority.INSTRUCTOR, Authority.EDITOR, Authority.TA],
pageTitle: 'artemisApp.repository.title',
},
canActivate: [UserRouteAccessService, LocalVCGuard],
},
{
path: ':examId/exercise-groups/:exerciseGroupId/programming-exercises/:exerciseId/repository/:repositoryType/commit-history',
loadComponent: () => import('app/localvc/commit-history/commit-history.component').then((m) => m.CommitHistoryComponent),
data: {
authorities: [Authority.ADMIN, Authority.INSTRUCTOR, Authority.EDITOR, Authority.TA],
pageTitle: 'artemisApp.repository.title',
},
canActivate: [UserRouteAccessService, LocalVCGuard],
},
{
path: ':examId/exercise-groups/:exerciseGroupId/programming-exercises/:exerciseId/repository/:repositoryType/commit-history/:commitHash',
loadComponent: () => import('app/localvc/commit-details-view/commit-details-view.component').then((m) => m.CommitDetailsViewComponent),
data: {
authorities: [Authority.ADMIN, Authority.INSTRUCTOR, Authority.EDITOR, Authority.TA],
pageTitle: 'artemisApp.repository.title',
},
canActivate: [UserRouteAccessService, LocalVCGuard],
},
{
path: ':examId/exercise-groups/:exerciseGroupId/programming-exercises/:exerciseId/participations/:participationId/repository',
loadComponent: () => import('app/localvc/repository-view/repository-view.component').then((m) => m.RepositoryViewComponent),
data: {
authorities: [Authority.ADMIN, Authority.INSTRUCTOR, Authority.EDITOR, Authority.TA],
pageTitle: 'artemisApp.repository.title',
},
canActivate: [UserRouteAccessService, LocalVCGuard],
},
{
path: ':examId/exercise-groups/:exerciseGroupId/programming-exercises/:exerciseId/participations/:participationId/repository/vcs-access-log',
loadComponent: () => import('app/localvc/vcs-repository-access-log-view/vcs-repository-access-log-view.component').then((m) => m.VcsRepositoryAccessLogViewComponent),
data: {
authorities: [Authority.ADMIN, Authority.INSTRUCTOR],
pageTitle: 'artemisApp.repository.title',
},
canActivate: [UserRouteAccessService, LocalVCGuard],
},
{
path: ':examId/exercise-groups/:exerciseGroupId/programming-exercises/:exerciseId/participations/:participationId/repository/commit-history',
loadComponent: () => import('app/localvc/commit-history/commit-history.component').then((m) => m.CommitHistoryComponent),
data: {
authorities: [Authority.ADMIN, Authority.INSTRUCTOR, Authority.EDITOR, Authority.TA],
pageTitle: 'artemisApp.repository.title',
},
canActivate: [UserRouteAccessService, LocalVCGuard],
},
{
path: ':examId/exercise-groups/:exerciseGroupId/programming-exercises/:exerciseId/participations/:participationId/repository/commit-history/:commitHash',
loadComponent: () => import('app/localvc/commit-details-view/commit-details-view.component').then((m) => m.CommitDetailsViewComponent),
data: {
authorities: [Authority.ADMIN, Authority.INSTRUCTOR, Authority.EDITOR, Authority.TA],
pageTitle: 'artemisApp.repository.title',
},
canActivate: [UserRouteAccessService, LocalVCGuard],
path: ':examId/exercise-groups/:exerciseGroupId/programming-exercises/:exerciseId/repository/:repositoryType/:repositoryId',
children: repositorySubRoutes,
},
{
path: ':examId/exercise-groups/:exerciseGroupId/quiz-exercises/:exerciseId',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,16 @@
@if (submission) {
<h5 jhiTranslate="artemisApp.exam.examSummary.yourSubmission"></h5>
}
<h1>Programming exam summary</h1>
<jhi-code-button
[smallButtons]="true"
[repositoryUri]="participation?.userIndependentRepositoryUri || ''"
[routerLinkForRepositoryView]="routerLink + '/exercises/' + exercise.id + '/repository/' + participation.id"
[participations]="[participation]"
[repositoryUri]="participation?.userIndependentRepositoryUri ?? ''"
[routerLinkForRepositoryView]="
isInCourseManagement
? ['..', 'programming-exercises', exercise.id!, 'repository', 'USER', participation.id!]
: [routerLink, 'exercises', exercise.id!, 'repository', participation.id!]
"
/>
<br />
<span>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,12 +67,13 @@ export class ProgrammingExamSummaryComponent implements OnInit {

routerLink: string;
localVCEnabled = false;
isInCourseManagement = false;

ngOnInit() {
this.routerLink = this.router.url;
this.result = this.participation.results?.[0];
this.commitHash = this.submission?.commitHash?.slice(0, 11);

this.isInCourseManagement = this.router.url.includes('course-management');
const isBuilding = false;
const missingResultInfo = MissingResultInformation.NONE;

Expand Down
Loading
Loading