summaryrefslogtreecommitdiffstats
path: root/src/jaegertracing/thrift/lib/erl/test/test_thrift_1151.erl
blob: f4a910e7dbbb721a7561ce23b1a9cd35c9156e1b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
-module(test_thrift_1151).

-include("gen-erl/thrift1151_types.hrl").

-ifdef(TEST).
-include_lib("eunit/include/eunit.hrl").

unmatched_struct_test() ->
  S1 = #'StructC'{x=#'StructB'{x=1}},
  {ok, Transport} = thrift_memory_buffer:new(),
  {ok, Protocol} = thrift_binary_protocol:new(Transport),
  ?assertException(
    error,
    struct_unmatched,
    thrift_protocol:write(
      Protocol,
      {{struct, element(2, thrift1151_types:struct_info('StructC'))}, S1}
    )
  ).

badarg_test() ->
  S2 = #'StructC'{x=#'StructA'{x="1"}},
  {ok, Transport} = thrift_memory_buffer:new(),
  {ok, Protocol} = thrift_binary_protocol:new(Transport),
  ?assertException(
    error,
    badarg,
    thrift_protocol:write(
      Protocol,
      {{struct, element(2, thrift1151_types:struct_info('StructC'))}, S2}
    )
  ).

-endif.