/** * Validates that the validateTaxLotsCostAndTransactionAmountLessOrEqualToSecurityCommitment * returns false when the SECURITY_ID has a class code type of A (Alternative Investments), and * the total END_HLDG_TAX_LOT_T: HLDG_COST for the SECURITY_ID plus the END_TRAN_LN_T: TRAN_AMT * exceeds the value in END_SEC_T: CMTMNT_AMT for the Security */ public void testValidateTaxLotsCostAndTransactionAmountLessOrEqualToSecurityCommitment_False() { KEMID kemid = KemIdFixture.OPEN_KEMID_RECORD.createKemidRecord(); // need to insert into END_HLDG_TAX_LOT_REBAL_T TABLE because of constraints.... HoldingTaxLotRebalanceFixture.HOLDING_TAX_LOT_REBALANCE_RECORD .createHoldingTaxLotRebalanceRecord(); HoldingTaxLot holdingTaxLot = HoldingTaxLotFixture.HOLDING_TAX_LOT_RECORD.createHoldingTaxLotRecord(); SecurityReportingGroup reportingGroup = SecurityReportingGroupFixture.REPORTING_GROUP.createSecurityReportingGroup(); EndowmentTransactionCode endowmentTransactionCode = EndowmentTransactionCodeFixture.INCOME_TRANSACTION_CODE.createEndowmentTransactionCode(); ClassCode classCode = ClassCodeFixture.ALTERNATIVE_INVESTMENT_CLASS_CODE.createClassCodeRecord(); Security security = SecurityFixture.ALTERNATIVE_INVEST_ACTIVE_SECURITY.createSecurityRecord(); security.setCommitmentAmount(BigDecimal.ZERO); document.getTargetTransactionSecurity().setSecurityID(security.getId()); document.getTargetTransactionSecurity().setSecurity(security); EndowmentTransactionLine endowmentTargetTransactionLine = EndowmentTransactionLineFixture.ENDOWMENT_TRANSACTIONAL_LINE_POSITIVE_AMT .createEndowmentTransactionLine(false); document.addTargetTransactionLine( (EndowmentTargetTransactionLine) endowmentTargetTransactionLine); assetIncreaseDocumentTaxLotsService.updateTransactionLineTaxLots( document, endowmentTargetTransactionLine); assertFalse( rule.validateTaxLotsCostAndTransactionAmountLessOrEqualToSecurityCommitment(document)); }
/** * Validates that validateTransactionAmountGreaterThanZero returns true when transaction amount is * greater than zero. */ public void testTransactionsLineAmountPositive_True() { EndowmentTransactionLine endowmentTargetTransactionLine = EndowmentTransactionLineFixture.ENDOWMENT_TRANSACTIONAL_LINE_POSITIVE_AMT .createEndowmentTransactionLine(false); assertTrue( rule.validateTransactionAmountGreaterThanZero( endowmentTargetTransactionLine, rule.getErrorPrefix(endowmentTargetTransactionLine, -1))); }
/** * Validates that validateEndowmentTransactionTypeCode returns false when the etran code type is * not income or expense. */ public void testEtranCodeIncomeOrExpense_False() { EndowmentTransactionLine endowmentTargetTransactionLine = EndowmentTransactionLineFixture.ENDOWMENT_TRANSACTIONAL_LINE_POSITIVE_AMT .createEndowmentTransactionLine(false); EndowmentTransactionCode endowmentTransactionCode = EndowmentTransactionCodeFixture.ASSET_TRANSACTION_CODE.createEndowmentTransactionCode(); endowmentTargetTransactionLine.setEtranCode(endowmentTransactionCode.getCode()); endowmentTargetTransactionLine.setEtranCodeObj(endowmentTransactionCode); assertFalse( rule.validateEndowmentTransactionTypeCode( document, endowmentTargetTransactionLine, rule.getErrorPrefix(endowmentTargetTransactionLine, -1))); }