generateAllUnitTestsFromObject {wyz.code.testthat} | R Documentation |
Generate All Unit Tests From Object
Description
Generate testthat
code form an instrumented offensive programming object.
Usage
generateAllUnitTestsFromObject(object_o_1, sourceFile_s_1,
sourcePackage_s_1, targetFolder_s_1,
overwriteFile_b_1 = TRUE, verbose_b_1 = FALSE)
Arguments
object_o_1 |
the instrumented offensive programming object to consider |
sourceFile_s_1 |
the source package file related to the offensive programming object |
sourcePackage_s_1 |
the package name that holds the offensive programming object |
targetFolder_s_1 |
the folder where to write produced
|
overwriteFile_b_1 |
A boolean value, either |
verbose_b_1 |
A boolean value, either |
Details
Generates automatically, all the testthat
files
with compliant testthat
code,
from the offensive programming object.
Value
A list with two fields named class
and filenames
. Former provides
the class of the analyzed and mined offensive programming object, the latter gives
back all produced testthat
file names.
Note
This is rather easy to use function that implements a quite complex algorithm
based on meta-programmation to generate testthat
code.
Author(s)
Fabien Gelineau <neonira@gmail.com>
Maintainer: Fabien Gelineau <neonira@gmail.com>
References
See EvaluationMode
for more information.
Refer to test_file
from package
testthat
.
Refer to runTestCase
from package
wyz.code.offensiveProgramming
.
Examples
library(data.table)
library(wyz.code.offensiveProgramming)
library(wyz.code.testthat)
source_file <- 'code-samples/both-defs/good/full/AdditionTCFIG1.R'
source_package <- 'wyz.code.offensiveProgramming'
source(system.file(source_file, package = source_package))
object <- AdditionTCFIG1()
g <- gautfo(object, source_file, source_package, tempdir())
print(g)
# $class
# [1] "AdditionTCFIG1"
#
# $filenames
# filename overwritten
# 1: /tmp/RtmpKLCrXA/test_AdditionTCFIG1-addDouble.R TRUE
# 2: /tmp/RtmpKLCrXA/test_AdditionTCFIG1-addInteger.R TRUE
# 3: /tmp/RtmpKLCrXA/test_AdditionTCFIG1-divideByZero.R TRUE
# 4: /tmp/RtmpKLCrXA/test_AdditionTCFIG1-generateWarning.R TRUE
# 5: /tmp/RtmpKLCrXA/test_AdditionTCFIG1-generateError.R TRUE
# 6: /tmp/RtmpKLCrXA/test_AdditionTCFIG1-addMultiDouble.R TRUE
# 7: /tmp/RtmpKLCrXA/test_AdditionTCFIG1-addMultiInteger.R TRUE