[
https://issues.apache.org/jira/browse/CB-8125?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14238714#comment-14238714
]
Dmitry Blotsky edited comment on CB-8125 at 12/8/14 11:59 PM:
--------------------------------------------------------------
Hey [~iclelland]! Thanks for the feedback. I'll respond to your questions in
the order you posed them.
* There was a bug in spec 17. Nice catch! Fixed now. Specs 28 and 29 however,
do indeed fail or time out on some platforms.
* Indeed, many of the progress assertions have been removed, and they have been
replaced with a common {{defaultOnProgressHandler}}, which can be checked for
having been called. Because it is not guaranteed that an {{onprogress}} event
fires every time, I did not place that check in every spec, but only in the
specs that explicitly require it (e.g. spec 9, and all upload specs, hence
{{verifyUpload}} has the assert). If it is a legitimate requirement for
{{onprogress}} to fire every time, I will add such a check in
{{verifyDownload}}. I was unsure that that was a hard requirement, so I left it
out, since firing the event depends on the size of file being downloaded, and
also on the platform. For example, some Windows platforms and FirefoxOS do not
support progress events
([docs|https://github.com/apache/cordova-plugin-file-transfer/blob/master/doc/index.md]).
Do you think we should add that check, with platform-specific excludes?
* The helpers {{writeFile}} and {{deleteFile}} report failures only
cosmetically, since they are test set-up and tear-down and should never fail.
However, that is definitely an idealistic expectation - I modified their
failures to be more representative ({{throw}} ing on real errors, and being
more explicit on the log).
* The error block you pasted looks like the log output for specs 28 and 29 when
their functionality is unsupported. The spec prints out {{functionality
unsupported}}, followed by the error it received. I changed that message to be
a bit more clear.
Thanks for reviewing the code! Please see the pull request for the updated
changes.
was (Author: dblotsky):
Hey [~iclelland]! Thanks for the feedback. I'll respond to your questions in
the order you posed them.
* There was a bug in spec 17. Nice catch! Fixed now. Specs 28 and 29 however,
do indeed fail or time out on some platforms.
* Indeed, many of the progress assertions have been removed, and they have been
replaced with a common {{defaultOnProgressHandler}}, which can be checked for
having been called. Because it is not guaranteed that an {{onprogress}} event
fires every time, I did not place that check in every spec, but only in the
specs that explicitly require it (e.g. spec 9, and all upload specs, hence
{{verifyUpload}} has the assert). If it is a legitimate requirement for
{{onprogress}} to fire every time, I will add such a check in
{{verifyDownload}}. I was unsure that that was a hard requirement, so I left it
out, since firing the event depends on the size of file being downloaded, and
also on the platform. For example, some Windows platforms and FirefoxOS do not
support progress events
([docs|https://github.com/apache/cordova-plugin-file-transfer/blob/master/doc/index.md]).
Do you think we should add that check, with platform-specific excludes?
* The helpers {{writeFile}} and {{deleteFile}} report failures only
cosmetically, since they are test set-up and tear-down and should never fail.
However, that is definitely an idealistic expectation - I modified their
failures to be more representative ({{throw}} ing on real errors, and being
more explicit on the log).
* The error block you pasted looks like the log output for specs 28 and 29 when
their functionality is unsupported. The spec prints out {{functionality
unsupported}}, followed by the error it received. I changed that message to be
a bit more clear.
Thanks for reviewing the code! Please see the updated pull request for the
iterative changes.
> file transfer plugin tests often crash the mobilespec test app
> --------------------------------------------------------------
>
> Key: CB-8125
> URL: https://issues.apache.org/jira/browse/CB-8125
> Project: Apache Cordova
> Issue Type: Bug
> Components: mobile-spec, Plugin File Transfer, Plugin TestFramework
> Affects Versions: 4.0.0
> Environment: Windows, iOS, Android
> Reporter: Dmitry Blotsky
> Labels: file-transfer, newbie, plugin, test-framework
> Original Estimate: 72h
> Remaining Estimate: 72h
>
> Creating a mobilespec app with createmobilespec crashes non-deterministically
> when running file transfer plugin tests.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]