THRIFT-211. erlang: Allow clients to be created without connecting

Add a client option to prevent the initial connect (which causes
the protocol factory to be ignored).  The main use case for this
is testing the proper handling of clients that cannot connect.
Update the tether test to use this feature instead of a raw
gen_server:start call.

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@781635 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/test/erl/src/test_tether.erl b/test/erl/src/test_tether.erl
index 07d1ee9..35794e6 100644
--- a/test/erl/src/test_tether.erl
+++ b/test/erl/src/test_tether.erl
@@ -62,6 +62,9 @@
             io:format("FAIL.  Expected ~p more clients.~n", [N])
     end.
 
+make_thrift_client(Opts) ->
+     thrift_client:start(fun()->ok end, thriftTest_thrift, Opts).
+
 make_protocol_factory(Port) ->
     {ok, TransportFactory} =
         thrift_socket_transport:new_transport_factory(
@@ -73,9 +76,9 @@
 
 
 test_start() ->
-    {ok, Client1} = gen_server:start(thrift_client, [thriftTest_thrift], []),
+    {ok, Client1} = make_thrift_client([{connect, false}]),
     tester ! {client, unlinked, Client1},
-    {ok, Client2} = gen_server:start(thrift_client, [thriftTest_thrift], []),
+    {ok, Client2} = make_thrift_client([{connect, false}]),
     io:format("PASS.  Unlinked clients created.~n"),
     try
         gen_server:call(Client2, {connect, make_protocol_factory(2)}),
@@ -93,9 +96,9 @@
     exit(die).
 
 test_linked() ->
-    {ok, Client1} = gen_server:start_link(thrift_client, [thriftTest_thrift], []),
+    {ok, Client1} = make_thrift_client([{connect, false}, {monitor, link}]),
     tester ! {client, linked, Client1},
-    {ok, Client2} = gen_server:start_link(thrift_client, [thriftTest_thrift], []),
+    {ok, Client2} = make_thrift_client([{connect, false}, {monitor, link}]),
     io:format("PASS.  Linked clients created.~n"),
     try
         gen_server:call(Client2, {connect, make_protocol_factory(2)}),