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

Development: Remove testwise coverage support #9993

Merged
merged 20 commits into from
Jan 4, 2025
Merged

Conversation

krusche
Copy link
Member

@krusche krusche commented Dec 10, 2024

Checklist

General

Server

  • Important: I implemented the changes with a very good performance and prevented too many (unnecessary) and too complex database calls.
  • I strictly followed the principle of data economy for all database calls.
  • I strictly followed the server coding and design guidelines.
  • I added multiple integration tests (Spring) related to the features (with a high test coverage).
  • I added pre-authorization annotations according to the guidelines and checked the course groups for all new REST Calls (security).
  • I documented the Java code using JavaDoc style.

Client

  • Important: I implemented the changes with a very good performance, prevented too many (unnecessary) REST calls and made sure the UI is responsive, even with large data (e.g. using paging).
  • I strictly followed the principle of data economy for all client-server REST calls.
  • I strictly followed the client coding and design guidelines.
  • Following the theming guidelines, I specified colors only in the theming variable files and checked that the changes look consistent in both the light and the dark theme.
  • I added multiple integration tests (Jest) related to the features (with a high test coverage), while following the test guidelines.
  • I added authorities to all new routes and checked the course groups for displaying navigation elements (links, buttons).
  • I documented the TypeScript code using JSDoc style.

Changes affecting Programming Exercises

  • High priority: I tested all changes and their related features with all corresponding user types on a test server configured with the integrated lifecycle setup (LocalVC and LocalCI).
  • I tested all changes and their related features with all corresponding user types on a test server configured with Gitlab and Jenkins.

Motivation and Context

This feature was not really used, but included lots of code that led to maintenance efforts

Description

This PR removes the features on the server and client side

Still missing: liquibase changes to remove the affected tables and columns in the database, will be added in a follow-up

Steps for Testing

Prerequisites:

  • 1 Instructor
  • 2 Students
  • 1 Programming Exercise with Complaints enabled
  1. Log in to Artemis
  2. Navigate to Course Administration
  3. ...

Exam Mode Testing

Prerequisites:

  • 1 instructor and 1 student
  • 1 programming exercise
  1. Create a programming exercise
  2. Instructor: Navigate through the different page and make sure everything works correctly without issues, e.g. Edit, Edit in Editor, Review Changes, etc.
  3. Participate as student and make sure everything works correctly, also in different modes (offline, online)

Testserver States

Note

These badges show the state of the test servers.
Green = Currently available, Red = Currently locked
Click on the badges to get to the test servers.







Review Progress

Code Review

  • Code Review 1
  • Code Review 2

Manual Tests

  • Test 1
  • Test 2

@github-actions github-actions bot added tests server Pull requests that update Java code. (Added Automatically!) client Pull requests that update TypeScript code. (Added Automatically!) documentation template playwright assessment Pull requests that affect the corresponding module atlas Pull requests that affect the corresponding module buildagent Pull requests that affect the corresponding module core Pull requests that affect the corresponding module exam Pull requests that affect the corresponding module exercise Pull requests that affect the corresponding module plagiarism Pull requests that affect the corresponding module programming Pull requests that affect the corresponding module labels Dec 10, 2024
Copy link

There hasn't been any activity on this pull request recently. Therefore, this pull request has been automatically marked as stale and will be closed if no further activity occurs within seven days. Thank you for your contributions.

@github-actions github-actions bot added the stale label Dec 18, 2024
Copy link
Contributor

@ole-ve ole-ve left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good, there seems to be some occurrences of the testwise coverage report left:

  • ProgrammingExerciseIntegrationJenkinsGitlabTest#createProgrammingExercise_testwiseCoverageAnalysisNotSupported_badRequest
  • ProgrammingExerciseIntegrationTestService#createProgrammingExercise_testwiseCoverageAnalysisNotSupported_badRequest
  • ProgrammingExerciseFactory#populateUnreleasedProgrammingExercise (unused method arg)
  • ProgrammingExerciseUtilService (few occurrences for "testwise")

coolchock
coolchock previously approved these changes Jan 3, 2025
Copy link
Contributor

@coolchock coolchock left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tested on TS3 and found no issues. All instructor actions—such as creating, editing, assessing, viewing scores, and modifying dates—worked as expected. I was able to participate as a student without any problems.

I found a few string occurrences in the code that might be related:

  • ProgrammingUtilTestService: 'hestia' in a comment
  • AeolusTemplateResource: test coverage in a comment
  • file.service.ts: Multiple occurrences of 'coverage'
  • codeHint.json: This translation file seems to be unused
  • _default-variables.scss and _dark-variables.scss: Styles related to monaco-editor-test-coverage-highlight

@krusche krusche requested review from ole-ve and coolchock January 3, 2025 15:31
@github-actions github-actions bot added communication Pull requests that affect the corresponding module lti Pull requests that affect the corresponding module labels Jan 3, 2025
Copy link
Contributor

@ole-ve ole-ve left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

code looks good, added one personal suggestion

@krusche krusche merged commit 22d38a8 into develop Jan 4, 2025
27 of 33 checks passed
@krusche krusche deleted the chore/remove-hestia branch January 4, 2025 10:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
assessment Pull requests that affect the corresponding module atlas Pull requests that affect the corresponding module buildagent Pull requests that affect the corresponding module client Pull requests that update TypeScript code. (Added Automatically!) communication Pull requests that affect the corresponding module core Pull requests that affect the corresponding module documentation exam Pull requests that affect the corresponding module exercise Pull requests that affect the corresponding module lti Pull requests that affect the corresponding module plagiarism Pull requests that affect the corresponding module playwright programming Pull requests that affect the corresponding module ready for review server Pull requests that update Java code. (Added Automatically!) template tests
Projects
Status: Merged
Development

Successfully merging this pull request may close these issues.

5 participants