package creditcall import ( "gitea.futuresens.co.uk/futuresens/hardlink/paymentstatus" "testing" ) func TestProgressStatus(t *testing.T) { for _, test := range []struct{ source, value, want string }{ {"UPDATE", "CardRequested", paymentstatus.PresentCard}, {"UPDATE", "ProvideCard", paymentstatus.PresentCard}, {"UPDATE", "InsertOrSwipeCard", paymentstatus.PresentCard}, {"UPDATE", "InsertOrContactless", paymentstatus.PresentCard}, {"UPDATE", "InsertCard", paymentstatus.InsertCard}, {"UPDATE", "SwipeCard", paymentstatus.SwipeCard}, {"UPDATE", "CardRemovalRequested", paymentstatus.RemoveCard}, {"UPDATE", "CardRemovalEnforced", paymentstatus.RemoveCard}, {"UPDATE", "PinEntryStarted", paymentstatus.EnterPIN}, {"UPDATE", "PinEntryPrompt", paymentstatus.EnterPIN}, {"UPDATE", "PinEntryInProgress", paymentstatus.EnterPIN}, {"UPDATE", "PinEntryFailed", paymentstatus.EnterPINAgain}, {"UPDATE", "PinEntrySuccessful", paymentstatus.Processing}, {"UPDATE", "TransactionStarted", paymentstatus.Processing}, {"UPDATE", "OnlineAuthRequested", paymentstatus.Processing}, {"UPDATE", "OnlineAuthorizeRequest", paymentstatus.Processing}, {"UPDATE", "OnlineAuthCompleted", paymentstatus.PleaseWait}, {"CARD_STATUS", "Inserted", paymentstatus.DoNotRemoveCard}, {"CARD_STATUS", "Tapped", paymentstatus.Processing}, {"CARD_STATUS", "Swiped", paymentstatus.Processing}, {"CARD_STATUS", "Removed", ""}, {"SIGNATURE", "Requested", paymentstatus.SignatureRequired}, {"PAUSE", "Paused", paymentstatus.PleaseWait}, {"UPDATE", "Approved", ""}, {"UPDATE", "Declined", ""}, {"UPDATE", "unknown", ""}, {"PAN", "CardRequested", ""}, } { if got := ProgressStatus(test.source, test.value); got != test.want { t.Errorf("ProgressStatus(%q, %q) = %q, want %q", test.source, test.value, got, test.want) } } } func TestMaskedCardNumber(t *testing.T) { for _, test := range []struct{ value, want string }{ {"123456******1234", "123456******1234"}, {"************1234", "************1234"}, {"1234567890123456", ""}, {"1234567890123456****", ""}, {"3132333435363738", ""}, {"%B1234567890123456^NAME", ""}, {"", ""}, } { if got := MaskedCardNumber(test.value); got != test.want { t.Errorf("MaskedCardNumber(%q) = %q, want %q", test.value, got, test.want) } } }