コード例 #1
0
ファイル: messenger_test.c プロジェクト: aigamo/trema
static void
test_send_then_message_requested_and_replied_callback_is_called() {
  init_messenger( "/tmp" );

  const char service_name[] = "Say HELLO";

  expect_value( callback_req_hello, tag, 43556 );
  expect_string( callback_req_hello, data, "HELLO" );
  expect_value( callback_req_hello, len, 6 );
  add_message_requested_callback( service_name, callback_req_hello );

  expect_value( callback_rep_hello_end, tag, 65534 );
  expect_string( callback_rep_hello_end, data, "OLLEH" );
  expect_value( callback_rep_hello_end, len, 6 );
  expect_value( callback_rep_hello_end, user_data, NULL );
  add_message_replied_callback( service_name, callback_rep_hello_end );

  send_request_message( service_name, service_name,  43556, "HELLO", strlen( "HELLO" ) + 1, NULL );

  start_messenger();
  start_event_handler();

  delete_message_replied_callback( service_name, callback_rep_hello_end );
  delete_message_requested_callback( service_name, callback_req_hello );
  delete_send_queue( lookup_hash_entry( send_queues, service_name ) );

  finalize_messenger();
}
コード例 #2
0
ファイル: chibach.c プロジェクト: aigamo/trema
static void
start_chibach_up() {
  debug( "Starting chibach ... (CHIBACH_HOME = %s)", get_chibach_home() );

  maybe_daemonize();
  write_pid( get_chibach_pid(), get_chibach_name() );
  chibach_started = true;

  start_messenger();
}
コード例 #3
0
ファイル: messenger_test.c プロジェクト: n-tada/trema
static void
test_send_then_message_received_callback_is_called() {
  init_messenger( "/tmp" );

  will_return_count( mock_clock_gettime, 0, -1 );

  const char service_name[] = "Say HELLO";

  expect_value( callback_hello, tag, 43556 );
  expect_string( callback_hello, data, "HELLO" );
  expect_value( callback_hello, len, 6 );

  add_message_received_callback( service_name, callback_hello );
  send_message( service_name, 43556, "HELLO", strlen( "HELLO" ) + 1 );
  start_messenger();

  delete_message_received_callback( service_name, callback_hello );
  delete_send_queue( lookup_hash_entry( send_queues, service_name ) );

  finalize_messenger();
}