\documentclass[10pt]{article}
%\VignetteIndexEntry{Rcpp-unitTests}
%\VignetteKeywords{R,Rcpp,unit tests}
%\VignetteDepends{Rcpp}
\SweaveOpts{concordance=FALSE}

\usepackage{vmargin}
\setmargrb{0.75in}{0.75in}{0.75in}{0.75in}

\usepackage{microtype}                     %% cf http://www.khirevich.com/latex/microtype/
\usepackage[T1]{fontenc}		   %% cf http://www.khirevich.com/latex/font/
\usepackage[bitstream-charter]{mathdesign} %% cf http://www.khirevich.com/latex/font/

<<echo=FALSE,print=FALSE>>=
require(Rcpp)
prettyVersion <- packageDescription("Rcpp")$Version
prettyDate <- format(Sys.Date(), "%B %e, %Y")
library(RUnit)
@

\usepackage[colorlinks]{hyperref}
\author{Dirk Eddelbuettel \and Romain Fran\c{c}ois}
\title{\textbf{Rcpp}: Unit testing results}
\date{Rcpp version \Sexpr{prettyVersion} as of \Sexpr{prettyDate}}

\begin{document}
\maketitle

\section*{Test Execution}

<<unitTesting,echo=FALSE,print=FALSE>>=
pkg <- "Rcpp"

if( Sys.getenv( "TRAVIS" ) == "true" ){
  writeLines( "not running any tests as part of checking the vignette when doing continuous integration with travis" )
} else {  
  
  ## Check the environemnt variable to see if all tests should be run
  if (Sys.getenv("RunAllRcppTests") != "yes") {
      writeLines("The environment variable 'RunAllRcppTests' was not set to 'yes', so skipping some tests.")
  }
  
  if (file.exists("unitTests-results")) unlink("unitTests-results", recursive = TRUE)
  dir.create("unitTests-results")
  path <- system.file("unitTests", package=pkg)
  testSuite <- defineTestSuite(name=paste(pkg, "unit testing"), dirs=path)
  tests <- runTestSuite(testSuite)
  err <- getErrors(tests)
  if (err$nFail > 0) stop(sprintf("unit test problems: %d failures", err$nFail))
  if (err$nErr > 0) stop( sprintf("unit test problems: %d errors", err$nErr))
  printHTMLProtocol(tests, fileName=sprintf("unitTests-results/%s-unitTests.html", pkg))
  printTextProtocol(tests, fileName=sprintf("unitTests-results/%s-unitTests.txt" , pkg))
  
  #if (file.exists("/tmp")) {
  #    invisible(sapply(c("txt", "html"), function(ext) {
  #        fname <- sprintf("unitTests-results/%s-unitTests.%s", pkg, ext)
  #        file.copy(fname, "/tmp", overwrite=TRUE)
  #    }))
  #}
}
@

\section*{Test Results}

\begin{verbatim}
<<importResults,echo=FALSE,results=tex>>=
results <- "unitTests-results/Rcpp-unitTests.txt"
if (file.exists(results)) {
    writeLines(readLines(results))
} else{
    writeLines("Unit test results not available")
}
@

\end{verbatim}

\end{document}
