anchor.diff:       {"POST of invalid JSON is a 400" ++ Label,
         fun() ->
                 InvalidJson = <<"{not:json}">>,
  -              {ok, Code, _H, _Body} = chef_req:request(post, Path, InvalidJson, ReqConfig),
  +              {ok, Code, _H, Body} = chef_req:request(post, Path, InvalidJson, ReqConfig),
  +              ?assertEqual(<<"{\"error\":[\"invalid JSON\"]}">>, Body),
                 ?assertEqual("400", Code)
         end},
        {"POST of a bad name is a 500" ++ Label,
  
positive.code:     NewNode = ej:delete({Field}, Node),
      NewNodeJson = ejson:encode(NewNode),
      {ok, PutCode, _H2, _Body2} = chef_req:request(put, NodePath, NewNodeJson, ReqConfig),
  %    ?debugVal({Field, PutCode, ResponseCode}),
      ?assertEqual(ResponseCode, PutCode),
      {ok, _GetCode, _H1, Body2} = chef_req:request(get, NodePath, ReqConfig),
      Node2 =  ejson:decode(Body2),
  %    ?debugVal({Field, ej:get({Field}, Node), Expected}),
      ?assertEqual(Expected, ej:get({Field}, Node2)).
      
      
  
negative.code:                        %% modify and PUT it back
                         NewNode = ej:set({<<"name">>}, TheNode, <<" bad%#@Q#*name ">>),
                         NewNodeJson = ejson:encode(NewNode),
                         {ok, PutCode, _H2, Body2} = chef_req:request(put, NodePath,
                                                                      NewNodeJson, ReqConfig),
                         ?assertEqual(<<"{\"error\":[\"Field 'name' invalid\"]}">>, Body2),
                         ?assertEqual("400", PutCode)
                 end},
  	      {generator, 
  