Opened 9 years ago
Closed 9 years ago
#13566 closed Bug (fixed)
No further notifications after embedbase error.
Reported by: | Szymon Kupś | Owned by: | Szymon Kupś |
---|---|---|---|
Priority: | Normal | Milestone: | CKEditor 4.5.2 |
Component: | General | Version: | 4.5.0 |
Keywords: | Cc: |
Description
- Open http://tests.ckeditor.dev:1030/tests/plugins/autoembed/manual/autoembed
- Paste non-embeddable link: http://example.com/
- Wait till error notification is showed and close it.
- Paste embeddable link: https://www.youtube.com/watch?v=GUl9_5kK9ts
Actual result
There are no notifications about second embedding process.
Expected result
Notifications about second embedding process should be displayed as usual.
Change History (12)
comment:1 Changed 9 years ago by
Milestone: | → CKEditor 4.5.2 |
---|---|
Status: | new → confirmed |
Version: | 4.5.1 → 4.5.0 |
comment:2 Changed 9 years ago by
Owner: | set to Szymon Kupś |
---|---|
Status: | confirmed → assigned |
comment:3 Changed 9 years ago by
comment:4 Changed 9 years ago by
I'm more for the second solution + fixing the embedbase as well if it's easy :>. The second solution will assure that problems like this does not happen at all, also when other (e.g. 3rd party) plugins use the aggregator. The first solution would just make our code correct, which is always nice to have.
comment:6 Changed 9 years ago by
Status: | review → review_failed |
---|
I pushed branch:t/13566 with some minor improvements.
The code is good. Missing things though:
- Manual test for the reported TC.
- A unit test for the reported TC.
comment:7 Changed 9 years ago by
Status: | review_failed → review |
---|
Pushed: branch:t/13566
Added unit test and manual test for the reported TC.
comment:8 Changed 9 years ago by
Status: | review → review_failed |
---|
Rebased branch:t/13566 on master.
http://tests.ckeditor.dev:1030/tests/plugins/embedbase/definition#tests%2Fplugins%2Fembedbase%2Fdefinition%20-%20test%20canceling%20handleResponse fails (Chrome, IE8,11).
comment:9 Changed 9 years ago by
Status: | review_failed → assigned |
---|
comment:10 Changed 9 years ago by
Status: | assigned → review |
---|
Pushed: branch:t/13566
Test was checking if task was done after unsuccessful request. Now embedbase is cancelling tasks on request error, so test should use task.isCanceled()
method.
comment:11 Changed 9 years ago by
Status: | review → review_passed |
---|
comment:12 Changed 9 years ago by
Resolution: | → fixed |
---|---|
Status: | review_passed → closed |
Merged git:cb014cc into master.
I think that problem lies in
_handleResponse
method inembedbase
plugin. Request's task is marked there asdone
and later on in_handleError
is marked ascancelled
. This creates situation where notification aggregator works in a unexpected way.One solution can be to call task's
done()
method only if response was handled correctly.Second solution that comes to my mind is to change task behaviour:
cancel()
anddone()
methods should exclude themselves. This means that task that once was marked asdone
cannot becancelled
and other way around.