diff options
Diffstat (limited to 'debian/perl-framework/t/modules/buffer.t')
-rw-r--r-- | debian/perl-framework/t/modules/buffer.t | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/debian/perl-framework/t/modules/buffer.t b/debian/perl-framework/t/modules/buffer.t new file mode 100644 index 0000000..84cc5bc --- /dev/null +++ b/debian/perl-framework/t/modules/buffer.t @@ -0,0 +1,33 @@ +use strict; +use warnings FATAL => 'all'; + +use Apache::Test; +use Apache::TestUtil; +use Apache::TestRequest; + +my @testcases = ( + ['/apache/buffer_in/', 'foo'], + ['/apache/buffer_out/', 'foo'], + ['/apache/buffer_in_out/', 'foo'], +); + +plan tests => scalar @testcases * 4, need 'mod_reflector', 'mod_buffer'; + +foreach my $t (@testcases) { + ## Small query ## + my $r = POST($t->[0], content => $t->[1]); + + # Checking for return code + ok t_cmp($r->code, 200, "Checking return code is '200'"); + # Checking for content + ok t_is_equal($r->content, $t->[1]); + + ## Big query ## + # 'foo' is 3 bytes, so 'foo' x 1000000 is ~3M, which is way over the default 'BufferSize' + $r = POST($t->[0], content => $t->[1] x 1000000); + + # Checking for return code + ok t_cmp($r->code, 200, "Checking return code is '200'"); + # Checking for content + ok t_cmp($r->content, $t->[1] x 1000000, $r->content . ' equals ' . $t->[1]); +} |