@@ -13,31 +13,42 @@ class Q016Spec extends MacroSpec {
13
13
val sampleSize = testLars.size
14
14
val sampleSizeTarget = (testLars.size * multiplier).toInt
15
15
def underCap (lar : LoanApplicationRegister ) = {
16
- val underCapLoan = lar.loan .copy(amount = incomeCap - 1 )
17
- lar.copy(loan = underCapLoan )
16
+ val underCapApplicant = lar.applicant .copy(income = ( incomeCap - 1 ).toString )
17
+ lar.copy(applicant = underCapApplicant )
18
18
}
19
19
def overCap (lar : LoanApplicationRegister ) = {
20
- val overCapLoan = lar.loan .copy(amount = incomeCap + 1 )
21
- lar.copy(loan = overCapLoan )
20
+ val overCapApplicant = lar.applicant .copy(income = incomeCap.toString )
21
+ lar.copy(applicant = overCapApplicant )
22
22
}
23
23
24
- property(s " be valid if under cap loans < $multiplier * over cap loans " ) {
24
+ def naIncome (lar : LoanApplicationRegister ) = {
25
+ val naApplicant = lar.applicant.copy(income = " NA" )
26
+ lar.copy(applicant = naApplicant)
27
+ }
28
+
29
+ property(s " be valid if under cap loans < $multiplier * total loans " ) {
25
30
val numOfRelevantLars = sampleSizeTarget - 1
26
31
val validLarSource = newLarSource(testLars, numOfRelevantLars, underCap, overCap)
27
32
validLarSource.mustPass
28
33
}
29
34
30
- property(s " be invalid if under cap loans = $multiplier * over cap loans " ) {
35
+ property(s " be invalid if under cap loans = $multiplier * total loans " ) {
31
36
val numOfRelevantLars = sampleSizeTarget
32
37
val validLarSource = newLarSource(testLars, numOfRelevantLars, underCap, overCap)
33
38
validLarSource.mustPass
34
39
}
35
40
36
- property(s " be invalid if under cap loans > $multiplier * over cap loans " ) {
41
+ property(s " be invalid if under cap loans > $multiplier * total loans " ) {
37
42
val numOfRelevantLars = sampleSizeTarget + 1
38
43
val invalidLarSource = newLarSource(testLars, numOfRelevantLars, underCap, overCap)
39
44
invalidLarSource.mustFail
40
45
}
41
46
47
+ property(s " be valid if NA loans > $multiplier * total loans " ) {
48
+ val numOfRelevantLars = sampleSizeTarget + 1
49
+ val validLarSource = newLarSource(testLars, numOfRelevantLars, naIncome, overCap)
50
+ validLarSource.mustPass
51
+ }
52
+
42
53
override def check : AggregateEditCheck [LoanApplicationRegisterSource , LoanApplicationRegister ] = Q016
43
54
}
0 commit comments