anchor.diff:                   vmq_plugin:only(sample_hook, [1, 2, 3])).
   
   
  +call_hooks() ->
  +    %% ONLY HOOK Tests
  +    ?assertEqual([], vmq_plugin:only(sample_hook, [])),
  +    ?assertEqual([1], vmq_plugin:only(sample_hook, [1])),
  +    ?assertEqual([1, 2], vmq_plugin:only(sample_hook, [1, 2])),
  +    ?assertEqual([1, 2, 3], vmq_plugin:only(sample_hook, [1, 2, 3])),
  +
  +    %% call hook with wrong arity
  +    ?assertEqual({error, no_matching_hook_found},
  +                 vmq_plugin:only(sample_hook, [1, 2, 3, 4])),
  +    %% call unknown hook
  +    ?assertEqual({error, no_matching_hook_found},
  +                 vmq_plugin:only(unknown_hook, [])),
  +
  +    %% ALL HOOK Tests
  +    ?assertEqual([[]], vmq_plugin:all(sample_hook, [])),
  +
  +    %% call hook with wrong arity
  +    ?assertEqual({error, no_matching_hook_found},
  +                 vmq_plugin:all(sample_hook, [1, 2, 3, 4])),
  +    %% call unknown hook
  +    ?assertEqual({error, no_matching_hook_found},
  +                 vmq_plugin:all(unknown_hook, [])),
  +
  +    ?assertEqual([10,10,10], vmq_plugin:all(sample_all_hook, [10])),
  +
  +
  +    %% ALL_TILL_OK Hook Tests
  +    ?assertEqual(ok, vmq_plugin:all_till_ok(sample_all_till_ok_hook, [10])).
  +
   
   
   -endif.
  
positive.code: %%%===================================================================
  %%% Internal functions
  %%%===================================================================
  init_from_config_file(#state{config_file=ConfigFile} = State) ->
      case file:consult(ConfigFile) of
          {ok, Terms} ->
  
negative.code:     application:set_env(vmq_plugin, plugin_dir, ".."),
      application:start(vmq_plugin),
      %% no plugin is yet registered
      call_no_hooks(),
  
      %% ENABLE PLUGIN
      ?assertEqual(ok, vmq_plugin_mgr:enable_plugin(vmq_plugin, "..")),
      ?assert(lists:keyfind(vmq_plugin, 1, application:which_applications()) /= false),
  
      call_hooks(),
  
      io:format(user, "info all ~p~n", [vmq_plugin:info(all)]),
      io:format(user, "info only ~p~n", [vmq_plugin:info(only)]),
  