anchor.diff:  
   end_per_group(Group, Config) -> unittest_helper:end_per_group(Group, Config).
   
  -init_per_testcase(TestCase, Config) ->
  -    case TestCase of
  -        % note: the craceful leave tests only work if transactions are
  -        % transferred to new TMs if the TM dies or the bench_server restarts
  -        % the transactions
  -        add_3_rm_1_load ->
  -            {skip, "graceful leave not fully supported yet"};
  -        add_3_rm_2_load ->
  -            {skip, "graceful leave not fully supported yet"};
  -        add_3_rm_3_load ->
  -            {skip, "graceful leave not fully supported yet"};
  -        _ ->
  -            % stop ring from previous test case (it may have run into a timeout)
  -            unittest_helper:stop_ring(),
  -            Config
  -    end.
  +init_per_testcase(_TestCase, Config) ->
  +    % stop ring from previous test case (it may have run into a timeout)
  +    unittest_helper:stop_ring(),
  +    Config.
   
   end_per_testcase(_TestCase, Config) ->
       unittest_helper:stop_ring(),
  
positive.code:     unittest_helper:create_ct_all([join_lookup]) ++
          unittest_helper:create_ct_all([add_3_rm_3_data]) ++
          unittest_helper:create_ct_all([add_3_rm_3_data_inc]) ++
          test_cases().
  
  groups() ->
  %%     unittest_helper:create_ct_groups(test_cases(), [{add_9_rm_5, [sequence, {repeat_until_any_fail, forever}]}]).
      unittest_helper:create_ct_groups([join_lookup], [{join_lookup, [sequence, {repeat_until_any_fail, 20}]}]) ++
      unittest_helper:create_ct_groups([add_3_rm_3_data], [{add_3_rm_3_data, [sequence, {repeat_until_any_fail, 20}]}]) ++
      unittest_helper:create_ct_groups([add_3_rm_3_data_inc], [{add_3_rm_3_data_inc, [sequence, {repeat_until_any_fail, 20}]}]).
  
  suite() -> [ {timetrap, {seconds, 30}} ].
  
  
negative.code:      tester_join_at,
       add_9, rm_5, add_9_rm_5,
       add_2x3_load,
       tester_join_at_timeouts
      ].
  
  