anchor.diff:  driver_get_event_test_() ->
       { ok, Port } = start_test_driver( "echo.sh" ),
       Res = get_event( Port, "SomeEvent" ),
  -    ExpData = [ "EVENT", "SomeEvent" ],
  -    [ { "get event", ?_assertEqual( { ok, ExpData }, Res ) }
  +    ExpData = { ok, [ "EVENT", "SomeEvent" ] },
  +    [ { "get event", ?_assertEqual( ExpData, Res ) }
       ].
   
   
  
positive.code: server_scenario_test_() ->
      { ok, Pid } = start_test_server( "echo.sh" ),
      ProcAlive = is_process_alive( Pid ),
  
      Res1 = request_event( Pid, "SomeEvent" ),
      { ok, From } = request_event_async( Pid, "SomeEvent" ),
      Res2 = receive
          { { event, E }, From } -> E
      after
          ?DRIVER_TIMEOUT -> timeout
      end,
  
      Res3 = stop( Pid ),
      ProcAlive2 = is_process_alive( Pid ),
  
      ExpEventRes = { ok, [ "EVENT", "SomeEvent" ] },
  
      [ { "server started", ?_assert( ProcAlive ) }
      , { "receive sync event",
          ?_assertEqual( ExpEventRes, Res1 ) }
      , { "receive async event",
          ?_assertEqual( ExpEventRes, Res2 ) }
      , { "server stopped", ?_assertNot( ProcAlive2 ) }
      ].
  
  
  % Helper functions
  test_driver_path( Name ) ->
  
negative.code: %% API functions
  %% ===================================================================
  
  -spec start( binary(), [ binary() ] ) -> { ok, pid() } | { error, term() }.
  start( Driver, Parameters ) ->
      { _, Tag } = From = from(),
      Pid = spawn( fun() -> enter_loop( Driver, Parameters, From ) end ),
      wait_start( { Pid, Tag } ).
  
  -spec start_link( binary(), [ binary() ] ) -> { ok, pid() } | { error, term() }.
  start_link( Driver, Parameters ) ->
      { _, Tag } = From = from(),
      Pid = spawn_link( fun() -> enter_loop( Driver, Parameters, From ) end ),
  