A belated thanks for this  update. Martin

On 03/08/2017 09:53 AM, Welliton Souza wrote:
Martin,

I am using the "Template for Resource Queries"
(http://bioconductor.org/developers/how-to/web-query/). I think the
correct is:

while (N.TRIES > 0L) { # line 5

instead of

while (N.TRIES >= 0L) { # line 5

Because it will run twice when N.TRIES = 1L. At the end of the
loop N.TRIES should be 0 not -1. Or this line will fail.

if (N.TRIES == 0L) { # line 12

Welliton

On Tue, Mar 7, 2017 at 5:15 PM Welliton Souza <well...@gmail.com
<mailto:well...@gmail.com>> wrote:

    Thank you Martin for the response, it was very helpful.

    I am facing difficulties to write code examples, unit tests and
    vignettes for accessing web APIs. I understand that the use of
    \dontrun{} is not the best solution for examples. I am using
    testthat::skip_on_bioc() to avoid time consuming and internet
    connection during execution of unit tests. I also using pre-cached
    response data (Rda file) for vignettes because I didn't find a cache
    solution for knitr/Rmarkdown. It would be very useful a package that
    helps us caching web response data and time consuming results that
    can be used in examples, unit tests and vignettes.

    Welliton


    On Tue, Mar 7, 2017 at 4:49 PM Martin Morgan
    <martin.mor...@roswellpark.org
    <mailto:martin.mor...@roswellpark.org>> wrote:

        On 03/07/2017 02:35 PM, Welliton Souza wrote:
        > Thank you Nan Xiao, I think it is a good solution for my case.
        I will put
        > the definition of host outside the \dontrun{}.

        Actually, generally, one doesn't want to work around tests with
        hacks,
        but either (a) address the underlying problem or (b) justify
        what the
        current behavior is and live with the warning. Writing  \dontrun{}
        doesn't help  at all -- it might work now, but will suffer from 'bit
        rot' in the future; example and vignette code is littered with
        examples
        like this.

        The usual problem with web resources is that the functions that
        access
        them assume that the resource is reliably available, and that
        band width
        is infinite. In reality, the web resource is likely to experience
        periodic down time, and the band width can be cripplingly slow.

        There are a few notes here

           http://bioconductor.org/developers/how-to/web-query/

        discussing better practice for querying web resources. Avoiding
        infinitely querying a web resource and including a time out are two
        important steps.

        Ideally one would like unit tests that verify that the web
        resource is
        in fact alive, and that the expected API is available. One would not
        necessarily test the entire API, but rely instead on serialized
        instances to ensure that one parses the correct information.

        With examples, there is a combination of judicious use of web calls
        coupled with re-use of data from previous calls. The forthcoming
        BiocFileCache (https://github.com/Bioconductor/BiocFileCache)
        might be
        used to create a temporary cache used during the duration of the
        build /
        check, limiting the number of unique calls required while still
        exposing
        substantial functionality in the example pages.

        Martin

        >
        > Welliton
        >
        > Em ter, 7 de mar de 2017 16:27, Nan Xiao <road2s...@gmail.com
        <mailto:road2s...@gmail.com>> escreveu:
        >
        >> - this check can be bypassed by
        >> writing "partially working" examples,
        >> for instance:
        >>
        >> #' token = "foo"
        >> #' \dontrun{
        >> #' api(..., token)}
        >>
        >> Best,
        >> -Nan
        >>
        >> On Tue, Mar 7, 2017 at 2:13 PM, Welliton Souza
        <well...@gmail.com <mailto:well...@gmail.com>> wrote:
        >>
        >> Hi Sean,
        >>
        >> It doesn't require authentication. I've been using this server (
        >> http://1kgenomes.ga4gh.org) to provide working examples and
        do unit tests
        >> but I am not responsible for this server. However the package
        was developed
        >> to access any server endpoint that use the same API. There
        are many web
        >> resources to cover, the package takes some time to run all
        examples.
        >>
        >> Welliton
        >>
        >>
        >> Em ter, 7 de mar de 2017 16:03, Sean Davis
        <seand...@gmail.com <mailto:seand...@gmail.com>> escreveu:
        >>
        >> Hi, Welliton.
        >>
        >> Great question.  Just out of curiosity, what are the internet
        connection
        >> requirements that preclude running examples?  Is
        authentication required?
        >> Or are you connecting to a server that runs only intermittently?
        >>
        >> Sean
        >>
        >>
        >> On Tue, Mar 7, 2017 at 1:57 PM, Welliton Souza
        <well...@gmail.com <mailto:well...@gmail.com>> wrote:
        >>
        >> Hi,
        >>
        >> I am developing a package that access web API endpoints. I
        wrote the
        >> examples within \dontrun{} due to internet connection
        requirements.
        >> However, the BiocCheck reports that I should provide at least
        80 % of
        >> running examples. What I should do? The package is mainly
        focused on
        >> accessing web API and processing response data.
        >>
        >> Best regards,
        >> Welliton Souza
        >>
        >>         [[alternative HTML version deleted]]
        >>
        >> _______________________________________________
        >> Bioc-devel@r-project.org <mailto:Bioc-devel@r-project.org>
        mailing list
        >> https://stat.ethz.ch/mailman/listinfo/bioc-devel
        >>
        >>         [[alternative HTML version deleted]]
        >>
        >> _______________________________________________
        >> Bioc-devel@r-project.org <mailto:Bioc-devel@r-project.org>
        mailing list
        >> https://stat.ethz.ch/mailman/listinfo/bioc-devel
        >>
        >>
        >>
        >>
        >> --
        >> https://nanx.me
        >>
        >
        >       [[alternative HTML version deleted]]
        >
        > _______________________________________________
        > Bioc-devel@r-project.org <mailto:Bioc-devel@r-project.org>
        mailing list
        > https://stat.ethz.ch/mailman/listinfo/bioc-devel
        >


        This email message may contain legally privileged and/or
        confidential information.  If you are not the intended
        recipient(s), or the employee or agent responsible for the
        delivery of this message to the intended recipient(s), you are
        hereby notified that any disclosure, copying, distribution, or
        use of this email message is prohibited.  If you have received
        this message in error, please notify the sender immediately by
        e-mail and delete this email message from your computer. Thank you.



This email message may contain legally privileged and/or...{{dropped:2}}

_______________________________________________
Bioc-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/bioc-devel

Reply via email to