| David Reiss | 6d47759 | 2008-06-11 01:12:09 +0000 | [diff] [blame] | 1 | -module(test_disklog). | 
|  | 2 |  | 
|  | 3 | -compile(export_all). | 
|  | 4 |  | 
|  | 5 | t() -> | 
|  | 6 | {ok, TransportFactory} = | 
|  | 7 | thrift_disk_log_transport:new_transport_factory( | 
|  | 8 | test_disklog, | 
|  | 9 | [{file, "/tmp/test_log"}, | 
|  | 10 | {size, {1024*1024, 10}}]), | 
|  | 11 | {ok, ProtocolFactory} = thrift_binary_protocol:new_protocol_factory( | 
|  | 12 | TransportFactory, []), | 
|  | 13 | {ok, Client} = thrift_client:start_link(ProtocolFactory, thriftTest_thrift), | 
|  | 14 |  | 
|  | 15 | io:format("Client started~n"), | 
| David Reiss | 65cf720 | 2008-06-11 01:12:20 +0000 | [diff] [blame] | 16 |  | 
| David Reiss | 6d47759 | 2008-06-11 01:12:09 +0000 | [diff] [blame] | 17 | % We have to make async calls into this client only since otherwise it will try | 
|  | 18 | % to read from the disklog and go boom. | 
|  | 19 | {ok, ok} = thrift_client:call(Client, testAsync, [16#deadbeef]), | 
|  | 20 | io:format("Call written~n"), | 
|  | 21 |  | 
| David Reiss | 65cf720 | 2008-06-11 01:12:20 +0000 | [diff] [blame] | 22 | % Use the send_call method to write a non-async call into the log | 
|  | 23 | ok = thrift_client:send_call(Client, testString, [<<"hello world">>]), | 
|  | 24 | io:format("Non-async call sent~n"), | 
|  | 25 |  | 
| David Reiss | 6d47759 | 2008-06-11 01:12:09 +0000 | [diff] [blame] | 26 | ok = thrift_client:close(Client), | 
|  | 27 | io:format("Client closed~n"), | 
|  | 28 |  | 
|  | 29 | ok. | 
|  | 30 |  | 
| David Reiss | 8445406 | 2008-06-11 01:12:31 +0000 | [diff] [blame] | 31 |  | 
|  | 32 |  | 
|  | 33 | t_base64() -> | 
|  | 34 | {ok, TransportFactory} = | 
|  | 35 | thrift_disk_log_transport:new_transport_factory( | 
|  | 36 | test_disklog, | 
|  | 37 | [{file, "/tmp/test_b64_log"}, | 
|  | 38 | {size, {1024*1024, 10}}]), | 
|  | 39 | {ok, B64Factory} = | 
|  | 40 | thrift_base64_transport:new_transport_factory(TransportFactory), | 
|  | 41 | {ok, BufFactory} = | 
|  | 42 | thrift_buffered_transport:new_transport_factory(B64Factory), | 
|  | 43 | {ok, ProtocolFactory} = thrift_binary_protocol:new_protocol_factory( | 
|  | 44 | BufFactory, []), | 
|  | 45 | {ok, Client} = thrift_client:start_link(ProtocolFactory, thriftTest_thrift), | 
|  | 46 |  | 
|  | 47 | io:format("Client started~n"), | 
|  | 48 |  | 
|  | 49 | % We have to make async calls into this client only since otherwise it will try | 
|  | 50 | % to read from the disklog and go boom. | 
|  | 51 | {ok, ok} = thrift_client:call(Client, testAsync, [16#deadbeef]), | 
|  | 52 | io:format("Call written~n"), | 
|  | 53 |  | 
|  | 54 | % Use the send_call method to write a non-async call into the log | 
|  | 55 | ok = thrift_client:send_call(Client, testString, [<<"hello world">>]), | 
|  | 56 | io:format("Non-async call sent~n"), | 
|  | 57 |  | 
|  | 58 | ok = thrift_client:close(Client), | 
|  | 59 | io:format("Client closed~n"), | 
|  | 60 |  | 
|  | 61 | ok. | 
|  | 62 |  |