Research Article

Behaviour Preservation across Code Versions in Erlang

Listing 14

SecEr reports discrepancies after defining multiple POIs.
$  ./secer -pois "test_etorrent:rel()" -funs "test_etorrent:funs()" -to 15
Function: query_ping_0_test/0
----------------------------
Generated test cases: 1
Mismatching test cases: 1 (100.0%)
   POIs comparison:
     + ’etorrent_dht_net_old’, 3, call, 1,
       ’etorrent_dht_net_new’, 29, call, 1
           Unexpected trace value => 1 Errors
           Example call: query_ping_0_test()
------ Detected Error ------
Call: query_ping_0_test()
Error Type: Unexpected trace value
POI: (’etorrent_dht_net_old’, 3, call, 1) trace:
     [[<<97>>,[<<105,100>>,<<97,98,99,100,101,102,103,104,105,106,48,49,50,51,52,53,54,
55,56,57>>],
      <<113>>,<<112,105,110,103>>,<<116>>,<<97,97>>,<<121>>,<<113>>]]
POI: (’etorrent_dht_net_new’, 29, call, 1) trace:
     [ok,[<<97>>,[<<105,100>>,<<97,98,99,100,101,102,103,104,105,106,48,49,50,51,52,53,
54,55,56,57>>],
         <<113>>,<<112,105,110,103>>,<<116>>,<<97,97>>,<<121>>,<<113>>]]
----------------------------