Advertisement
Guest User

Untitled

a guest
Dec 17th, 2018
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
ABAP 1.75 KB | None | 0 0
  1. METHOD configuration_variants.
  2.  
  3.     DATA:  lo_currency_converter_double TYPE REF TO      if_td_currency_converter,
  4.           lo_expense_manager          TYPE REF TO      cl_td_expense_manager,
  5.           lv_total_expense            TYPE              i.
  6.  
  7. *create test double object
  8.     lo_currency_converter_double ?= cl_abap_testdouble=>create( ‘if_td_currency_converter’ ).
  9.  
  10. *eg1: configuration for exporting parameters
  11.     cl_abap_testdouble=>configure_call( lo_currency_converter_double )->set_parameter( name = ‘base_currency’  value = ‘EUR’
  12.                                                                     )->set_parameter( name = ‘base_curr_amount’  value = 80 ).
  13.  
  14.     lo_currency_converter_double->convert_to_base_currency(
  15.       EXPORTING
  16.         amount          = 100
  17.         source_currency = ‘USD’
  18.     ).
  19.  
  20. *eg2: configuration ignoring one parameter. 55 gets returned if source currency = ‘USD’ , target currency = ‘EUR’ and any value  for amount.
  21.     cl_abap_testdouble=>configure_call( lo_currency_converter_double )->returning( 55 )->ignore_parameter( ‘amount’ ).
  22.     lo_currency_converter_double->convert(
  23.       EXPORTING
  24.         amount          = 0dummy value because amount is a non optional parameter
  25.         source_currency = ‘USD’
  26.         target_currency = ‘EUR’
  27.     ).
  28.  
  29. *eg3: configuration ignoring all parameters. 55 gets returned for any input
  30.     cl_abap_testdouble=>configure_call( lo_currency_converter_double )->returning( 55 )->ignore_all_parameters( ).
  31.     lo_currency_converter_double->convert(
  32.       EXPORTING
  33.         amount          = 0dummy value
  34.         source_currency = ‘USD’ “dummy value
  35.         target_currency = ‘EUR’ “dummy value
  36.     ).
  37.  
  38.   ENDMETHOD.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement