diff options
| author | Matthias Radestock <matthias@rabbitmq.com> | 2010-07-06 07:56:17 +0100 |
|---|---|---|
| committer | Matthias Radestock <matthias@rabbitmq.com> | 2010-07-06 07:56:17 +0100 |
| commit | 747956bfe26e3f79f2134dbb16bf4d7c9b663986 (patch) | |
| tree | 71aa06e92656d64c11823e1a958e8664c82ca323 /src | |
| parent | d3f4271a2916df4028c1d2daa614ea955154e78e (diff) | |
| parent | ea69d64c7ac832ed15b5d553c8865f5f73bbf0e5 (diff) | |
| download | rabbitmq-server-git-747956bfe26e3f79f2134dbb16bf4d7c9b663986.tar.gz | |
merge default into bug22889
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_tests.erl | 41 |
1 files changed, 19 insertions, 22 deletions
diff --git a/src/rabbit_tests.erl b/src/rabbit_tests.erl index 53f73b9d62..eaa195e646 100644 --- a/src/rabbit_tests.erl +++ b/src/rabbit_tests.erl @@ -355,43 +355,40 @@ test_field_values() -> passed. %% Test that content frames don't exceed frame-max -test_content_framing(FrameMax, Fragments) -> +test_content_framing(FrameMax, BodyBin) -> [Header | Frames] = rabbit_binary_generator:build_simple_content_frames( 1, - #content{class_id = 0, properties_bin = <<>>, - payload_fragments_rev = Fragments}, + rabbit_binary_generator:ensure_content_encoded( + rabbit_basic:build_content(#'P_basic'{}, BodyBin), + rabbit_framing_amqp_0_9_1), FrameMax, rabbit_framing_amqp_0_9_1), %% header is formatted correctly and the size is the total of the %% fragments <<_FrameHeader:7/binary, _ClassAndWeight:4/binary, BodySize:64/unsigned, _Rest/binary>> = list_to_binary(Header), - BodySize = size(list_to_binary(Fragments)), - false = lists:any( - fun (ContentFrame) -> - FrameBinary = list_to_binary(ContentFrame), - %% assert - <<_TypeAndChannel:3/binary, - Size:32/unsigned, - _Payload:Size/binary, - 16#CE>> = FrameBinary, - size(FrameBinary) > FrameMax - end, - Frames), + BodySize = size(BodyBin), + true = lists:all( + fun (ContentFrame) -> + FrameBinary = list_to_binary(ContentFrame), + %% assert + <<_TypeAndChannel:3/binary, + Size:32/unsigned, _Payload:Size/binary, 16#CE>> = + FrameBinary, + size(FrameBinary) =< FrameMax + end, Frames), passed. test_content_framing() -> %% no content - passed = test_content_framing(4096, []), - passed = test_content_framing(4096, [<<>>]), + passed = test_content_framing(4096, <<>>), %% easily fit in one frame - passed = test_content_framing(4096, [<<"Easy">>]), + passed = test_content_framing(4096, <<"Easy">>), %% exactly one frame (empty frame = 8 bytes) - passed = test_content_framing(11, [<<"One">>]), + passed = test_content_framing(11, <<"One">>), %% more than one frame - passed = test_content_framing(20, [<<"into more than one frame">>, - <<"This will have to go">>]), + passed = test_content_framing(11, <<"More than one frame">>), passed. test_topic_match(P, R) -> @@ -954,7 +951,7 @@ test_memory_pressure() -> ok = test_memory_pressure_receive_flow(true), %% if we publish at this point, the channel should die - Content = rabbit_basic:build_content([], <<>>), + Content = rabbit_basic:build_content(#'P_basic'{}, <<>>), ok = rabbit_channel:do(Ch0, #'basic.publish'{}, Content), expect_normal_channel_termination(MRef0, Ch0), |
