View source: R/showVmGlgExamples.R
testVmGlgExample | R Documentation |
Check the values of the example calculation of the given insurance contract as required by the Austrian regulation (LV-VMGLV, "LV Versicherungsmathematische Grundlagen Verordnung"). Missing params not passed to the function call will be silently ignored and not cause unit test failures.
testVmGlgExample( contract, prf = 10, t = 10, t_prf = 12, net, Zillmer, gross, written, savings, risk, ZillmerRes, ZillmerRes.prf, VwKostenRes, VwKostenRes.prf, Bilanzreserve, Praemienuebertrag, Rueckkaufsreserve, Rueckkaufswert, Abschlusskostenruecktrag, Rueckkaufswert.prf, VS.prf, absTolerance = 0.015, ... )
contract |
The insurance contract to calculate and check |
prf |
Time of premium waiver (premium-free) |
t |
Time for which to check all values (except premium-free values) |
t_prf |
Time for which to check all values after the premium waiver |
net, Zillmer, gross, written, savings, risk, ZillmerRes, ZillmerRes.prf, VwKostenRes, VwKostenRes.prf, Bilanzreserve, Praemienuebertrag, Rueckkaufsreserve, Rueckkaufswert, Abschlusskostenruecktrag, Rueckkaufswert.prf, VS.prf |
Values as printed out by showVmGlgExamples |
absTolerance |
If non-NULL, will ignore small floating point differences. It uses same algorithm as all.equal() |
... |
Further parameters for generating the contract for a tariff object |
The easiest way to write unit-tests is using the function vmGlgExample.generateTest
library(MortalityTables) mortalityTables.load("Austria_Annuities_AVOe2005R") ## Not run: test_that("Testtarif", { # A trivial deferred annuity tariff with no costs: tariff = InsuranceTarif$new(name="Test Annuity", type="annuity", mortalityTable = AVOe2005R.unisex, i=0.01) contract = InsuranceContract$new( tariff, age = 35, YOB = 1981, policyPeriod = 30, premiumPeriod = 15, deferralPeriod = 15, sumInsured = 1000, contractClosing = as.Date("2016-10-01") ); testVmGlgExample( contract, t = 10, net = 850.09, # NOT_CHECKED: Zillmer = 950.09, gross = 850.09, written = 884.09, savings = 857.09, risk = -7.00, ZillmerRes = 9011.40, ZillmerRes.prf = 9205.96, VwKostenRes = 0.00, VwKostenRes.prf = 0.00, Bilanzreserve = 9250.35, Praemienuebertrag = 212.52, Rueckkaufsreserve = 9011.40, Rueckkaufswert = 9011.40, Abschlusskostenruecktrag = 0.00, Rueckkaufswert.prf = 9205.96, VS.prf = 685.12 ) }) ## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.