public void CashoutOnlyResponseInit_OnValidResponse_ReturnObjects() { // arrange const string jsonStr = @"{""message"": {""data"":{""account_type"":""SAVINGS"",""auth_code"":""265035"",""bank_cash_amount"":1200,""bank_date"":""17062018"",""bank_settlement_date"":""18062018"",""bank_time"":""170950"",""card_entry"":""EMV_INSERT"",""cash_amount"":1200,""currency"":""AUD"",""customer_receipt"":""EFTPOS FROM WESTPAC\\r\\nMerchant4\\r\\n213 Miller Street\\r\\nSydney 2060\\r\\nAustralia\\r\\n\\r\\nTIME 17JUN18 17:09\\r\\nMID 22341845\\r\\nTSP 100312348845\\r\\nRRN 180617000151\\r\\nDebit(I) SAV\\r\\nCARD............2797\\r\\nAUTH 265035\\r\\n\\r\\nCASH AUD10.00\\r\\nSURCHARGE AUD2.00\\r\\nTOTAL AUD12.00\\r\\n\\r\\n (000) APPROVED\\r\\n\\r\\n *CUSTOMER COPY*\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n"",""customer_receipt_printed"":true,""expiry_date"":""0722"",""host_response_code"":""000"",""host_response_text"":""APPROVED"",""informative_text"":"" "",""masked_pan"":""............2797"",""merchant_acquirer"":""EFTPOS FROM WESTPAC"",""merchant_addr"":""213 Miller Street"",""merchant_city"":""Sydney"",""merchant_country"":""Australia"",""merchant_id"":""22341845"",""merchant_name"":""Merchant4"",""merchant_postcode"":""2060"",""merchant_receipt"":""EFTPOS FROM WESTPAC\\r\\nMerchant4\\r\\n213 Miller Street\\r\\nSydney 2060\\r\\nAustralia\\r\\n\\r\\nTIME 17JUN18 17:09\\r\\nMID 22341845\\r\\nTSP 100312348845\\r\\nRRN 180617000151\\r\\nDebit(I) SAV\\r\\nCARD............2797\\r\\nAUTH 265035\\r\\n\\r\\nCASH AUD10.00\\r\\nSURCHARGE AUD2.00\\r\\nTOTAL AUD12.00\\r\\n\\r\\n (000) APPROVED\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n"",""merchant_receipt_printed"":true,""online_indicator"":""Y"",""pos_ref_id"":""launder-18-06-2018-03-09-17"",""rrn"":""180617000151"",""scheme_name"":""Debit"",""stan"":""000151"",""success"":true,""surcharge_amount"":200,""terminal_id"":""100312348845"",""terminal_ref_id"":""12348845_18062018031010"",""transaction_type"":""CASH""},""datetime"":""2018-06-18T03:10:10.580"",""event"":""cash_response"",""id"":""cshout4""}}"; // act var msg = Message.FromJson(jsonStr, null); var comWrapper = new ComWrapper(); var response = comWrapper.CashoutOnlyResponseInit(msg); // assert Assert.True(response.Success); Assert.Equal("cshout4", response.RequestId); Assert.Equal("launder-18-06-2018-03-09-17", response.PosRefId); Assert.Equal("Debit", response.SchemeName); Assert.Equal("180617000151", response.GetRRN()); Assert.Equal(1200, response.GetCashoutAmount()); Assert.Equal(0, response.GetBankNonCashAmount()); Assert.Equal(1200, response.GetBankCashAmount()); Assert.Equal(200, response.GetSurchargeAmount()); Assert.NotNull(response.GetCustomerReceipt()); Assert.Equal("APPROVED", response.GetResponseText()); Assert.Equal("000", response.GetResponseCode()); Assert.Equal("12348845_18062018031010", response.GetTerminalReferenceId()); Assert.Equal("SAVINGS", response.GetAccountType()); Assert.Equal("17062018", response.GetBankDate()); Assert.NotNull(response.GetMerchantReceipt()); Assert.Equal("170950", response.GetBankTime()); Assert.Equal("............2797", response.GetMaskedPan()); Assert.Equal("100312348845", response.GetTerminalId()); Assert.Equal("265035", response.GetAuthCode()); Assert.True(response.WasCustomerReceiptPrinted()); Assert.True(response.WasMerchantReceiptPrinted()); Assert.Equal(response.GetResponseValue("pos_ref_id"), response.PosRefId); }