context("README")
os = new("Openscoring")
test_that("Openscoring is S4 object", {
expect_true(isS4(os))
expect_equal(os@base_url, "http://localhost:8080/openscoring")
})
deployResponse = deployFile(os, "Iris", "resources/DecisionTreeIris.pmml")
test_that("Deploy response is ModelResponse object", {
expect_true(isS4(deployResponse))
expect_true(is(deployResponse, "SimpleResponse"))
expect_true(is(deployResponse, "ModelResponse"))
expect_equal(deployResponse@id, "Iris")
expect_equal(deployResponse@miningFunction, "classification")
expect_equal(deployResponse@summary, "Tree model")
expect_true(length(deployResponse@properties) > 0)
expect_equal(length(deployResponse@schema), 4)
expect_equal(length(deployResponse@schema$inputFields), 4)
expect_equal(length(deployResponse@schema$groupFields), 0)
expect_equal(length(deployResponse@schema$targetFields), 1)
expect_equal(length(deployResponse@schema$outputFields), 4)
})
arguments = list(
Sepal_Length = 5.1,
Sepal_Width = 3.5,
Petal_Length = 1.4,
Petal_Width = 0.2
)
result = evaluate(os, "Iris", arguments)
test_that("Simple evaluation response is list", {
expect_true(is(result, "list"))
expect_equal(length(result), 1 + 4)
expect_equal(result$Species, "setosa")
})
evaluationRequest = new("EvaluationRequest", id = "record-001", arguments = arguments)
evaluationResponse = evaluate(os, "Iris", evaluationRequest)
test_that("Advanced evaluation response is EvaluationResponse object", {
expect_true(isS4(evaluationResponse))
expect_true(is(evaluationResponse, "SimpleResponse"))
expect_true(is(evaluationResponse, "EvaluationResponse"))
expect_equal(evaluationResponse@id, "record-001")
expect_equal(length(evaluationResponse@result), 1 + 4)
expect_equal(evaluationResponse@result$Species, "setosa")
})
test_that("Simple evaluation and advanced evaluation contain the same prediction", {
expect_equal(evaluationResponse@result, result)
})
evaluationResponse = evaluate(os, "Flower", evaluationRequest)
test_that("Failed advanced evaluation response is SimpleResponse object", {
expect_true(isS4(evaluationResponse))
expect_true(is(evaluationResponse, "SimpleResponse"))
expect_false(is(evaluationResponse, "EvaluationResponse"))
expect_equal(evaluationResponse@message, "Model \"Flower\" not found")
})
df = read.table(file = "resources/input.csv", header = TRUE, sep = ",")
evaluationResponse = evaluateCsv(os, "Iris", df)
test_that("CSV evaluation response is data.frame", {
expect_true(is(evaluationResponse, "data.frame"))
expect_equal(nrow(evaluationResponse), 3)
expect_equal(ncol(evaluationResponse), 1 + (1 + 4))
})
evaluationResponse = evaluateCsv(os, "Flower", df)
test_that("Failed CSV evaluation response is SimpleResponse object", {
expect_true(isS4(evaluationResponse))
expect_true(is(evaluationResponse, "SimpleResponse"))
expect_equal(evaluationResponse@message, "Model \"Flower\" not found")
})
tmpfile = tempfile(pattern = "test", fileext = ".csv")
evaluationResponse = evaluateCsvFile(os, "Iris", "resources/input.csv", tmpfile)
test_that("CSV evaluation response is path", {
expect_true(is(evaluationResponse, "character"))
expect_true(file.size(evaluationResponse) > 100)
})
evaluationResponse = evaluateCsvFile(os, "Flower", "resources/input.csv", tmpfile)
test_that("Failed CSV evaluation response is SimpleResponse object", {
expect_true(isS4(evaluationResponse))
expect_true(is(evaluationResponse, "SimpleResponse"))
expect_equal(evaluationResponse@message, "Model \"Flower\" not found")
})
undeployResponse = undeploy(os, "Iris")
test_that("Undeploy response is SimpleResponse object", {
expect_true(isS4(undeployResponse))
expect_equal(undeployResponse@message, NA_character_)
})
undeployResponse = undeploy(os, "Flower")
test_that("Failed undeploy response is SimpleResponse object", {
expect_true(isS4(undeployResponse))
expect_equal(undeployResponse@message, "Model \"Flower\" not found")
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.