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: 		       %% CREATE a node with no name
  		       BadNode = ej:delete({<<"name">>}, ANode),
  		       BadNodeJson = ejson:encode(BadNode),
  		       {ok, PostCode, _H1, _B1} =
  			   chef_req:request(post, Path, BadNodeJson, ReqConfig),
  		       ?assertEqual("400", PostCode)
                 end},
  	      {"Create a node with an bad name" ++ Label,
                 fun() ->
  		       %% CREATE a node with no name
  		       BadNode = ej:set({<<"name">>}, ANode, <<" bad%#@Q#*name ">>),
  		       BadNodeJson = ejson:encode(BadNode),
  		       {ok, PostCode, _H1, _B1} =
  			   chef_req:request(post, Path, BadNodeJson, ReqConfig),
  		       ?assertEqual("400", PostCode)
                 end},
  	      {generator, 
  
negative.code:       end}
      ].
  
  webui_key_tests(#req_config{},
  		#req_config{name = WebUIName}=WebUIConfig) ->
      Label = " (" ++ WebUIName ++ ")",
      {NodeName, NodeJson} = sample_node(),
  