Details
Description
We do stuff like this (in the order of execution):
# ...
submission_statuses.register('WA', _("Wrong Answer"))
class TestReport(models.Model):
status = EnumField(submission_statuses)
# ...
# in different file
submission_statuses.register('MCE', _("Message Count Exceeded"))
Because of the way EnumField snapshots the registry at construction time,
TestReport.get_status_display will not be aware of MCE's display name.
As a result, Zeus statuses (MCE and MSE) display as "MCE"/"MSE" instead of their full name in the tests table on the submission report page.
Moreover, in the header of submission report page, and on the my submissions page, all statuses (except 'OK', 'ERR' and '?', as those are defined in contests/models.py) show as their acronym (eg. "WA") instead of their full name (i.e. "Wrong Answer")
This may have something to do withSIO-1600
# ...
submission_statuses.register('WA', _("Wrong Answer"))
class TestReport(models.Model):
status = EnumField(submission_statuses)
# ...
# in different file
submission_statuses.register('MCE', _("Message Count Exceeded"))
Because of the way EnumField snapshots the registry at construction time,
TestReport.get_status_display will not be aware of MCE's display name.
As a result, Zeus statuses (MCE and MSE) display as "MCE"/"MSE" instead of their full name in the tests table on the submission report page.
Moreover, in the header of submission report page, and on the my submissions page, all statuses (except 'OK', 'ERR' and '?', as those are defined in contests/models.py) show as their acronym (eg. "WA") instead of their full name (i.e. "Wrong Answer")
This may have something to do with
Issue Links
- relates to
-
SIO-2132 Change submission messages to be more readable
Activity
Wojciech Dubiel
made changes -
Field | Original Value | New Value |
---|---|---|
Description |
We do stuff like this (in the order of execution):
``` # ... submission_statuses.register('WA', _("Wrong Answer")) class TestReport(models.Model): status = EnumField(submission_statuses) # ... # in different file submission_statuses.register('MCE', _("Message Count Exceeded")) ``` Because of the way EnumField snapshots the registry at construction time, TestReport.get_status_display will not be aware of MCE's display name. As a result, Zeus statuses (MCE and MSE) display as "MCE"/"MSE" instead of their full name in the tests table on the submission report page. Moreover, in the header of submission report page, and on the my submissions page, all statuses (except 'OK', 'ERR' and '?', as those are defined in contests/models.py) show as their acronym (eg. "WA") instead of their full name (i.e. "Wrong Answer") |
We do stuff like this (in the order of execution):
<code> # ... submission_statuses.register('WA', _("Wrong Answer")) class TestReport(models.Model): status = EnumField(submission_statuses) # ... # in different file submission_statuses.register('MCE', _("Message Count Exceeded")) </code> Because of the way EnumField snapshots the registry at construction time, TestReport.get_status_display will not be aware of MCE's display name. As a result, Zeus statuses (MCE and MSE) display as "MCE"/"MSE" instead of their full name in the tests table on the submission report page. Moreover, in the header of submission report page, and on the my submissions page, all statuses (except 'OK', 'ERR' and '?', as those are defined in contests/models.py) show as their acronym (eg. "WA") instead of their full name (i.e. "Wrong Answer") |
Wojciech Dubiel
made changes -
Description |
We do stuff like this (in the order of execution):
<code> # ... submission_statuses.register('WA', _("Wrong Answer")) class TestReport(models.Model): status = EnumField(submission_statuses) # ... # in different file submission_statuses.register('MCE', _("Message Count Exceeded")) </code> Because of the way EnumField snapshots the registry at construction time, TestReport.get_status_display will not be aware of MCE's display name. As a result, Zeus statuses (MCE and MSE) display as "MCE"/"MSE" instead of their full name in the tests table on the submission report page. Moreover, in the header of submission report page, and on the my submissions page, all statuses (except 'OK', 'ERR' and '?', as those are defined in contests/models.py) show as their acronym (eg. "WA") instead of their full name (i.e. "Wrong Answer") |
We do stuff like this (in the order of execution):
{code} # ... submission_statuses.register('WA', _("Wrong Answer")) class TestReport(models.Model): status = EnumField(submission_statuses) # ... # in different file submission_statuses.register('MCE', _("Message Count Exceeded")) {code} Because of the way EnumField snapshots the registry at construction time, TestReport.get_status_display will not be aware of MCE's display name. As a result, Zeus statuses (MCE and MSE) display as "MCE"/"MSE" instead of their full name in the tests table on the submission report page. Moreover, in the header of submission report page, and on the my submissions page, all statuses (except 'OK', 'ERR' and '?', as those are defined in contests/models.py) show as their acronym (eg. "WA") instead of their full name (i.e. "Wrong Answer") |
Wojciech Dubiel
made changes -
Description |
We do stuff like this (in the order of execution):
{code} # ... submission_statuses.register('WA', _("Wrong Answer")) class TestReport(models.Model): status = EnumField(submission_statuses) # ... # in different file submission_statuses.register('MCE', _("Message Count Exceeded")) {code} Because of the way EnumField snapshots the registry at construction time, TestReport.get_status_display will not be aware of MCE's display name. As a result, Zeus statuses (MCE and MSE) display as "MCE"/"MSE" instead of their full name in the tests table on the submission report page. Moreover, in the header of submission report page, and on the my submissions page, all statuses (except 'OK', 'ERR' and '?', as those are defined in contests/models.py) show as their acronym (eg. "WA") instead of their full name (i.e. "Wrong Answer") |
We do stuff like this (in the order of execution):
# ... submission_statuses.register('WA', _("Wrong Answer")) class TestReport(models.Model): status = EnumField(submission_statuses) # ... # in different file submission_statuses.register('MCE', _("Message Count Exceeded")) Because of the way EnumField snapshots the registry at construction time, TestReport.get_status_display will not be aware of MCE's display name. As a result, Zeus statuses (MCE and MSE) display as "MCE"/"MSE" instead of their full name in the tests table on the submission report page. Moreover, in the header of submission report page, and on the my submissions page, all statuses (except 'OK', 'ERR' and '?', as those are defined in contests/models.py) show as their acronym (eg. "WA") instead of their full name (i.e. "Wrong Answer") This may have something to do with |
Szymon Acedański
made changes -
Labels | easy |
Piotr Wojtczak
made changes -
Assignee | Piotr Wojtczak [ starosta ] |
Piotr Wojtczak
made changes -
Summary | Some submission statuses display as internal acronym instead of their full display name. | Fix submission messages to display the full name |
Piotr Wojtczak
made changes -
Status | New [ 10000 ] | Resolved [ 5 ] |
Assignee | Piotr Wojtczak [ starosta ] | Szymon Acedański [ accek ] |
Resolution | Fixed [ 1 ] |
Piotr Wojtczak
made changes -
Status | Resolved [ 5 ] | Closed [ 6 ] |
Piotr Wojtczak
made changes -
Transition | Time In Source Status | Execution Times | Last Executer | Last Execution Date | |||||
---|---|---|---|---|---|---|---|---|---|
|
54d 16h 7m | 1 | Piotr Wojtczak | 2019-01-31 13:12 | |||||
|
13s | 1 | Piotr Wojtczak | 2019-01-31 13:13 |
https://gerrit.sio2project.mimuw.edu.pl/3136
SIO-2131Some submission statuses display as internal acronym instead of their full display nameIt turned out that classes that used the submission_statuses registry referenced an early made copy.
Making those read only properties allowing fetching when accessed resolved the issue.
Change-Id: I7a9d5b8e9dfc31c6898e67f6c251f594c99e6967