Sebastian Serth
e9f099d59f
Properly nest UserExerciseFeedback
...
Fixes CODEOCEAN-108
2023-11-23 14:42:10 +01:00
kiragrammel
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
Sebastian Serth
347af23f98
Remove duplicated render_views
for SubmissionsController spec
2023-11-23 14:42:10 +01:00
Sebastian Serth
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
kiragrammel
319c3ab3b4
Add ProgrammingGroup & ProgrammingGroupMembership
...
* User can create programming group with other users for exercise
* Submission is shared in a group
* Also adjust specs
2023-08-24 19:32:06 +02:00
kiragrammel
0234414bae
Rename user to contributor in submission
2023-08-24 19:32:06 +02:00
Sebastian Serth
fd2d94568a
Handle OutOfMemory runner errors with gVisor
2023-07-21 16:38:49 +02:00
Sebastian Serth
05a8e307ce
Fix rubocop offenses
2023-02-27 11:09:34 +01:00
Sebastian Serth
9c3ec3c7ff
Refactor submission scoring and testing
...
* Properly cancel code execution if running is prohibited
* Correctly monitor duration with Sentry
* Align methods with running submissions
2023-02-17 18:13:48 +01:00
Sebastian Serth
574e99eddd
Fix rubocop offenses - Requires Ruby 3.1+
2022-11-25 11:10:06 +01:00
Sebastian Serth
a4e791e3de
Always render templates in Controller specs
2022-11-02 12:25:33 +01:00
Sebastian Serth
f7515362a1
Set Content-Type to fixed value for all download actions
2022-10-05 21:46:17 +02:00
Sebastian Serth
3263d4f838
Respect subpath for (render_)protected_upload_path
2022-09-28 11:06:15 +02:00
Sebastian Serth
16c00ec136
Add support for signed URLs used by the render_file function
2022-09-23 21:35:22 +02:00
Sebastian Serth
0a16f589e9
Use X-Sendfile to transmit native files and handle file uploads
2022-09-06 01:21:40 +02:00
Sebastian Serth
d762f976a8
Add new CodeOcean::File#read method
...
* With a new method, we can simplify our code to handle differences between file.content and file.native_file.read
2022-08-19 22:42:55 +02:00
Sebastian Serth
fa27e3923d
Reimplement pending specs with rough skeleton
2022-08-09 11:41:41 +02:00
Sebastian Serth
5e9bf9141c
Fix Rubocop offenses
2022-07-08 15:23:55 +02:00
Sebastian Serth
ea85519163
Update bundle (with newest rubocop version) and fix offenses
2022-01-04 09:42:37 +01:00
Sebastian Serth
01ec9343cf
Remove usage of DockerClient
2021-11-01 17:13:10 +01:00
Sebastian Serth
601e1fab5c
Remove all occurrences of server-sent events
2021-11-01 17:12:57 +01:00
Sebastian Serth
da0a682ffb
Apply manual rubocop fixes
2021-05-14 22:03:06 +02:00
Sebastian Serth
6cbecb5b39
Apply automatic rubocop fixes
2021-05-14 22:03:06 +02:00
Sebastian Serth
8378070bc2
Upgrade to Rails 6.0 and apply new framework defaults
2021-05-12 16:47:05 +02:00
Sebastian Serth
1e5a9b0825
Remove unused SubmissionsController#stop action
2021-04-07 17:45:38 +02:00
Sebastian Serth
be3ec82bd4
Add new file role teacher_defined_linter
2020-10-15 00:43:57 +02:00
Sebastian Serth
a0d8b30ef2
Implement support for some basic embed options for work sheets via LTI
...
This commit also fixes an issue with the flash messages being positioned too high and displayed for too long
2018-12-11 14:29:36 +01:00
Sebastian Serth
56c59a616e
Completely remove old non-structured errors and migrate existing ones.
2018-11-30 11:27:25 +01:00
Sebastian Serth
efacb5a6a9
Completely remove old hints connected to the execution environment
2018-11-28 01:21:13 +01:00
Sebastian Serth
90defa8f89
Fix tests and rename request
variable in specs to perform_request
...
Explanation: Using the variable name `request` might interfere with methods in Rails core system prevent successful test execution. See this issue: https://github.com/turbolinks/turbolinks-rails/issues/38
2018-11-06 16:49:42 +01:00
Sebastian Serth
9106ab182b
Include Webpack and use it for jQuery, Bootstrap and chosen.js
2018-11-06 16:49:42 +01:00
Sebastian Serth
de52db89f0
Upgrade Rails to version 5.2.1 and adopt code & specs where necessary
...
Signed-off-by: Sebastian Serth <Sebastian.Serth@student.hpi.de >
2018-11-06 16:46:00 +01:00
Ralf Teusner
fc873cb053
second run of replacement regex from https://github.com/thoughtbot/factory_bot/blob/4-9-0-stable/UPGRADE_FROM_FACTORY_GIRL.md ...
...
Nested calls seem to be fun..
2017-11-15 15:37:42 +01:00
Ralf Teusner
0e26ab98c8
rename factory_girl_(rails) to factory_bot_(rails)
2017-11-15 15:18:07 +01:00
Maximilian Grundke
0fd993c1cd
Move submission url attributes to controller test
2017-10-26 15:48:21 +02:00
Maximilian Grundke
34e96e40be
Fix submissions controller test json response
2017-10-26 15:43:14 +02:00
Maximilian Grundke
a00adbce25
Move *_url spec to controller, because the subscription model does not handle urls anymore
2017-10-16 14:02:40 +02:00
rteusner
d931d431d5
Update submissions_controller_spec.rb
...
removed some uncommented lines
2016-11-11 17:29:03 +01:00
yqbk
c937a1a9ef
clean pull request
2016-10-24 23:02:44 +02:00
yqbk
44aca293e9
make travis green again
2016-10-08 20:37:20 +02:00
yqbk
b8e1cb8dfd
additional pending
2016-08-04 16:57:08 +02:00
yqbk
7efcfa632b
come back to green light!
2016-08-04 16:54:55 +02:00
yqbk
d921f90a65
solved logger error
2016-06-15 15:13:31 +02:00
yqbk
195fd9c3f9
submission controller spec - problem with Rails.logger.error
2016-06-14 16:07:44 +02:00
Ralf Teusner
c3a56e6429
fixed tests
2015-04-27 17:58:44 +02:00
Hauke Klement
ba3476cfec
some refactoring
2015-03-19 14:33:51 +01:00
Hauke Klement
c91d5bd0b9
added tests
2015-03-06 10:23:17 +01:00
Hauke Klement
d6dc41c175
added tests
2015-02-25 17:37:51 +01:00
Hauke Klement
ea44db73ef
removed rebellious test
2015-02-18 13:12:41 +01:00
Hauke Klement
b21a7ee8e8
use shorter notation for creating procs, as suggested by RuboCop
2015-02-17 08:21:00 +01:00