@@ -839,8 +839,53 @@ public void test_BatchCloseIssue_10213_RTB_40() throws ApiException {
839839 assertNotNull (newSummary );
840840
841841 }
842+ }
843+
844+ @ Test
845+ public void test_BatchCloseIssue_10358_MC16_70_79 () throws ApiException {
846+
847+ Transaction t = creditSale (10.11 );
848+ Transaction t1 = creditSale (20.22 );
849+
850+ NtsRequestMessageHeader ntsRequestMessageHeader = new NtsRequestMessageHeader ();
851+ ntsRequestMessageHeader .setTerminalDestinationTag ("478" );
852+ ntsRequestMessageHeader .setPinIndicator (PinIndicator .WithPin );
853+ ntsRequestMessageHeader .setNtsMessageCode (NtsMessageCode .RequestToBalacnce );
854+ ntsRequestMessageHeader .setPinIndicator (PinIndicator .NotPromptedPin );
855+
856+ priorMessageInformation = new PriorMessageInformation ();
857+ priorMessageInformation .setResponseTime ("999" );
858+ priorMessageInformation .setConnectTime ("999" );
859+ priorMessageInformation .setMessageReasonCode ("01" );
860+ ntsRequestMessageHeader .setPriorMessageInformation (priorMessageInformation );
861+
862+ NtsRequestToBalanceData data = new NtsRequestToBalanceData (batchProvider .getSequenceNumber (), new BigDecimal (1 ), "Version" );
863+ Transaction batchClose = BatchService .closeBatch (BatchCloseType .EndOfShift ,
864+ ntsRequestMessageHeader , batchProvider .getBatchNumber (), 2
865+ , new BigDecimal (30.33 ), BigDecimal .ONE , data )
866+ .execute ();
867+ assertNotNull (batchClose );
868+
869+ Transaction retransmitBatchCloseResponse = NetworkService .resubmitBatchClose (batchClose .getTransactionToken ())
870+ .execute ();
871+ assertNotNull (retransmitBatchCloseResponse );
842872
873+ NtsHostResponseCode responseCode = retransmitBatchCloseResponse .getNtsResponse ().getNtsResponseMessageHeader ().getNtsNetworkMessageHeader ().getResponseCode ();
874+ if (responseCode .equals (NtsHostResponseCode .FormatError )) {
875+ for (int i = 0 ; i < 2 ; i ++) {
876+ if (i == 0 ) {
877+ Transaction transaction = NetworkService .resubmitBatchClose (retransmitBatchCloseResponse .getTransactionToken ())
878+ .execute ();
879+ } else {
880+ Transaction transaction = NetworkService .resubmitBatchClose (retransmitBatchCloseResponse .getTransactionToken ())
881+ .withHostResponseCode ("79" )
882+ .execute ();
883+ BatchSummary newSummary = transaction .getBatchSummary ();
884+ assertNotNull (newSummary );
885+ }
843886
887+ }
888+ }
844889 }
845890 @ Test
846891 public void test_WexFleetEMV_RTB_01_Issue_10356 () throws ApiException {
0 commit comments