anchor.diff:      World = [ cookbook(<<"foo">>, <<"1.2.3">>, { <<"bar">>, <<"2.0.0">>, gt}),
                cookbook(<<"bar">>, <<"2.0.0">>, { <<"foo">>, <<"3.0.0">>, gt})],
       Ret = chef_depsolver:solve_dependencies(World, [], [<<"foo">>]),
  -    %% TODO: Should this have bar in bad ??
  -    Detail = {[], [], [<<"foo">>]},
  -    ?assertEqual({error, {unable_to_solve, <<"foo">>, Detail}}, Ret).
  +    Detail = [{[{[<<"foo">>],
  +                 [{<<"foo">>, {1,2,3}}]}],
  +               [{{<<"foo">>, {1,2,3}}, [{<<"bar">>, {2,0,0}, gt}]}]
  +              }],
  +    ?assertEqual({error, Detail}, Ret).
   
  
positive.code:     Constraints = [cookbook(<<"foo">>, <<"1.2.3">>, {<<"bar">>, <<"2.0.0">>, gt}) ],
      Ret = chef_depsolver:solve_dependencies(World, Constraints, [<<"foo">>]),
      %% TODO: Should this have bar in bad ??
      Detail = {[], [], [<<"foo">>]},
      ?assertEqual({error, {unable_to_solve, <<"foo">>, Detail}}, Ret).
  
  %%
  %% circular deps are bad
  
negative.code:     World = [ cookbook(<<"foo">>, <<"1.2.3">>)],
      Constraints = [ ],
      Ret = chef_depsolver:solve_dependencies(World, Constraints, [{<<"foo">>, <<"2.0.0">>}]),
      Detail = [{[{[{<<"foo">>, {2,0,0}}],
                   [{<<"foo">>, {2,0,0}}]}],
                 []
                }],
      ?assertEqual({error, Detail}, Ret).
  
  %% Some tests which mimic the pedant tests for the depsolver endpoint
  
  