anchor.diff:  do_start_device( Configuration ) ->
   	Driver = proplists:get_value(driver, Configuration),
   	Parameters = proplists:get_value(parameters, Configuration),
  +	Events = proplists:get_value(events, Configuration, []),
   	case lurch_driver_port:start_driver( Driver, Parameters ) of
   		{ ok, Port } ->
   			DeviceId = make_ref( ),
  -			Device = #device{ driver = Driver
  +			Device = #device{ id = DeviceId
  +							, driver = Driver
   							, parameters = Parameters
  -							, id = DeviceId
  +							, events = Events
   							, port = Port },
   			{ ok, Device };
   		{ error, _ } = Response ->
  
positive.code: 	meck:new( lurch_driver_port, [ ] ),
  	meck:expect( lurch_driver_port, start_driver,
  				 fun( _Driver, _Parameters ) -> { error, enoent } end ),
  	StartResult = start_device( Pid, test_driver_config( ) ),
  	Tests = [ ?_assertMatch( { error, _Error }, StartResult ) ],
  	test_stop( Pid ),
  	Tests.
  
negative.code: -include_lib( "eunit/include/eunit.hrl" ).
  
  -define( setup( F ), { setup, fun test_start/0, fun test_stop/1, F } ).
  
  -define( DRIVER_NAME, <<"dummy">> ).
  
  -define( EVENT_NAME, <<"event_one">> ).
  
  % Test descriptions
  server_test_( ) ->
  