From b85fccd47c3fba7d76a485d9ef779d53d21d231a Mon Sep 17 00:00:00 2001 From: Brooke E Kline Jr Date: Mon, 26 Nov 2018 16:48:54 -0500 Subject: [PATCH] Increase Test Code Coverage for batches Increase Test Code Coverage for batchCCD, batchCTX, batchENR, batchMTE --- batchCCD_test.go | 32 ++++++++++++++++++++++++++++++++ batchCTX_test.go | 32 ++++++++++++++++++++++++++++++++ batchENR_test.go | 32 ++++++++++++++++++++++++++++++++ batchMTE_test.go | 32 ++++++++++++++++++++++++++++++++ 4 files changed, 128 insertions(+) diff --git a/batchCCD_test.go b/batchCCD_test.go index 508259aff..bb2a07f1b 100644 --- a/batchCCD_test.go +++ b/batchCCD_test.go @@ -303,3 +303,35 @@ func BenchmarkBatchCCDReceivingCompanyField(b *testing.B) { testBatchCCDReceivingCompanyField(b) } } + +// TestBatchCCDValidTranCodeForServiceClassCode validates a transactionCode based on ServiceClassCode +func TestBatchCCDValidTranCodeForServiceClassCode(t *testing.T) { + mockBatch := mockBatchCCD() + mockBatch.GetHeader().ServiceClassCode = 220 + if err := mockBatch.Create(); err != nil { + if e, ok := err.(*BatchError); ok { + if e.FieldName != "TransactionCode" { + t.Errorf("%T: %s", err, err) + } + } else { + t.Errorf("%T: %s", err, err) + } + } +} + +// TestBatchCCDAddenda02 validates BatchCCD cannot have Addenda02 +func TestBatchCCDAddenda02(t *testing.T) { + mockBatch := mockBatchCCD() + mockBatch.Entries[0].AddendaRecordIndicator = 1 + mockBatch.GetEntries()[0].Addenda02 = mockAddenda02() + mockBatch.Create() + if err := mockBatch.Validate(); err != nil { + if e, ok := err.(*BatchError); ok { + if e.FieldName != "Addenda02" { + t.Errorf("%T: %s", err, err) + } + } else { + t.Errorf("%T: %s", err, err) + } + } +} diff --git a/batchCTX_test.go b/batchCTX_test.go index 6464d03b6..44ed413b6 100644 --- a/batchCTX_test.go +++ b/batchCTX_test.go @@ -585,3 +585,35 @@ func TestBatchCTXAddendum99(t *testing.T) { } } } + +// TestBatchCTXValidTranCodeForServiceClassCode validates a transactionCode based on ServiceClassCode +func TestBatchCTXValidTranCodeForServiceClassCode(t *testing.T) { + mockBatch := mockBatchCTX() + mockBatch.GetHeader().ServiceClassCode = 225 + if err := mockBatch.Create(); err != nil { + if e, ok := err.(*BatchError); ok { + if e.FieldName != "TransactionCode" { + t.Errorf("%T: %s", err, err) + } + } else { + t.Errorf("%T: %s", err, err) + } + } +} + +// TestBatchCTXAddenda02 validates BatchCTX cannot have Addenda02 +func TestBatchCTXAddenda02(t *testing.T) { + mockBatch := mockBatchCTX() + mockBatch.Entries[0].AddendaRecordIndicator = 1 + mockBatch.GetEntries()[0].Addenda02 = mockAddenda02() + mockBatch.Create() + if err := mockBatch.Validate(); err != nil { + if e, ok := err.(*BatchError); ok { + if e.FieldName != "Addenda02" { + t.Errorf("%T: %s", err, err) + } + } else { + t.Errorf("%T: %s", err, err) + } + } +} diff --git a/batchENR_test.go b/batchENR_test.go index c356692c0..e7b1bc8a4 100644 --- a/batchENR_test.go +++ b/batchENR_test.go @@ -320,3 +320,35 @@ func TestBatchENR__PaymentInformation(t *testing.T) { t.Errorf("EnrolleeClassificationCode: %d", v) } } + +// TestBatchENRValidTranCodeForServiceClassCode validates a transactionCode based on ServiceClassCode +func TestBatchENRValidTranCodeForServiceClassCode(t *testing.T) { + mockBatch := mockBatchENR() + mockBatch.GetHeader().ServiceClassCode = 225 + if err := mockBatch.Create(); err != nil { + if e, ok := err.(*BatchError); ok { + if e.FieldName != "TransactionCode" { + t.Errorf("%T: %s", err, err) + } + } else { + t.Errorf("%T: %s", err, err) + } + } +} + +// TestBatchENRAddenda02 validates BatchENR cannot have Addenda02 +func TestBatchENRAddenda02(t *testing.T) { + mockBatch := mockBatchENR() + mockBatch.Entries[0].AddendaRecordIndicator = 1 + mockBatch.GetEntries()[0].Addenda02 = mockAddenda02() + mockBatch.Create() + if err := mockBatch.Validate(); err != nil { + if e, ok := err.(*BatchError); ok { + if e.FieldName != "Addenda02" { + t.Errorf("%T: %s", err, err) + } + } else { + t.Errorf("%T: %s", err, err) + } + } +} diff --git a/batchMTE_test.go b/batchMTE_test.go index b33989232..56dfbaff8 100644 --- a/batchMTE_test.go +++ b/batchMTE_test.go @@ -318,3 +318,35 @@ func TestBatchMTEIdentificationNumber(t *testing.T) { } } } + +// TestBatchMTEValidTranCodeForServiceClassCode validates a transactionCode based on ServiceClassCode +func TestBatchMTEValidTranCodeForServiceClassCode(t *testing.T) { + mockBatch := mockBatchMTE() + mockBatch.GetHeader().ServiceClassCode = 220 + if err := mockBatch.Create(); err != nil { + if e, ok := err.(*BatchError); ok { + if e.FieldName != "TransactionCode" { + t.Errorf("%T: %s", err, err) + } + } else { + t.Errorf("%T: %s", err, err) + } + } +} + +// TestBatchMTEAddenda05 validates BatchMTE cannot have Addenda05 +func TestBatchMTEAddenda05(t *testing.T) { + mockBatch := mockBatchMTE() + mockBatch.Entries[0].AddendaRecordIndicator = 1 + mockBatch.GetEntries()[0].AddAddenda05(mockAddenda05()) + mockBatch.Create() + if err := mockBatch.Validate(); err != nil { + if e, ok := err.(*BatchError); ok { + if e.FieldName != "Addenda05" { + t.Errorf("%T: %s", err, err) + } + } else { + t.Errorf("%T: %s", err, err) + } + } +}