anchor.diff:           "Actual response:~n~p~n",
            [ReqFile, Request, ExpResponse, ActualResponse]).
   
  -read_request(RequestFile) ->
  +read_request(RequestFile, DefaultHost) ->
     Data    = parse_file(RequestFile),
     Headers = lk("headers", Data),
     RawBody = read_body(RequestFile),
     #request{ url      = lk("url", Data)
  -          , host     = lk("host", Data, default_host())
  +          , host     = lk("host", Data, DefaultHost)
             , port     = lk("port", Data)
             , ssl      = lk("ssl", Data)
             , path     = lk("path", Data)
  
positive.code:                       | {error, any()}].
  %% @doc Run test scenario. Argument is the full path to the testcase dir.
  %% @end
  run(TestcaseDir) ->
    spawn_link(?MODULE, run_test, [self(), TestcaseDir]),
    receive {done, Result}    -> Result
    after   ?TESTCASE_TIMEOUT -> {error, testcase_timeout}
    end.
  
  %%%_* Internal export --------------------------------------------------
  run_test(Caller, TestcaseDir) ->
    Result = run_scenario(get_scenario(TestcaseDir)),
    Caller ! {done, Result}.
  
  %%%_* Internal =========================================================
  
negative.code: to_utf8(X) when is_list(X) -> unicode:characters_to_binary(X, utf8);
  to_utf8(X)                 -> X.
  
  %%%_* Emacs ============================================================
  %%% Local Variables:
  %%% allout-layout: t
  