Skip to content

Files

Latest commit

Nov 16, 2015
948dfbb · Nov 16, 2015

History

History

smoketests

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
Nov 16, 2015
Nov 16, 2015
Nov 16, 2015
Nov 16, 2015
Nov 16, 2015
Nov 16, 2015
Nov 16, 2015
Nov 16, 2015
Nov 16, 2015
Nov 16, 2015
Nov 16, 2015
Nov 16, 2015

Smoke tests

This directory contains application subdirectories that produce deterministic output on stdout/stderr. After flushing output once, each app exits (due to session$onFlushed(stopApp)).

Rscript snapshot.R runs each app and visits it using phantomjs. The resulting stdout/stderr output is written to an R.out.save file in the app directory.

Rscript test.R also runs each app, but instead of saving to R.out.save, the results are compared to the R.out.save and any discrepancy is reported as test failure.

Prerequisites

phantomjs must be in your path (tested with phantomjs 1.9, but later versions should be fine). On Ubuntu this is simply apt-get install phantomjs. On Mac if you have homebrew you can do brew install phantomjs. Otherwise, see http://phantomjs.org/download.html.

Adding tests

  1. Create a new directory and put either an app.R file or ui.R/server.R pair.
  2. Add the line session$onFlushed(stopApp) to your server function.
  3. Add whatever logic to emit info to stdout/stderr.
  4. Run Rscript snapshot.R.
  5. Add the new directory to git.