When trying to make a fee payment via sip_cli_emulator.pl, if a payment amount is not passed, the error reports "fee_amount is required for fee_paid", the parameter is actually "fee-amount", not "fee_amount"
Created attachment 96374 [details] [review] Bug 23883: SIP - Fix typo in parameter name The options of the script have hypens whereas the hash keys have underscore. In my understanding the problem only occurs on display purpose. Test plan: Try a sip command like % perl misc/sip_cli_emulator.pl -a localhost -su term1 -sp term1 -l CPL -m fee_paid Without this patch you will see: fee_amount is required for fee_paid With this patch the correct option is listed: fee-amount is required for fee_paid
Created attachment 96382 [details] [review] Bug 23883: SIP - Fix typo in parameter name The options of the script have hypens whereas the hash keys have underscore. In my understanding the problem only occurs on display purpose. Test plan: Try a sip command like % perl misc/sip_cli_emulator.pl -a localhost -su term1 -sp term1 -l CPL -m fee_paid Without this patch you will see: fee_amount is required for fee_paid With this patch the correct option is listed: fee-amount is required for fee_paid Signed-off-by: Andrew Isherwood <andrew.isherwood@ptfs-europe.com>
Well, this same issue happens if you don't specify the --patron parameter: > patron_identifier is required for fee_paid Here if instead of --patron you try --patron-identifier (patron_identifier with hyphen instead) it doesn't work. So the proposed fix doesn't really solve this problem but only the specific case of --fee-amount parameter.
Maybe that should be moved one line above, but I am not sure how to test that correctly actually. diff --git a/misc/sip_cli_emulator.pl b/misc/sip_cli_emulator.pl index 1b987279b5..f28c067674 100755 --- a/misc/sip_cli_emulator.pl +++ b/misc/sip_cli_emulator.pl @@ -319,8 +319,8 @@ sub build_command_message { foreach my $key ( keys %$parameters ) { unless ( $parameters->{$key} ) { + $key =~ s|_|-|g; # options of this script have hyphens unless ( $optional{$key} ) { - $key =~ s|_|-|g; # options of this script have hyphens say "$key is required for $message"; return; }