49 Commits

Author SHA1 Message Date
029efd7904 Fix JavaScript error for ExternalUserStatistics
Previously, an exercise without visible files was used. While this worked for the test, it was semantically problematic, since the resulting submissions also lacked files.
2024-05-21 11:56:54 +02:00
a230618724 Fix Rubocop offenses 2024-01-09 01:27:58 +01:00
5ddc5a8ca5 Redirect users after sign in to their desired page 2023-12-01 00:06:31 +01:00
175c8933f3 Automatically submit LTI grade on each score run
With this commit, we refactor the overall score handling of CodeOcean. Previously, "Score" and "Submit" were two distinct actions, requiring users to confirm the LTI transmission of their score (after assessing their submission). This yielded many questions and was unnecessary, since LTI parameters are no longer expiring after each use. Therefore, we can now transmit the current grade on each score run with the very same LTI parameters. As a consequence, the LTI consumer gets a more detailed history of the scores, enabling further analytical insights.

For users, the previous "Submit" button got replaced with a notification that is shown as soon as the full score got reached. Then, learners can decide to "finalize" their work on the given exercise, which will initiate a redirect to a follow-up action (as defined in the RedirectBehavior). This RedirectBehavior has also been unified and simplified for better readability.

As part of this refactoring, we rephrased the notifications and UX workflow of a) the LTI transmission, b) the finalization of an exercise (measured by reaching the full score) and c) the deadline handling (on time, within grace period, too late). Those information are now separately shown, potentially resulting in multiple notifications. As a side effect, they are much better maintainable, and the LTI transmission is more decoupled from this notification handling.
2023-11-23 14:42:10 +01:00
99bd46af1a Align project files with CodeHarbor
Since both projects are developed together and by the same team, we also want to have the same code structure and utility methods available in both projects. Therefore, this commit changes many files, but without a functional change.
2023-10-11 00:18:33 +02:00
c29256aa81 Fix Rubocop offenses 2023-09-11 14:10:16 +02:00
0234414bae Rename user to contributor in submission 2023-08-24 19:32:06 +02:00
d1a0012d4f Overwrite Bootstrap Link Renderer for WillPaginate
Without this fix, the new will_paginate version is not compatible with the old version of bootstrap-will_paginate. This issue is also tracked here: https://github.com/mislav/will_paginate/issues/649

Fixes CODEOCEAN-QK
2023-06-14 14:43:18 +02:00
896f1dcbee Minimize test setup for RfC feature specs 2023-02-20 23:47:06 +01:00
574e99eddd Fix rubocop offenses - Requires Ruby 3.1+ 2022-11-25 11:10:06 +01:00
c75f52f2c8 Fix Rubocop offenses 2022-10-24 12:28:50 +02:00
a9c85c0a1f Fix Rubocop offenses 2022-10-06 00:45:06 +02:00
42688ed1c9 Prefer authentication token for session if present 2022-10-05 21:34:19 +02:00
936c11e31f Refactor authentication token for new study-group-based authorization 2022-09-22 19:24:26 +02:00
006c794f54 Fix rubocop offenses 2022-09-14 00:31:47 +02:00
b6837e9539 Refactor validity of token authentication 2022-09-02 16:56:19 +02:00
e0c2c7b806 Hide score button if exercise has no tests
We check for all teacher-defined assessments (linter and unit tests) to determine whether scoring should be possible
2022-08-22 17:51:57 +02:00
6e213f754f minor styling change to authenticationtoken model, changed the expire_at column of AuthenticationToken form date to datetime 2022-08-05 08:05:07 +02:00
1a987a65d4 added new AuthenticationToken factory, as well as new tests to check if access is denied when the token is expired, smaller optimalization changes to the user_mailer_spec and authentication_spec 2022-08-05 08:05:07 +02:00
184c9cba6d created new feature test to check that only users with the right permission are able to see the new autosave-hide feature 2022-07-20 17:18:36 +02:00
ea85519163 Update bundle (with newest rubocop version) and fix offenses 2022-01-04 09:42:37 +01:00
7f47af99cb Fix order-dependent specs 2021-11-04 19:15:33 +01:00
01ec9343cf Remove usage of DockerClient 2021-11-01 17:13:10 +01:00
b6bc578aea Move submission scoring from controller concern to submission model
Localization and markdown formatting is now done in a controller
spec in order to bring this logic away from the data and towards
the view.
2021-11-01 17:12:50 +01:00
cf58be97ee Fix 17 previously failing specs 2021-11-01 17:12:49 +01:00
5e913c8a1a Skip failing tests
17 tests are always failing, due to changes introduced when adding the
Runner abstraction. To know only these fail, they now get skipped in
order to make it apparent if tests that should not fail do fail in the
pipeline.
2021-11-01 17:12:48 +01:00
da0a682ffb Apply manual rubocop fixes 2021-05-14 22:03:06 +02:00
6cbecb5b39 Apply automatic rubocop fixes 2021-05-14 22:03:06 +02:00
ebdfd4ab63 Re-enable oscillating tests 2021-05-12 16:47:05 +02:00
1c2d5bc2a8 Prometheus: Mock config in specs 2021-05-10 18:57:01 +02:00
44b32b6f6a #46 Add Prometheus exporter 2021-04-07 14:06:32 +02:00
028fc2989a #18 Add sql index for unpublished exercises
And remove spec for remove feature
2020-12-15 12:17:11 +01:00
a088e4c9f6 Update Bundle and ignore failing specs 2019-11-29 11:28:26 +01:00
1a26d67c82 Merge branch 'master' into add_roles_via_LTI
# Conflicts:
#	app/views/application/_breadcrumbs.html.slim
#	app/views/application/welcome.html.slim
#	app/views/exercise_collections/show.html.slim
#	app/views/external_users/index.html.slim
#	app/views/layouts/application.html.slim
#	app/views/proxy_exercises/index.html.slim
#	app/views/user_exercise_feedbacks/index.html.slim
#	app/views/user_mailer/send_thank_you_note.slim
2018-12-14 00:53:06 +01:00
88081bb541 Replace usage of name in favor of displayname 2018-12-13 14:27:55 +01:00
3665058435 Fix tests and slightly refactor some policies 2018-12-12 14:09:20 +01:00
d503b3c0f6 Fix editor_spec and adopt to current design of implementation page
Signed-off-by: Sebastian Serth <Sebastian.Serth@student.hpi.de>
2018-03-09 15:23:29 +01:00
0e26ab98c8 rename factory_girl_(rails) to factory_bot_(rails) 2017-11-15 15:18:07 +01:00
9852119d49 skip some more selenium tests which are currently not working locally. 2016-11-11 15:37:22 +01:00
c937a1a9ef clean pull request 2016-10-24 23:02:44 +02:00
f055e6813d changes in travis 2016-10-16 17:21:54 +02:00
44aca293e9 make travis green again 2016-10-08 20:37:20 +02:00
2bb1362520 further delete (spec files) 2016-07-04 16:59:30 +02:00
bc51948ada fixed some tests.. 2015-08-25 16:02:14 +02:00
6013163dcb adjusted specs 2015-03-05 10:40:52 +01:00
d47d1ba416 added feature specs 2015-03-03 17:55:56 +01:00
9fccf098e8 adjusted tests 2015-02-10 09:16:16 +01:00
f70f2eb4b7 minor change 2015-01-29 15:08:11 +01:00
4cbf9970b1 transferred Code Ocean from original repository to GitHub 2015-01-22 10:01:32 +01:00